python - 这个 Keras LSTM 模型是否欠拟合?
问题描述
我认为这个模型是欠拟合的。这个对吗?
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
lstm_1 (LSTM) (50, 60, 100) 42400
_________________________________________________________________
dropout_1 (Dropout) (50, 60, 100) 0
_________________________________________________________________
lstm_2 (LSTM) (50, 60) 38640
_________________________________________________________________
dropout_2 (Dropout) (50, 60) 0
_________________________________________________________________
dense_1 (Dense) (50, 20) 1220
_________________________________________________________________
dense_2 (Dense) (50, 1) 21
=================================================================
以上是模型的总结。
关于如何改进模型的任何建议?
解决方案
当训练和测试损失都不好时,您的模型不适合,这里不是这种情况。从模型损失图中,训练损失和测试损失值接近且良好。在这种情况下,查看训练损失下降的速度可能有更多的训练数据会有所帮助。我认为用于训练和验证的数据(第一个图)彼此之间的相关性较小且非常相关(方差较小)。因此,该模型从您的第二个图中看到了截然不同类型的数据,这是它在训练期间从未见过的(基于用于生成模型的训练和验证数据集)。正如最初提到的,尝试移除 dropout(这就是我所说的正则化)。
推荐阅读
- angular2-routing - Angular Firebase 在登录屏幕上隐藏导航栏
- css - 类属性未被继承
- android - ConnectivityManager connMgr = (ConnectivityManager) getContext().getSystemService 在加载时返回 null
- r - Set.seed() 结合 for 循环
- tensorflow - 当我连接两种神经网络时,我应该对分布进行归一化吗
- python - 从后端的单词列表中生成一个随机单词并将其显示在前端
- asp.net - 如何使用asp.net + vb.net从数据库列中获取数据并显示在下拉列表中
- angular - @types/applicationinsights-js 的 typescript 编译器问题
- css - 为一行中的元素设置间距
- unity3d - Unity Panel 无法正确适配屏幕