对学习算法的修改——旨在减少泛化误差而不是训练误差
显著减少方差而不过度增加偏差。
【参数范数惩罚】
通常只对权重做惩罚而不对偏置做惩罚,原因是拟合偏置比拟合权重容易很多。
不同层使用不同惩罚的代价很大,会在所有层使用相同的权重衰减。
L2正则化的效果: 在Hessian阵特征值较大的方向,正则化的影响比较小,在特征值比较小的方向,会比较快速的趋近到0
让算法感知到较高方差的x,从而与
L1正则化的效果:
参数向一个方向移动一个特定的距离,如果移动之后变号,那么置为0。
会产生稀疏解
【欠约束问题】
对矩阵XTX求逆,只要奇异就会出问题,现实数据中只要在某些方向没有差异,或者在一些方向没有观察到方差,矩阵就是奇异的。
(通常在我们的数据中不会发生)
【噪声稳定性】
bishop 1995: 对x添加方差极小的噪声等价于对权重进行范数惩罚
在一般情况下,注入噪声远比简单的收缩参数强大,尤其是添加到隐藏单元!
另外一种方式是对循环神经网络的权重加噪声,实际上是基于贝叶斯思想。
【early stop】
代价:
1、需要多次评估validation集
2、需要保存最佳参数副本
正则化效果:
将参数空间控制在初始值的小邻域内,如果初始值足够小,那么是有效的。
比weight decay更有效
【稀疏表示】
【Bagging】
【Dropout】
可以认为是廉价的Bagging,
小批量、小步长的学习算法,
还需要继续学习。。。