0

我正在训练变形金刚。在我的许多设置中,我获得了如下所示的验证和训练损失:

我的数据集的训练和验证损失

然后,我知道我应该在 epoch 1 左右停止训练。但是训练损失非常高。这是一个问题吗?训练损失的价值真的意味着什么吗?

谢谢

4

2 回答 2

1

关于你的第一个问题 - 你的训练损失很高并不一定是一个问题,因为没有阈值可以被认为是高训练损失。这取决于您的数据集、您的实际测试指标和您的业务目标。

更具体地说,训练损失值的问题:

  1. 这个数字并不直观,因为损失目标是针对梯度下降优化的指标(即一个可微函数,通常是它的对数版本)。您可能有面向最终目标的直观业务指标(例如,精确度、召回率),您应该使用这些指标来确定您的模型是否良好。

  2. 您的训练损失是在训练数据集上计算的,这并不总是代表一个好的模型,正如您发布的过度拟合模型中所见。您不应该使用这个数字来为模型的优劣做出决定。

  3. 这取决于您要达到的目标。80%的准确率是高还是低?

关于你的第二个问题 - 从技术上讲,数字越大,模型在收敛中的表现越差,所以你应该总是尝试降低它(同时考虑过拟合)。相比之下,您可以说一个模型比另一个模型具有更高的损失,然后尝试多个超参数(例如,dropout、不同的优化器)以最小化验证集的分歧点。

于 2021-12-29T18:08:05.877 回答
0

您正在描述过度拟合:您的模型的表达能力太强,它正在记忆训练数据,而不是学习可以推广到验证数据的有用表示。

为了缓解这个问题,您应该对您的模型应用更强的正则化,以防止它记忆并将其引导至有用的表示。
正则化方法包括(但不限于):

  1. 输入增强
  2. 退出
  3. 提前停止
  4. 重量衰减
于 2021-12-26T09:49:16.950 回答