过拟合:L2 正则化

**L2 正则化** 是一种常用的正则化指标,其公式如下

$$L_2\text{ regularization } = {w_1^2 + w_2^2 + ... + w_n^2}$$

例如,下表显示了针对具有六个权重的模型计算 L2 正则化的过程:

平方值
w1 0.2 0.04
w2 -0.5 0.25
w3 5.0 25.0
w4 -1.2 1.44
w5 0.3 0.09
w6 -0.1 0.01
    26.83 = 总和

请注意,接近于零的权重对 L2 正则化 的影响不大,但较大的权重可能会产生巨大影响。例如,在上述计算中:

  • 单个权重 (w3) 约占 总复杂度的 93%。
  • 其他五个权重共同仅占总复杂度的 7% 左右。

L2 正则化会使权重 接近 于 0,但绝不会使权重完全为零。

练习:检验您的掌握情况

如果您在训练模型时使用 L2 正则化,模型 的总体复杂度通常会发生什么变化?
系统的总体复杂度可能会下降。
由于 L2 正则化会使权重接近于 0, 总体复杂度可能会下降。
模型的总体复杂度可能会保持 不变。
这种情况不太可能发生。
模型的总体复杂度可能会增加。
这种情况不太可能发生。请注意,L2 正则化 会使权重接近于 0。
如果您在训练模型时使用 L2 正则化, 系统会从模型中移除一些特征。
正确
虽然 L2 正则化可能会使某些权重非常 小,但绝不会使任何权重完全为零。因此,所有特征仍会对模型做出贡献。
错误
L2 正则化绝不会使权重完全为 零。

正则化率 (lambda)

如前所述,训练会尝试最大限度地减少损失和复杂度的某种组合:

$$\text{minimize(loss} + \text{ complexity)}$$

模型开发者可以通过将复杂度的值乘以一个称为正则化率的标量,来调整复杂度对模型训练的总体影响。希腊字母 lambda 通常表示正则化率。

也就是说,模型开发者旨在执行以下操作:

$$\text{minimize(loss} + \lambda \text{ complexity)}$$

较高的正则化率:

  • 增强正则化的影响,从而降低过拟合的可能性。
  • 往往会生成具有以下特征的模型权重直方图:
    • 正态分布
    • 平均权重为 0。

较低的正则化率:

  • 降低正则化的影响,从而增加过拟合的可能性。
  • 往往会生成具有平坦分布的模型权重直方图。

例如,对于较高的正则化率,模型权重的直方图可能如图 18 所示。

图 18. 模型权重的平均值为 0 且权重呈正态分布的直方图。
图 18.正则化率较高时的权重直方图。 平均值为零。正态分布。

 

相比之下,较低的正则化率往往会生成更平坦的直方图,如图 19 所示。

图 19. 模型权重的平均值为 0 且权重分布介于平坦分布和正态分布之间的直方图。
图 19.正则化率较低时的权重直方图。 平均值可能为零,也可能不为零。

 

选择正则化率

理想的正则化率会生成一个能够很好地泛化到以前未见过的新数据的模型。 遗憾的是,该理想值取决于数据, 因此您必须进行一些 调整。

早停法:基于复杂度的正则化的替代方法

早停法 是一种 正则化方法,不涉及复杂度的计算。 相反,早停法只是意味着在模型完全收敛之前结束训练。例如,当验证集的损失曲线开始增加(斜率变为正值)时,您结束训练。

虽然早停法通常会增加训练损失,但它可以减少测试损失。

早停法是一种快速但很少是最佳的正则化形式。生成的模型不太可能像在理想正则化率下经过彻底训练的模型那样好。

在学习速率和正则化率之间找到平衡点

学习速率 和 正则化率往往会使权重朝着相反的 方向移动。较高的学习速率通常会使权重 远离 零;较高的正则化率会使权重 接近 于零。

如果正则化率相对于学习速率较高,则较弱的权重往往会生成预测效果较差的模型。 相反,如果学习速率相对于正则化率较高,则较强的权重往往会生成过拟合模型。

您的目标是在学习速率和正则化率之间找到平衡点。这可能具有挑战性。最糟糕的是,一旦找到这种难以捉摸的平衡,您可能最终不得不更改学习速率。并且,当您更改学习速率时,您将不得不再次找到理想的正则化率。