具有不同时间范围的 LSTM

数据挖掘 深度学习 时间序列 lstm
2022-03-04 00:59:44

我有一个基于两个不同时间范围内定义的时间序列的电力消耗建模任务,比如一个具有 5 秒的分辨率,另一个是 1 小时。

我想在这里使用 LSTM。由于 LSTM 网络的训练输入具有类似 的形状[samples, time steps, features],因此无法拟合来自不同时间范围的数据(这是可能的,但将它们放在特征轴上可能效率不高)

此类问题的标准方法是什么?我想到的一个想法是分别训练两个 LSTM 网络,然后连接它们的输出,将其输入密集层并进行训练(同时冻结 LSTM 层)。

高度赞赏任何提示和见解。

1个回答

为了解决您的问题,了解 LSTM 的确切工作原理很重要:当您有两个具有非常不同速度的链接变量时,用于遗忘或记忆的 LSTM 参数可能必须做一个很大的差距,这可能会改变预测。与任何其他物理 ML 问题一样,您的变量需要处于“常识”规模,并适应您的预测规模目标。例如,如果您的预测是按天计算的,您可以对这两个变量采用每小时费率(取 5 秒的平均值)。如果您的预测是以小时为单位,您可以对这两个变量采用 15 分钟的速率(取 5 秒的平均值并复制值或趋势值~另一个变量的回归)。顺便说一句,如果您知道每小时变量在几小时之间的大致表现,模拟内部值可能会很有趣。请记住,LSTM 对噪声非常敏感:噪声越少越好。LSTM 也有内存限制:学习时间步长应该是合理的(大约 100-500,最大 1000)。