为什么收缩起作用?

机器算法验证 套索 岭回归 直觉 正则化
2022-01-24 05:29:30

为了解决模型选择问题,许多方法(LASSO、岭回归等)会将预测变量的系数缩​​小到零。我正在寻找一个直观的解释,说明为什么这会提高预测能力。如果变量的真实影响实际上非常大,为什么缩小参数不会导致更差的预测?

3个回答

粗略地说,有三种不同的预测误差来源:

  1. 你的模型的偏见
  2. 模型的方差
  3. 无法解释的差异

我们对第 3 点无能为力(除了试图估计无法解释的方差并将其纳入我们的预测密度和预测区间)。这给我们留下了 1 和 2。

如果您实际上拥有“正确”的模型,那么比如说,OLS 参数估计将是无偏的,并且在所有无偏(线性)估计量(它们是蓝色的)之间具有最小的方差。来自 OLS 模型的预测将是最佳线性无偏预测 (BLUP)。听起来不错。

然而,事实证明,尽管我们在所有无偏预测中都有无偏预测和最小方差,但方差仍然可能非常大。更重要的是,我们有时可以引入“一点”偏差并同时节省“很多”方差——通过恰到好处的权衡,我们可以使用有偏(低方差)模型获得比无偏(低方差)模型更低的预测误差(更高的方差)一。这被称为“偏差-方差权衡”,这个问题及其答案很有启发性:什么时候有偏估计比无偏估计更可取?

而像套索、岭回归、弹性网络等正则化正是这样做的。他们将模型拉向零。(贝叶斯方法是类似的——它们将模型拉向先验。)因此,与非正则化模型相比,正则化模型将有偏差,但方差也较低。如果您选择正确的正则化,则结果是具有较低误差的预测。

如果您搜索“偏差-方差权衡正则化”或类似内容,您会得到一些思考。例如,此演示文稿很有用。

编辑:变形虫非常正确地指出,我正在挥手解释为什么正则化会产生较低的模型和预测方差。考虑一个具有正则化参数的套索模型λ. 如果λ,您的套索参数估计值将全部缩小为零。零的固定参数值具有零方差。(这并不完全正确,因为λ超出此参数将缩小到零取决于您的数据和模型。但是给定模型和数据,你可以找到一个λ使得模型是零模型。始终保持量词笔直。)但是,零模型当然也会有很大的偏差。毕竟,它并不关心实际的观察结果。

这同样适用于您的正则化参数的并非所有极端值:较小的值将产生未正则化的参数估计,其偏差较小(如果您拥有“正确”模型,则无偏差),但具有更高方差。他们会根据你的实际观察“跳来跳去”。更高的正则化值λ将越来越多地“限制”您的参数估计。这就是这些方法具有“套索”或“弹性网”之类的名称的原因:它们限制了参数的自由度以浮动并跟随数据。

(我正在写一篇关于这个的小论文,希望它可以很容易获得。一旦它可用,我会添加一个链接。)

只是为了给@Kolassa 的好答案添加一些东西,整个收缩估计问题都与斯坦因悖论有关。对于多变量过程p3,样本平均值的向量是不可接受的。换句话说,对于某个参数值,存在一个具有较低预期风险的不同估计量。Stein 提出了一个收缩估计器作为例子。因此,我们正在处理维度灾难,因为当您只有 1 或 2 个自变量时,收缩对您没有帮助。

阅读此答案以获取更多信息。显然,斯坦因悖论与著名的定理有关,即 3 维或更多维的 Browian 运动过程是非循环的(在各处游荡而不返回原点),而 1 维和 2 维布朗运动是循环的。

无论您缩小到什么,斯坦因悖论都成立,尽管在实践中,如果您缩小到真实参数值,效果会更好。这就是贝叶斯主义者所做的。他们认为他们知道真正的参数在哪里,并且向它收缩。然后他们声称斯坦证实了他们的存在。

它之所以被称为悖论,正是因为它确实挑战了我们的直觉。但是,如果您考虑布朗运动,那么让 3D 布朗运动返回原点的唯一方法是对台阶施加阻尼惩罚。收缩估计器还对估计施加了一种阻尼器(减少方差),这就是它起作用的原因。

@Kolassa 有一个很好的数学答案。对于更直观的视觉答案,这里有一张图片。我在这里用斜率和 y 截距做简单的线性回归。17 个点的总体是松散相关的。我随机选择了两个点并创建了一个回归。一般来说,2 个点是不够的,我的回归线在形状和质量上会有很大差异。但是, r^2 错误将是完美的,这条线击中了我的两个测试点。实线(R1 到 R5)代表这些回归。虚线(G1 到 G5)表示应用了收缩效应的回归。

在此处输入图像描述

  • 收缩会将斜率缩小到零。这不是一个任意值。我们声明此参数不太可能产生影响。在我的二维线性回归中,我们说明这些值不太可能相关。这是一种软化我们的结果和对抗过度拟合的方法。当我们在总样本中只有几个点我们更有可能看到错误的相关性时,这是有道理的。
  • 收缩并不总是产生更好的结果。从 R3 到 G3,我们最终得到了对最终回归的较差估计。它更容易产生更好的回归。
  • 收缩不仅仅是将最终回归线旋转到零的问题。当您更改斜率时,您还需要更改 y 截距。在这种情况下,我们选择一条完全通过两个点的线,并最终得到一条通过中间某处的线。
  • 您可以看到,虚线的方差远低于我们预期的实线方差。
  • 想象一下没有噪音。收缩会很可怕。我们选择的任何两点都会给我们完美的线条。如果我们应用收缩,我们最终只会得到更糟糕的结果。
  • 如果您想进一步解释,那么 StatQuest 的 Josh Starmer 在这里有一个很棒的视频