1、前言
之前的BP神经网络,训练时候,算法会调整每层的参数w使得损失尽可能小,由于数据存在很多干扰或者噪声,容易产生过拟合现象,导致网络对训练数据预测的效果较好,而对测试和验证数据的预测效果较差。过拟合的决策面可能如下所示:
2、L2 Regularization
事实表明,在相同网络结构下,决策面越复杂,参数w的值往往更大,而w较小时候,得到的决策面相对平缓。L2正则化是在原有损失函数中增加了L2正则化项,在优化网络输出与真值的误差时还要让w尽量小。具体公式如下:
其中lambda是新引入的超参数,lambda越大,正则化项作用越大,实际需要Tune。
公式很简单,只是增加了所有层所有参数的平方和。所以求导的时候,由于是各层的和,对l层求导的时候,只需要考虑l层的参数,其他层的导数都是0.正则化项的导数为:
前面已经推导过,每一层参数的导数为:
3、小结
L2正则化实际上是通过加入一个与原损失函数互相牵制的一个部分,来抑制w过大导致的过拟合,或者说决策面过度复杂,是的决策面圆滑一些。公式中没有使用到偏置b,其实也可以用,但由于b是众多参数的一个,影响很小,所以不加入也并不会有明显的影响。
还有很多其他的正则化方法,比如L1正则化等。