CNN:验证损失的减少比训练损失的减少慢得多是正常的吗?

CNN: Normal that the validation loss decreases much slower than training loss?

我正在训练用于图像语义分割的 CNN U-net 模型,但是训练损失的减少速度似乎比验证损失快得多,这正常吗?

我使用的损失为 0.002

下图中可以看到训练和验证损失:

是的,这很正常。

随着神经网络的学习,它从训练样本中推断出它在每次迭代中都知道得更好。训练期间从不使用验证集,这就是它如此重要的原因。

基本上:

  • 只要验证损失减少(即使是轻微的),这意味着神经网络仍然能够learn/generalise更好,
  • 一旦验证损失停滞不前,你就应该停止训练,
  • 如果继续训练,验证损失可能会再次增加,这称为过度拟合。简而言之,这意味着神经网络“记住”训练数据,而不是真正地泛化到未知样本(例如在验证集中)

我们通常使用 early stopping 来避免最后一个:基本上,如果你的验证损失在 X 次迭代中没有改善,停止训练(X 是一个值,例如 5 或10).