机器学习基础(三十一)—— 岭回归(Ridge Regression)到 LASSO

如果数据集的特征比样本点还多( X N × d , d > N X_{N\times d},d> N XN×d,d>N)怎么办?是否还可以使用线性回归来做预测?答案是否定的,因为在计算 ( X T X ) − 1 (X^TX)^{-1} (XTX)1 的时候会出错。

为了解决这个问题,统计学家引入了岭回归(ridge regression)的概念。简单说来,岭回归就是在矩阵 X T X X^TX XTX 上加一个 λ I \lambda I λI 使得矩阵非奇异,进而能对 X X + λ I X^X+\lambda I XX+λI 求逆。在这种情况下,回归系数的计算公式变为:

w = ( X T X + λ I ) − 1 X T y w=(X^TX+\lambda I)^{-1}X^Ty w=(XTX+λI)1XTy

岭回归最先用来处理特征数多于样本数的情况,现在也用于在估计中加入偏差,从而得到更好的估计。这里通过引入 $\lambda $ 限制了所有 w w w 之和,通过引入该惩罚项,能够减少不重要的参数。这个技术在统计学上也叫作缩减(shrinkage)。

不难证明,在增加如下约束时,普通的最小二乘法回归会得到与岭回归一样的公式:
∥ w ∥ 2 = ∑ i = 1 d w i 2 ≤ λ \|w\|^2=\sum_{i=1}^dw_i^2\leq \lambda w2=i=1dwi2λ

上式限定了所有回归系数的平方和(二范数的平方)不能大于 λ \lambda λ,使用普通的最小二乘法回归(线性回归)在当两个或更多的特征相关时,可能会得出一个很大的正系数和一个很大的负系数(回归系数)。正是因为上述限制的存在,使用岭回归可以避免这个问题。

与岭回归类似,另一个缩减(Shrinkage)LASSO 也对回归系数做了限定,对应的约束条件如下:
∥ w ∥ 1 = ∑ i = 1 d ∣ w i ∣ ≤ λ \|w\|_1=\sum_{i=1}^d|w_i|\leq \lambda w1=i=1dwiλ

唯一的不同点在于,这个约束条件使用绝对值取代了平方和。虽然约束形式只是稍作变化,结果却大相径庭:当 $\lambda $ 足够小的时候,一些系数会因此缩减到 0.

1. 正则化的眼光

  • 过度拟合与参数正则:
    • 大的系数可以将输入 X 的微小变动放大,进一步通过多个正负项的叠加尽量把每一个点都拟合上(包括那些离群点)
    • 换句话说,如果系数大得离谱,且有正有负,多半是因为过拟合了;
    • 对系数进行约束,也即对模型进行正则,便可以有效地解决过拟合问题;
  • Ridge Regression ⇒ ℓ 2 \ell_2 2 正则,会约束最终的参数值很小,在0的左右摆动,但不会为0
  • Lasso Regression ⇒ ℓ 1 \ell_1 1 正则,会使得很多参数值为 0,参数稀疏化,实现参数选择;

你可能感兴趣的:(机器学习)