在为时间序列预测创建 LSTM 时,我是否需要设计滞后特征?

数据挖掘 神经网络 时间序列 lstm rnn 特征工程
2021-09-16 20:25:26

长短期记忆网络相当复杂,我还没有完全理解它们。
在我看来,LSTM 用于时间序列预测的最大收获是缺乏滞后特征的必要性:它自己确定哪些滞后信息实际上是重要的,并在下一个 tiestep(s) 中记住它。
在训练 LSTM 时,是否仍应创建滞后特征作为时间步长的输入?像上一个时间步的输出,或者上述时间步的均值和中位数,特定类别的均值和中位数,距离,差异等?

2个回答

TL;博士

不,您不必在使用 LSTM 时包含滞后变量。

长答案

在 LSTM 架构中,您的神经元不仅有一个输入门和一个输出门,而且它们还有一个遗忘门,这使它们能够记住多个时间间隔内的值。因此,您不必在特征集中包含任何滞后变量,因为您可以期望 LSTM 自行发现相关的时间相关关系。这不仅适用于 LSTM,也适用于其他 RNN 架构。

遗憾的是,LSTM 并不完美,包含滞后变量确实可以显着提高模型性能,如本文所示。在各种 Kaggle 比赛中也观察到了这一点。

我会把它留给比我更有知识的其他人来解释为什么会这样。