除了L2正则化和dropout(随机失活)正则化之外,还有几种方法可以减少神经网络的过拟合,即数据集扩增 和 early stopping。
一、数据扩增
在计算机视觉数据中,通常做法是对图片的水平翻转,以及通过随意翻转和放大裁剪等操作。
虽然这样的做法与重新收集的图片数据相比,少了很多信息,但是这样做基本没有花费,代价几乎为零,除了一些对抗性的代价。以这种方式扩增数据,进而正则化数据集,减少过拟合比较廉价。
二、Early Stopping
在训练过程中,我们希望训练集误差与验证集误差同时下降,当验证集误差下降到某个点后呈上升趋势而训练集误差仍处于下降趋势,那么early stopping的作用就是在该点提早停止训练神经网络的迭代过程,这样我们就得到一个中等大小的W的F范数(弗罗贝尼乌斯范数),与L2正则化相似,选择参数W范数较小的神经网络,使得神经网络不至于过拟合。
Early Stopping的主要缺点在于:提早停止梯度下降即停止优化代价函数J,导致J的值不够小,还有就是我们不希望出现过拟合。我们并没有采取不同的方式来解决这两个问题,而是使用同一种方法解决两个问题,这样做使得问题变得复杂。
Early Stopping的有点在于:只需运行一次梯度下降,就可以找出W的范数较小的值,中间值和较大的值,而无需像L2正则化一样尝试很多正则化参数lumda而导致搜索lumda的计算代价很高的缺点。