Lasso回归系列二:Lasso回归/岭回归的原理

Lasso回归/岭回归的原理

在学习L1,L2正则化的作用和区别时,我们总是会看到这样的一副图片:

Lasso回归系列二:Lasso回归/岭回归的原理_第1张图片
这幅图片形象化地解释了L1,L2对线性模型产生的不同的约束效果。

我最开始其实是不太理解为什么要这么画的。比如

1、L1范数(L1-norm)等值线一定会和平方误差项等值线相交于某一坐标轴吗?

2、Lasso回归只能用平方和误差作为损失吗,换成交叉熵可以吗?

3、除了L1-norm,L2-norm,还有没有别的正则化方法,他们的区别是什么?
见我的另一篇博客Lasso回归系列三:机器学习中的L0, L1, L2, L2,1范数

现在算是搞明白了,结合网上很不错的几篇博客,再梳理一下,分享给大家,如有不足或者错误,请多多指正。

概述

使用L1正则化项的回归模型被称作Lasso回归(Lasso Regression),使用L2正则化项的回归模型被称作岭回归(Ridge Regression)。

所以只要是回归问题中加入L1正则项,都可以称为Lasso回归,并非只限于使用平方和误差作损失的情况。

在本文中,首先,我们会了解在使用最小二乘估求解线性回归问题时,加入L1-norm的Lasso回归,加入L2-norm的岭回归会使求解发生哪些变化,从而更好地理解如何使用Lasso回归和岭回归。

线性模型的最小二乘估

在对线性模型进行参数估计时,可以使用最小二乘法。

用数学语言来描述,线性模型可以表示为:
y = X β + ϵ E ( ϵ ) = 0 , C o v ( ϵ ) = σ 2 I y = X\beta +\epsilon \\E(\epsilon)=0, Cov(\epsilon) = \sigma^2 I y=Xβ+ϵE(ϵ)=0,Cov(ϵ)=σ2I
其中 y y y n × 1 n \times 1 n×1的标签向量, X X X n × p n \times p n×p的特征矩阵(对应到数据上, n n n是样本数, p p p是特征数量) , β \beta β ϵ \epsilon ϵ是要估计的参数, β \beta β p × 1 p \times 1 p×1的未知参数向量, ϵ \epsilon ϵ 是随机误差。

最小二乘法是估计参数向量 β \beta β 的基本方法,其思想是让误差尽可能得小,也即$\epsilon = y- X\beta $ 尽可能得小,也即是使
Q ( β ) = ∣ ∣ ϵ ∣ ∣ 2 = ∣ ∣ y − X β ∣ ∣ 2 = ( y − X β ) T ( y − X β ) Q(\beta) = ||\epsilon||^2 = ||y-X\beta||^2 = (y-X\beta)^T(y-X\beta) Q(β)=ϵ2=yXβ2=(yXβ)T(yXβ)
尽可能得小。

根据凸函数极小值就是最小值的定理,我们可以通过求得偏导等于0处的 β \beta β 值,使得上式达到最小值,即:
β ^ = ( X T X ) − 1 X T y \hat\beta = (X^TX)^{-1}X^Ty β^=(XTX)1XTy
结合矩阵论中的知识,当 r a n k ( X ) = p rank(X)=p rank(X)=p 时, X T X X^TX XTX 可逆,这时 β \beta β 有唯一解,$\hat\beta = \beta $,称 $ \hat\beta $ 是 $ \beta $ 的无偏估计;当 r a n k ( X ) < p rank(X)

rank(X)<p 时, X X X 矩阵不满秩,此时我们无法得到$ \beta $ 的无偏估计,而导致 r a n k ( X ) < p rank(X)

rank(X)<p 的原因一般有两种:1、样本数小于特征数量,2、即使样本数较多,但变量(特征)之间存在线性关系,Lasso回归和Ridge(岭回归)就是用来解决这一问题的。

Lasso回归和Ridge回归

Lasso回归(lasso regression)是在目标函数后加一个权重 β \beta β 的1-范数(机器学习中的范数定义不同于数学中的定义,具体定义请看【https://xiongyiming.blog.csdn.net/article/details/81673491】),即:
Q ( β ) = ∣ ∣ y − X β ∣ ∣ 2 2 + λ ∣ ∣ β ∣ ∣ 1    ⟺    arg ⁡ min ⁡ ∣ ∣ y − X β ∣ ∣ 2 s . t . ∑ ∣ β j ∣ ≤ s Q(\beta) = ||y-X\beta||^2_2 + \lambda ||\beta||_1 \\ \quad \iff \\ \arg \min ||y-X\beta||^2 \quad s.t. \sum |\beta_j| \leq s Q(β)=yXβ22+λβ1argminyXβ2s.t.βjs

岭回归(ridge regression)是在目标函数后加一个权重 β \beta β 的2-范数,即:
Q ( β ) = ∣ ∣ y − X β ∣ ∣ 2 2 + λ ∣ ∣ β ∣ ∣ 2    ⟺    arg ⁡ min ⁡ ∣ ∣ y − X β ∣ ∣ 2 s . t . ∑ β j 2 ≤ s Q(\beta) = ||y-X\beta||^2_2 + \lambda ||\beta||_2 \\ \quad \iff \\ \arg \min ||y-X\beta||^2 \quad s.t. \sum \beta_j^2 \leq s Q(β)=yXβ22+λβ2argminyXβ2s.t.βj2s

对上式求解,可以得到 β \beta β 的岭估计:
β ^ ( λ ) = ( X T X + λ I ) − 1 X T y \hat\beta(\lambda) = (X^TX+\lambda I)^{-1}X^Ty β^(λ)=(XTX+λI)1XTy
这样确保 X T X + λ I X^TX+\lambda I XTX+λI 满秩,可逆,当然此时的 β ^ ( λ ) \hat\beta(\lambda) β^(λ) 是一个有偏估计。

Lasso回归为什么更容易产生稀疏解?

我们再看下这幅图:

Lasso回归系列二:Lasso回归/岭回归的原理_第2张图片

平方误差等值线即 Q ( β ) = ∣ ∣ y − X β ∣ ∣ 2 Q(\beta) = ||y-X\beta||^2 Q(β)=yXβ2 对应的等势线

Lasso回归对应L1范数等值线,Ridge回归对应L2范数等值线,两者均通过正则项参数 λ \lambda λ 来调节对参数 β \beta β 的约束程度。

Lasso回归容易产生稀疏解,是因为L1范数包含了一些在坐标轴上的不可微的角点(non-differentiable corner ),这些角点和 Q ( β ) = ∣ ∣ y − X β ∣ ∣ 2 Q(\beta) = ||y-X\beta||^2 Q(β)=yXβ2 相交的概率会大很多。而在Ridge回归中,L2范数是处处可微的,所以和 Q ( β ) = ∣ ∣ y − X β ∣ ∣ 2 Q(\beta) = ||y-X\beta||^2 Q(β)=yXβ2在坐标轴上相交的概率会小很多。

此外,对于L1范数来说, λ \lambda λ 越大, ∣ ∣ β ∣ ∣ 1 ||\beta||_1 β1 的范围越小,平方误差等值线和L1范数等值线在坐标轴上相交的概率就越大,也就是说 β \beta β 中的元素变成0的概率越大。反之, β \beta β 中的元素变成0的概率则越小。

参考

L1,L2正则化方法

Lasso—原理及最优解

你可能感兴趣的:(机器学习,回归,逻辑回归)