首页 > 解决方案 > 这是过拟合的例子吗?

问题描述

在大约 100 个 epoch 后训练深度学习模型:

Train accuracy : 93 %
Test accuracy : 54 %

然后训练准确度增加而测试准确度降低:

Train accuracy : 94 %
Test accuracy : 53 %
Train accuracy : 95 %
Test accuracy : 52 %
Train accuracy : 96 %
Test accuracy : 51 % 

对于模型的初始版本,我们对 54% 的准确率感到满意,但我不知道训练准确率增加的含义是什么,测试准确率下降除了模型之外是过度拟合。当达到最大测试准确度(在这种情况下为 54%)时,我是否应该停止训练模型并使用训练过的参数?

我可以从观察训练准确度增加和测试准确度降低中获得什么知识?这是一个更强的过度拟合的例子吗?

标签: machine-learningscikit-learndeep-learningdata-science

解决方案


是的,这绝对是过拟合。您应该在测试准确度停止增加时终止训练过程。根据您显示的数字,您的模型实际上过度拟合了很多。您应该考虑添加正则化以可能提高测试准确性。

(我补充):正则化就像@Djib2011 所说的那样有助于防止过度拟合。您可以查看最常见的 L2 或 Dropout。


这个问题在评论中得到了回答,由于没有人写答案,我把这个答案作为社区 wiki的答案。这是为了从未回答的列表中删除此问题。最初的答案是 @Djib2011 。鼓励 OP 选择此作为答案,以将问题状态删除为未回答。(如果在评论中回答的人决定回答,则 OP 可以而且应该选择该答案)。


推荐阅读