在我们学习深度学习时,我们很有可能遇到过拟合问题,所谓过拟合,顾名思义就是我们所训练的网络过于“强大”。
举个例子,我们生活中都想要变成一个骄傲的人,但是由于后来成长过猛,我们变成了一位自负的人。毋庸置疑这是一个坏的结果。
在程序中的过拟合可以理解成如下的表现:
黑色代表我们期望的训练结果。绿色则是过拟合的训练结果。
那么问题来了过拟合到底有什么不好?其实过拟合会丢失很多数据特征。
四种方法
1. Dropout裁剪网络(用的较多)
2.增加数据
数加数据是解决过拟合中思想比较朴素的方法。训练集越多,过拟合的概率越小,数据增广是一个比较方便有效屡试不爽的方法,但各类领域的增广方法都不同。比如计算机视觉那里可以通过旋转图片解决。
3.使训练提前停止
提前停止的策略是在验证集误差出现增大之后,提前结束训练;而不是一直等待验证集 误差达到最小。提前停止策略十分简单,执行效率高,但需要额外的空间备份参数。
4.集成学习
集成学习算法也可以有效的减轻过拟合。Bagging通过平均多个模型的结果,来降低模型的方差。Boosting不仅能够减小偏差,还能减小方差。
还有其他方法,问题都可以解决。