lstm预测结果延迟现象

时间:2018-04-17 08:17:29

标签: python tensorflow keras time-series lstm

最近我使用lstm来预测时间序列。我使用keras 2.0来构建我的lstm模型。它有这样的结构: model = Sequential() model.add(LSTM(128, input_shape=(timesteps, 1), return_sequences=False, stateful=False) model.add(Dropout(rate=0.1)) model.add(Dense(1)) 我曾试图使用这个网络预测几个时间序列,包括sin(t)和一个真实的交通流量数据集。我发现对sin的预测很好,而对真实数据集的预测就像将最后一个输入值移动一步一样。我不知道它是预测错误还是网络根本没有学习数据集的模式。有没有人得到类似的结果?这个烦人的转变有什么解决方案吗?非常感谢。 以下是我的一些预测:

3 frequencies sin prediction result

real traffic dataset prediction result

1 个答案:

答案 0 :(得分:1)

这只是您网络的起点,您必须通过尝试各种方法来解决这个问题。

仅举几例:

  • 尝试不同的窗口长度(输入网络的时间步长)
  • 尝试添加密集图层,或多个LSTM图层,或更少的LTSM节点
  • 尝试使用各种学习率的不同优化器
  • 查找要提供给网络的其他数据点
  • 你有多少数据?您可能需要更多才能获得良好的预测
  • 为Y变量尝试不同的偏移量,您需要多少次步骤才能预测出您的特定问题?

列表继续......