在 LSTM 预测的初始部分摆动

数据挖掘 喀拉斯 时间序列 lstm 堆叠的lstm 格鲁
2022-02-22 20:01:37

我致力于使用 LSTM 和 GRU 进行时间序列预测。在大多数情况下,预测非常好。

然而,在预测稳定之前似乎有一个摆动(或最初的上下),类似于来自另一个问题的该图的左侧

就我而言,它也造成了轻微的偏移。有谁知道为什么会这样?下面是训练集和测试集的形状,以及当前的网络结构。我尝试将序列长度从 60 个时间步减少,在 LSTM 和 GRU 之间切换,并且输入和输出稍微重叠,但都无济于事。添加辍学似乎也没有帮助。摆动不会消失!

目前,我的序列长度为 60 个输入和 60 个输出。

Xtrain: (920, 60, 2)
Ytrain: (920, 60, 2)
Xtest: (920, 60, 2)
Ytest: (920, 60, 2)

def define_model():
    model = Sequential()
    model.add(LSTM(64, return_sequences=True, input_shape=(None, 2)))
    model.add(LSTM(64, return_sequences=True))
    model.add(LSTM(64, return_sequences=True))
    model.add(TimeDistributed(Dense(2)))
    model.add(Activation('linear')) 
    model.summary()
    return model
0个回答
没有发现任何回复~