在训练参数化机器学习模型时,权重衰减(weight decay)是最广泛使用的正则化的技术之一,它通常也被称为L2正则化。
一种简单的方法是通过线性函数 中的权重向量的某个范数来度量其复杂性,例如。要保证权重向量比较小,最常用方法是将其范数作为惩罚项加到最小化损失的问题中。
使用L2范数的一个原因是它对权重向量的大分量施加 了巨大的惩罚。这使得我们的学习算法偏向于在大量特征上均匀分布权重的模型。在实践中,这可能使它们 对单个变量中的观测误差更为稳定。相比之下,L1惩罚会导致模型将权重集中在一小部分特征上,而将其他 权重清除为零。这称为特征选择(feature selection),这可能是其他场景下需要的。
代码实施
训练集20个,测试集100个,输入特征200,每次训练批次为5
惩罚项
训练函数
lambd=0, 惩罚项参数为0,权重范数为13,训练误差减少,测试误差不变,说明模型过拟合。
lambd=3, 添加惩罚项,权重范数为0.3,此时测试误差随着训练误差减少而减少,说明过拟合现象缓解。