使用 Keras 的 LSTM
创建 LSTM 模型只需添加 LSTM 层而不是 SimpleRNN 层,如下所示:
model.add(LSTM(units=4, input_shape=(X_train.shape[1], X_train.shape[2])))
模型结构如下所示:
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
lstm_1 (LSTM) (None, 4) 96
_________________________________________________________________
dense_1 (Dense) (None, 1) 5
=================================================================
Total params: 101
Trainable params: 101
Non-trainable params: 0
_________________________________________________________________
笔记本 ch-07b_RNN_TimeSeries_Keras
中提供了 LSTM 模型的完整代码。
由于 LSTM 模型具有更多需要训练的参数,对于相同数量的迭代(20 个周期),我们得到更高的误差分数。我们留给您探索周期和其他超参数的各种值,以获得更好的结果:
Train Score: 32.21 RMSE
Test Score: 84.68 RMSE