使用LSTM神经网络进行错误的预测

时间:2017-08-21 05:54:29

标签: machine-learning deep-learning keras lstm tensor

我是LSTM的新手,我正在尝试训练模型,以预测一年内数据的IP流量。数据集由Kaggle https://www.kaggle.com/crawford/computer-network-traffic提供。

这是建模网络的方式

model = Sequential()
model.add(LSTM(128,input_shape=(trainX.shape[1], trainX.shape[2]),
               activation='relu',return_sequences=True))
model.add(LSTM(32, return_sequences=True))
model.add(LSTM(10))
model.add(Dense(1))
model.compile(loss='mean_squared_error', optimizer='adam')
model.fit(trainX, trainY, epochs=10, batch_size=64, verbose=2)

您可以在我的内核https://www.kaggle.com/asindico/computer-network-traffic-eda/

中找到所有详细信息

这是我在10个时代之后得到的

enter image description here

蓝色实际值,红色预测。

1 个答案:

答案 0 :(得分:3)

不幸的是,这个问题没有通用的解决方案,但很明显你的模型不适合数据。

我能建议什么?

  • 减少模型中隐藏图层的数量,

  • 增加纪元数,

  • 将优化程序功能更改/尝试为“sgd”或“RMSprop”,

  • 增加批量大小,

  • 并添加正则化和退出。

正如我所说,没有通用的解决方案,所以,从上面尝试一下,它可能对你有所帮助。

另外,检查输出图层的激活功能。 +正如建议的那样标准化输入数据。