我正在训练变形金刚。在我的许多设置中,我获得了如下所示的验证和训练损失:
然后,我知道我应该在 epoch 1 左右停止训练。但是训练损失非常高。这是一个问题吗?训练损失的价值真的意味着什么吗?
谢谢
我正在训练变形金刚。在我的许多设置中,我获得了如下所示的验证和训练损失:
然后,我知道我应该在 epoch 1 左右停止训练。但是训练损失非常高。这是一个问题吗?训练损失的价值真的意味着什么吗?
谢谢
关于你的第一个问题 - 你的训练损失很高并不一定是一个问题,因为没有阈值可以被认为是高训练损失。这取决于您的数据集、您的实际测试指标和您的业务目标。
更具体地说,训练损失值的问题:
这个数字并不直观,因为损失目标是针对梯度下降优化的指标(即一个可微函数,通常是它的对数版本)。您可能有面向最终目标的直观业务指标(例如,精确度、召回率),您应该使用这些指标来确定您的模型是否良好。
您的训练损失是在训练数据集上计算的,这并不总是代表一个好的模型,正如您发布的过度拟合模型中所见。您不应该使用这个数字来为模型的优劣做出决定。
这取决于您要达到的目标。80%的准确率是高还是低?
关于你的第二个问题 - 从技术上讲,数字越大,模型在收敛中的表现越差,所以你应该总是尝试降低它(同时考虑过拟合)。相比之下,您可以说一个模型比另一个模型具有更高的损失,然后尝试多个超参数(例如,dropout、不同的优化器)以最小化验证集的分歧点。
您正在描述过度拟合:您的模型的表达能力太强,它正在记忆训练数据,而不是学习可以推广到验证数据的有用表示。
为了缓解这个问题,您应该对您的模型应用更强的正则化,以防止它记忆并将其引导至有用的表示。
正则化方法包括(但不限于):