深度学习训练集的损失曲线收敛很快而且验证集不下降是啥原因导致的?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了深度学习训练集的损失曲线收敛很快而且验证集不下降是啥原因导致的?相关的知识,希望对你有一定的参考价值。

之前查资料说是有可能过拟合,我把dropout调成0.8了,并且把模型简化了一些,训练集和测试集的结果还是差的很多,而且最主要的时训练集在epoch等于1的时候就不下降了,之后一直保持平稳,会不会是因为我的数据相对于深度学习的模型来说过于简单,稍微训练一下就会过拟合?这种情况该如何解决,继续简化模型层数可以吗,还是通过调参的方式解决,求助!

参考技术A

请检查test set和train set是否相差巨大,一般情况下,要求training set跟testing set的数据的distribution都是差不多的,不能相差太大。 请通过可视化数据来检查,如果是图片,就检查图片是否出现异常。

然后调整模块。我建议先把dropout完全去掉试一下

然后一些常见的错误,比如evaluation的时候忘记把batchnorm和dropout层设置为eval mode,可能也会产生意想不到的错误效果。

当然也有可能是训练的时间不够长。请尝试训练更多的epochs,有可能测试集精度会进一步上升。因为不清楚你的loss用的是什么,我看到你的loss似乎才1.8左右,如果是交叉熵这种loss,那么很可能是你训练得还不够长,loss还能够更低一点,建议训多50个epoch再看看?

祝好运~

以上是关于深度学习训练集的损失曲线收敛很快而且验证集不下降是啥原因导致的?的主要内容,如果未能解决你的问题,请参考以下文章

深度学习中收敛是什么意思?

深度学习中收敛是什么意思?

深度学习训练集和测试集loss损失值关系

请问深度学习是怎么进行训练的呢?

关于模型优化的思考

CNN分类中验证损失减少,验证准确率下降