当验证损失和验证准确度都在增加时,它会过度拟合吗?
机器算法验证
分类
神经网络
过拟合
疏
2022-03-16 18:46:43
2个回答
是的,一点没错。首先,最好通过查看损失而不是准确度来判断过度拟合,原因有很多,其中包括准确度不是估计分类模型性能的好方法。看这里:
https://stats.stackexchange.com/a/312787/58675
其次,即使您使用准确性而不是损失来判断过度拟合(并且您不应该),您也不能只查看测试曲线上准确性的(平滑)导数,即,如果它平均增加或不是。您应该首先查看 训练准确度和测试准确度之间的差距。在您的情况下,这个差距非常大:您最好使用从 0 开始的比例,或者以随机分类器(即,将每个实例分配给多数类的分类器)的准确度,但即使使用您的规模,我们说的是训练准确度接近 100%,而测试准确度甚至没有达到 65%。
TL;DR:你不想听到它,但你的模型已经过拟合了。
PS:你关注的是错误的问题。这里的问题不在于是否在第 1 个 epoch 进行提前停止以获得 55% 的测试准确度,或者是否在第 7 个 epoch 进行提前停止以获得 65% 的准确度。这里真正的问题是你的训练准确度(但同样,我会关注测试损失)相对于你的测试准确度来说太高了。55%、65%甚至75%相对于99%都是垃圾。这是一个教科书式的过拟合案例。您需要对此做点什么,而不是专注于“不太糟糕”的早期停止时期。
在这种情况下,这种曲线变化至少有两个可能的原因会发生。通过查看此图形数据集,我们可以假设的合理可能区别如下:
1- 该训练网络表明验证损失,因为模型过度拟合。
这里的答案可能是我自己在研究这个主题时的个人评论,并且很难得出结论。这里有很多答案,但理想的选择是我提到的第 1 个答案。
2- 其他可能的原因是该训练网络在训练数据集中有未知的变体或错误,例如自发反应。
随意发表评论。
其它你可能感兴趣的问题