使用多元LSTM模型预测未来价值

时间:2020-09-24 08:53:23

标签: python tensorflow keras time-series lstm

我来问一个有关LSTM模型的未来预测的问题

我向您解释:

我正在使用LSTM模型预测未来36小时的股价。

我有一个包含10个特征的数据集。

我将这10个功能用作模型中的输入,并具有单个输出(预期价格)。

这是我的整体模型:

model = Sequential()
 
# input shape == (336, 10), I use 336 hours for my lookback and 10 features

model.add(LSTM(units=50,return_sequences=True,input_shape=(X_train.shape[1], X_train.shape[2])))
  model.add(Dropout(0.2))
  model.add(LSTM(units=50,return_sequences=True))
  model.add(Dropout(0.2))
  model.add(LSTM(units=50,return_sequences=True))
  model.add(Dropout(0.2))
  model.add(LSTM(units=50))
  model.add(Dropout(0.2))
  model.add(Dense(units=1, activation='linear'))
  model.compile(optimizer='adam',loss='mean_squared_error')

我可以用测试数据评估模型的性能,但是现在我想用它来预测接下来的36小时,这仍然是目标,不是吗?

我的印象是,互联网上存在一个大黑洞,每个人都介绍了如何构建模型并使用测试数据对其进行测试,但是没有人使用它们...

我发现了两个有趣的示例,其中包括将预测迭代地重新集成到最后一个窗口中。

以下是主题底部的示例:

https://towardsdatascience.com/time-series-forecasting-with-recurrent-neural-networks-74674e289816 https://towardsdatascience.com/using-lstms-to-forecast-time-series-4ab688386b1f

它本身可以工作,但只有一个功能作为输入。

我有10个特征,我的模型只向我返回一个输出值,所以我无法将其重新集成到最后一个需要10个特征形状的窗口中。

您看到问题了吗?

我真的希望你能使我适应这个问题。

Adrien

0 个答案:

没有答案