我正在尝试使用带有LSTM层的编码器/解码器来预测时间序列数据。到目前为止,我使用20点过去的数据来预测20个未来点。对于20个过去数据点的每个样本,预测序列中的第1个值非常接近每个序列中的真实第1个值:predicting 1 step into the future
但是,对于每个序列中的第二个值(未来2个步骤),预测值看起来像是"移位":predicting 2 steps into the future
这"转移"自然对于预测序列的所有值都是正确的,随着我进一步进入预测序列,移位增加。这是我的模型的代码:
model = Sequential()
model.add(LSTM(input_dim = 1, output_dim=128,
return_sequences=False))
model.add(RepeatVector(20))
model.add(LSTM(output_dim=128, return_sequences=True))
model.add(TimeDistributed(Dense(1)))
与RepeatVector有关吗?任何帮助将不胜感激。