过拟合
学习器在训练集上面的误差称为“训练误差”或“经验误差”,新样本上面的误差称为“泛化误差”。当学习器把训练集训练的“太好”,把训练样本自身的一些特点当做所有潜在样本的性质,导致泛化能力下降,称为过拟合,表现为模型在训练集上面效果好,在测试集上效果差,即训练误差减小,而泛化误差增加。与之相对的是“欠拟合”。
防止过拟合的方法:
1、增大数据集
2、Early Stopping
3、正则化,常用L1、L2正则化
4、Dropout
增大数据集:
a、从数据源头获取更多数据
b、数据增强:通过一定规则扩充数据。如在物体分类问题里,物体在图像中的位置、姿态、尺度,整体图片明暗度等都不会影响分类结果,通过图像平移、翻转、缩放、裁剪等将数据扩充;
Early Stopping 通过迭代次数截断的方法来防止过拟合的方法,当在训练集上误差较小,在验证集误差开始增大时停止训练。
3、L1正则化
L2正则化
L1会带来稀疏矩阵,L2会使参数更小
4、Dropout
在训练开始时,随机得删除一些隐藏层神经元(1/2,1/3,1/4),,相当于训练了很多个只有半数隐层单元的神经网络,每一个这样的半数网络,都可以给出一个分类结果,这些结果有的是正确的,有的是错误的。随着训练的进行,大部分半数网络都可以给出正确的分类结果,那么少数的错误分类结果就不会对最终结果造成大的影响。