深度学习中的正则化
什么是正则化
“正则化"这个词听起来十分的高大上,但是我们可以简单的理解成为"约束”。
正则化是对参数的一种约束,在训练的过程中,特别是深度神经网络,本身网络层中的参数很多了、,如果每个参数的取值域也很大,那么会对训练造成一些麻烦(训练久之后,可能进入过拟合的状态),所以我们通过对参数的约束来显式的控制模型的复杂度,从而在一定程度上避免过拟合现象的产生。
所以正则化就是通过对网络层的参数加以限制,从而减少过拟合现象的产生。
一些常用的正则化方法
权重衰减
在每次更新参数的时候,设定一个
L1正则化
加入我们训练的网络的参数为w.则
如果我们有一个分类问题,则根据分类产生的误差有一个classfication_loss.我们正则化有一个l1_loss.最后有一个loss_total.其中loss_total=classfication_loss+l1_loss.
当我们进行参数更新的时候,是使用w=w-lr*偏导数
,是朝着loss减小的方向进行的。如果我们的w太大,会导致loss很大,所以相当于限定了w的范围,从而避免过拟合。
L2正则化
L2正则化,在深度学习中又称为<