【问题标题】:How to confirm convergence of LSTM network?如何确认 LSTM 网络的收敛性?
【发布时间】:2020-02-21 22:53:25
【问题描述】:

我正在使用 LSTM 使用 Keras 进行时间序列预测。我使用了 3 个 LSTM 层,dropout=0.3,因此我的训练损失高于验证损失。为了监控收敛,我将训练损失和验证损失一起绘制。结果如下所示。

在研究了该主题之后,我看到了多个答案,例如([1][2],但我在互联网上的各个不同地方发现了几个相互矛盾的论点,这让我有点困惑。我列出了一些他们在下面:

1) Jason Brownlee 发表的文章建议验证和训练数据应该满足收敛,如果不满足,我可能欠拟合数据.

https://machinelearningmastery.com/diagnose-overfitting-underfitting-lstm-models/

https://machinelearningmastery.com/learning-curves-for-diagnosing-machine-learning-model-performance/

2) 但是,此处的以下回答表明 我的模型刚刚收敛

How do we analyse a loss vs epochs graph?

因此,总的来说,我对整个概念有点困惑。任何帮助将不胜感激。

【问题讨论】:

    标签: python tensorflow keras lstm recurrent-neural-network


    【解决方案1】:

    收敛意味着你有一些东西可以收敛。要使学习系统收敛,您需要事先了解正确的模型。然后你会训练你的模型,直到它与正确的模型相同。那时你可以说模型收敛了! ...但机器学习的全部意义在于我们不知道从哪个模型开始。

    那么你什么时候停止训练?在实践中,当模型运行得足够好,可以做你想让它做的事情时,你就会停下来。这可能是当验证错误低于某个阈值时。可能只是当您负担不起更多的计算能力时。这完全取决于你。

    【讨论】:

      猜你喜欢
      • 2016-10-05
      • 2016-07-10
      • 2013-11-29
      • 2012-03-03
      • 2019-12-09
      • 1970-01-01
      • 2016-05-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多