Google---机器学习速成课程(八)- 简化正则化 (Regularization for Simplicity)


简化正则化 (Regularization for Simplicity)

正则化指的是降低模型的复杂度以减少过拟合

学习目标

  • 了解复杂度与泛化之间的权衡。
  • 使用 L2 正则化进行实验。

-----------------------------------------------------

简化正则化 (Regularization for Simplicity):L₂ 正则化

请看以下泛化曲线,该曲线显示的是训练集和验证集相对于训练迭代次数的损失。


图 1. 训练集和验证集损失

图 1 显示的是某个模型的训练集的损失逐渐减少,但在测试集的损失最终增加。

换言之,该泛化曲线显示该模型与训练集中的数据过拟合。根据奥卡姆剃刀定律,或许我们可以通过降低复杂模型的复杂度来防止过拟合,这种原则称为正则化

也就是说,并非只是以最小化损失(经验风险最小化)为目标:


而是以最小化损失和复杂度为目标,这称为结构风险最小化

现在,我们的训练优化算法是一个由两项内容组成的函数:

损失项:用于衡量模型与数据的拟合度,

正则化项:用于衡量模型复杂度。

本课重点介绍了两种衡量模型复杂度的常见方式(这两种方式有些相关):

  • 将模型复杂度作为模型中所有特征的权重的函数。
  • 将模型复杂度作为具有非零权重的特征总数的函数。后面的一个单元介绍了这种方法。)

如果模型复杂度是权重的函数,则特征权重的绝对值越高,模型就越复杂。

我们可以使用 L2 正则化公式来量化复杂度,该公式将正则化项定义为所有特征权重的平方和:


在这个公式中,接近于 0 的权重对模型复杂度几乎没有影响,而离群值权重则可能会产生巨大的影响。

例:某个线性模型具有以下权重:

w3(上述加粗内容)的平方值为 25,几乎贡献了全部的复杂度。所有 5 个其他权重的平方和对 L2正则化项的贡献仅为 1.915。

-----------------------------------------------------


简化正则化 (Regularization for Simplicity):Lambda

模型开发者通过以下方式来调整正则化项的整体影响:用正则化项的值乘以名为 lambda(又称为正则化率)的标量。也就是说,模型开发者会执行以下运算:


执行 L2 正则化对模型具有以下影响

  • 使权重值接近于 0(但并非正好为 0)
  • 使权重的平均值接近于 0,且呈正态(钟形曲线或高斯曲线)分布。


增加 lambda 值增强正则化效果如上图左图所示:可能得到 lambda 值较高的权重直方图

降低 lambda 值减弱正则化效果如上图右图所示:降低 lambda 的值往往会得出比较平缓的直方图

在选择 lambda 值时,目标是在简单化和训练数据拟合之间达到适当的平衡:

  • 如果 lambda 值过高,模型会非常简单,将面临数据欠拟合的风险。模型将无法从训练数据中获得足够的信息来做出有用的预测。

  • 如果 lambda 值过低,模型会比较复杂,将面临数据过拟合的风险。模型将因获得过多训练数据特点方面的信息而无法泛化到新数据。

注意将 lambda 设为 0 可彻底取消正则化。 在这种情况下,训练的唯一目的将是最小化损失,而这样做会使过拟合的风险达到最高。

理想的 lambda 值生成的模型可以很好地泛化到以前未见过的新数据。 遗憾的是,理想的 lambda 值取决于数据,因此您需要手动或自动进行一些调整。

注:学习速率和 lambda 之间存在密切关联。强 L2 正则化值往往会使特征权重更接近于 0。较低的学习速率(使用早停法)通常会产生相同的效果,因为与 0 的距离并不是很远。 因此,同时调整学习速率和 lambda 可能会产生令人混淆的效果。

-----------------------------------------------------

练习:点击打开链接

将正则化率从 0 增至 0.3 会产生以下影响:

  • 测试损失明显减少。

    注意:虽然测试损失明显减少,训练损失实际上却有所增加。这属于正常现象,因为您向损失函数添加了另一项来降低复杂度。最终,最重要的是测试损失,因为它是真正用于衡量模型能否针对新数据做出良好预测的标准。

  • 测试损失与训练损失之间的差值明显减少。
  • 特征和某些特征组合的权重的绝对值较低,这表示模型复杂度有所降低。

由于数据集具有随机性,因此无法预测哪个正则化率能得出最准确的结果。 对我们来说,正则化率为 0.3 或 1 时,一般测试损失降至最低。

-------------------------------------------------------

以上整理转载在谷歌出品的机器学习速成课程点击打开链接 侵删!