【问题标题】:Is my model underfitting, tensorflow?我的模型是否欠拟合,张量流?
【发布时间】:2016-08-31 02:06:19
【问题描述】:

我的损失首先减少了几个时期,然后开始增加,然后增加到某个点,然后停止移动。我想现在它已经收敛了。现在,我们可以说我的模型欠拟合吗?因为我的解释是(幻灯片 93 link),如果我的损失下降然后增加,这意味着我的学习率很高,并且每 2 个 epoch 之后我就会衰减,所以在几个 epochs 之后损失停止增加,因为学习率现在很低,因为我的学习率仍在衰减,现在损失应该再次开始下降,根据幻灯片 93,因为学习率很低,但事实并非如此。我们可以说损失没有进一步减少是因为我的模型拟合不足吗?

【问题讨论】:

  • 当你说你的损失在上升或下降时,你是在谈论训练或验证/测试数据的损失吗?
  • @DennisSoemers 在训练数据上的损失。

标签: python machine-learning neural-network tensorflow deep-learning


【解决方案1】:

所以,总结一下,训练数据的损失:

  • 先下来
  • 然后又涨了
  • 然后它保持在同一级别
  • 然后学习率衰减
  • 并且损失不会再次下降(在衰减的学习率下仍然保持不变)

对我来说,一开始的学习率听起来太高了,然后就陷入了局部最小值。在那一点上衰减学习率,一旦它已经停留在局部最小值,并不能帮助它摆脱那个最小值。将初始学习率设置为较低的值更有可能是有益的,这样您就不会一开始就陷入“糟糕”的局部最小值。

您的模型现在可能欠拟合,使模型更复杂(例如,隐藏层中的更多节点)会有所帮助。但情况不一定如此。

您是否使用任何技术来避免过度拟合?例如,正则化和/或辍学?如果是这样,也可能是您的模型最初过度拟合(当损失下降时,在它再次回升之前)。为了更好地了解正在发生的事情,不仅要绘制训练数据上的损失,还要绘制验证集上的损失。如果您的训练数据的损失显着低于验证数据的损失,您就知道它是过拟合的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-05-31
    • 2019-02-10
    • 2021-12-29
    • 2020-01-11
    • 1970-01-01
    • 2021-04-13
    • 1970-01-01
    • 2021-11-03
    相关资源
    最近更新 更多