过拟合:L2 正则化

L2 正则化是一种常用的正则化指标,其使用以下公式:

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

例如,下表显示了针对具有 6 个权重的模型计算 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%。
  • 其他 5 个权重加起来只占总复杂度的 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. 正则化率较低的权重直方图。 平均值不一定为零。

 

选择正则化率

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

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

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

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

提前停止是一种快速的正则化方法,但很少能达到理想效果。 生成的模型不太可能与使用理想正则化率彻底训练的模型一样出色。

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

学习率和正则化率往往会朝相反的方向拉动权重。学习率较高时,权重通常会远离零;正则化率较高时,权重会趋近零。

如果正则化率相对于学习率较高,较小的权重往往会导致模型做出不准确的预测。相反,如果学习率相对于正则化率较高,则较大的权重往往会导致模型过拟合。

您的目标是在学习速率和正则化速率之间找到平衡点。这可能并非易事。最糟糕的是,找到这种难以捉摸的平衡点后,您最终可能还需要更改学习率。而且,当您更改学习率时,您又必须找到理想的正则化率。