1. 概念区分:
权重衰减等价于L2正则化,是一种常用的解决过拟合方法,正则化通过为模型损失函数添加惩罚项使得学出的模型参数比较小,通常接近于0。
2. L2正则化定义:
表示代价函数,后面表示L2正则化项,n为样本量,正则项系数,1/2是为了方便求导。
3. 权重衰减原因:
有无正则化权重更新对比, 对L2正则化后代价函数求导:
(公式1)
无正则化时,权重更新:
(公式2)
其中,分别表示正则化系数,学习率,样本量,均为正数。
则L2正则化后的权重w(公式1)相比无正则化更新权重w(公式2)更小。
4. 权重衰减与过拟合关系
由以上可知L2正则化可以使权重w变小,但是如何防止过拟合。
(1)减小权重可选择范围,降低模型复杂度;
(2)一般过拟合时,拟合函数系数会比较大,因为为了拟合每个点在小范围内拟合函数会出现较大波动,即拟合函数系数会比较大,若较小拟合函数系数则会降低函数复杂性。
5. 权重衰减在深度学习模型中的使用
可以在loss上添加L2范数;
也可以在设置优化器参数中添加weight_decay:wd 参数。
在各框架中常用wd参数设置权重衰减系数;wd越大对模型拟合能力抑制越严重。
权重衰减无法提高训练精度和收敛速度,只能解决过拟合问题,如果模型本身出现欠拟合或是没有明显过拟合,使用较大wd参数可能会导致训练结果变差,因为降低了模型拟合能力。
wd通常设置为1e-3,
或是base_lr与weight_decay相差大概是两到三个数量级。例如:base_lr=0.01;weight_decay=0.0002
wd设置是一个值得思考的问题
学习资料:
李沐《动手学习深度学习》