我知道使用 Ridge 或 Lasso 回归我们试图缩小回归系数,并且我们通过改变 alpha 来指定我们需要的缩小量。但我无法理解这样做的直觉或理由?因为我们不再适合最佳路线。
Ridge 或 LASSO 回归中缩小回归系数的基本原理
这是线性回归中收缩系数背后的一般直觉。借用Bishop的Pattern Recognition and Machine Learning中的图形和方程。
想象一下,您必须从个观测值您可以使用线性回归来做到这一点,它近似于次多项式,
通过选择不同的值,可以拟合不同复杂度的不同次数多项式。以下是一些拟合示例(红线)和的相应值。蓝点代表观察结果,绿线是真正的底层函数。目标是拟合一个非常接近底层函数的多项式(绿线)。
观察高次多项式会发生什么。这个多项式给出了最小的误差,因为它通过了所有的点。但这不是一个很好的拟合,因为模型拟合的是数据的噪声结构,而不是底层函数。由于线性回归的总体目标是能够的未知值,因此您将被具有高次多项式的模型搞砸!
此外,让我们看一下回归系数的值。观察更高次多项式的系数值如何爆炸。
这个问题的解决方案是正则化!其中,要最小化的误差函数重新定义如下:
这给了我们岭回归的公式。包含惩罚项范数会阻止回归系数的值达到高值,从而防止过度拟合。
Lasso 有一个类似的公式,其中惩罚项是范数。包含 lasso 惩罚项有一个有趣的效果——它将一些系数驱动到零,给出一个稀疏的解决方案。
问题是我们所说的“适合最佳路线”的真正含义。是的,标准的无惩罚回归将是适合您拥有的数据样本的“最佳线”。但是,它可能不是来自总体的新样本的“最佳线”,因为标准的无惩罚回归可能会发现您拥有的特定数据样本特有的怪癖。对回归系数进行惩罚会权衡对当前数据样本的“更差”拟合,以更好地拟合未来样本,这在回归模型用于预测时尤其重要。
回应评论:
我认为没有人可以保证惩罚总是比未惩罚回归表现更好,但惩罚确实有助于避免一些潜在的重要问题,特别是在预测模型的背景下。An Introduction to Statistical Learning很好地介绍了这一点以及统计建模中的许多其他问题。尝试在数据集中的多个引导样本上重复建模(标准模型和惩罚模型),并查看标准模型和惩罚模型与完整数据集的拟合程度,以了解这在您的情况下如何发挥作用。
为正则化缩放数据的问题很复杂。通常的方法是在惩罚之前将所有预测变量标准化为单位标准差。这个想法是尽可能平等地对待所有预测变量;例如,如果您以毫米和公里为单位测量长度,则您不希望受到不同的惩罚。但是分类预测变量的标准化并不简单,有时确保某些预测变量不会受到惩罚很重要。还有一个如何选择惩罚系数的问题。因此,特定预测变量的系数在惩罚回归模型和标准回归模型之间的差异取决于分析的细节。在岭回归中,它们在惩罚模型中的幅度通常较低,
收缩法会限制回归系数的值,避免模型过拟合。
从统计学习的要素
当线性回归模型中有许多相关变量时,它们的系数可能会变得很差,并表现出高方差。一个变量上的一个非常大的正系数可以被其相关表亲的一个同样大的负系数所抵消。通过对系数施加大小约束[...],这个问题得到缓解。
岭回归平方惩罚项可以被认为如下。残差平方和 (RSS) 写入
。
我们添加 p 个虚拟变量为和相应的输入使得和。重写 RSS,包括我们得到的那些 p 变量。
当个变量的非零元素也增加,并且它们在回归中的影响增加。当时,系数趋于零。
岭回归在数学上等同于贝叶斯回归,其具有高斯先验,以 0 为中心(请参阅此处的高斯过程书的第 11 页)。我认为这有助于理解何时部署岭回归。
如果您担心数据可能会产生异常大的(例如,许多共享高线性相关性),您可能会认为岭回归是一种限制该问题的方法。它倾向于产生比相应的 OLS
Lasso 回归倾向于将很多设置为零。但只有少数观察结果(例如遗传学)或您没有强有力的理论理由相信所有都很重要的研究中,它很有用。
我认为最常见的方法实际上是同时做套索和山脊(弹性网方法)。
R 正好为此目的提供了漂亮的covnet包(包括通过交叉验证进行自我调整)。
当然,每个问题都是不同的,你应该做的是在拟合完成后保留一些数据并测试预测误差。

