经典机器学习算法:线性回归

线性回归介绍

  • 线性回归
    • 几何视角
      • 最小二乘估计(最小二乘法)
      • p维空间理解
    • 概率视角
      • 噪声为高斯分布的MLE(频率学派)
      • 权重先验也为高斯分布的 MAP(贝叶斯学派)
    • 正则化
        • L1 Lasso
        • L2 Ridge
    • 小结

线性回归

假设数据集为:
D = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯   , ( x N , y N ) } \mathcal{D}=\{(x_1, y_1),(x_2, y_2),\cdots,(x_N, y_N)\} D={ (x1,y1),(x2,y2),,(xN,yN)}
后面我们记:
X = ( x 1 , x 2 , ⋯   , x N ) T , Y = ( y 1 , y 2 , ⋯   , y N ) T X=(x_1,x_2,\cdots,x_N)^T,Y=(y_1,y_2,\cdots,y_N)^T X=(x1,x2,,xN)T,Y=(y1,y2,,yN)T
线性回归假设:
f ( w ) = w T x f(w)=w^Tx f(w)=wTx

几何视角

最小二乘估计(最小二乘法)

对这个问题,采用二范数定义的平方误差来定义损失函数:
L ( w ) = ∑ i = 1 N ∣ ∣ w T x i − y i ∣ ∣ 2 2 L(w)=\sum\limits_{i=1}^N||w^Tx_i-y_i||^2_2 L(w)=i=1NwTxiyi22
展开得到:
L ( w ) = ( w T x 1 − y 1 , ⋯   , w T x N − y N ) ⋅ ( w T x 1 − y 1 , ⋯   , w T x N − y N ) T = ( w T X T − Y T ) ⋅ ( X w − Y ) = w T X T X w − Y T X w − w T X T Y + Y T Y = w T X T X w − 2 w T X T Y + Y T Y \begin{aligned} L(w)&=(w^Tx_1-y_1,\cdots,w^Tx_N-y_N)\cdot (w^Tx_1-y_1,\cdots,w^Tx_N-y_N)^T\\ &=(w^TX^T-Y^T)\cdot (Xw-Y)=w^TX^TXw-Y^TXw-w^TX^TY+Y^TY\\ &=w^TX^TXw-2w^TX^TY+Y^TY \end{aligned} L(w)=(wTx1y1,,wTxNyN)(wTx1y1,,wTxNyN)T=(wTXTYT)(XwY)=wTXTXwYTXwwTXTY+YTY=wTXTXw2wTXTY+YTY
最小化这个值的 w ^ \hat{w} w^
w ^ = a r g m i n w L ( w ) ⟶ ∂ ∂ w L ( w ) = 0 ⟶ 2 X T X w ^ − 2 X T Y = 0 ⟶ w ^ = ( X T X ) − 1 X T Y = X + Y \begin{aligned} \hat{w}=\mathop{argmin}\limits_wL(w)&\longrightarrow\frac{\partial}{\partial w}L(w)=0\\ &\longrightarrow2X^TX\hat{w}-2X^TY=0\\ &\longrightarrow \hat{w}=(X^TX)^{-1}X^TY=X^+Y \end{aligned} w^=wargminL(w)wL(w)=02XTXw^2XTY=0w^=(XTX)1XTY=X+Y
这个式子中 ( X T X ) − 1 X T (X^TX)^{-1}X^T (XTX)1XT 又被称为伪逆。对于行满秩或者列满秩的 X X X,可以直接求解,但是对于非满秩的样本集合,需要使用奇异值分解(SVD)的方法,对 X X X 求奇异值分解,得到
X = U Σ V T X=U\Sigma V^T X=UΣVT
于是:
X + = V Σ − 1 U T X^+=V\Sigma^{-1}U^T X+=VΣ1UT
在几何上,最小二乘法的模型相当于高维空间上的一根线和训练集的Y的距离的平方求和。

p维空间理解

假设我们的数据集样本是一个 p p p 维空间(满秩的情况): X = S p a n ( x 1 , ⋯   , x N ) T X=Span(x_1,\cdots,x_N)^T X=Span(x1,,xN)T x i = ( x i 1 , x i 2 , ⋯   , x i p ) , x_i=(x_i^1,x_i^2,\cdots,x_i^p), xi=(xi1,xi2,,xip),而模型可以写成 f ( w ) = w T X = X β f(w)=w^TX=X\beta f(w)=wTX=Xβ,也就是 x 1 , ⋯   , x N x_1,\cdots,x_N x1,,xN 的某种线性组合。

对于一个输入样本来说, x i x_i xi就是在 p p p维空间上的一个向量,它在模型的输出就是 x i β i x_i\beta_i xiβi x i β i x_i\beta_i xiβi也应该在 p p p维空间内,且 x i β i x_i\beta_i xiβi应当与我们的目标向量 y i y_i yi非常接近,由于 y i y_i yi是固定的, x i β i x_i\beta_i xiβi是在我们的 p p p维空间上的,假设 y i y_i yi p p p维空间上,我们的 x i β i x_i\beta_i xiβi的目标就是 y i y_i yi,现实情况下 y i y_i yi不在 p p p维空间内,我们的目标就是接近它,拟合它在p维空间上的投影,因此两个向量的差和 p p p维空间是垂直的。

接下来给出 N N N个样本,也就是 X X X的推导:
X T ⋅ ( Y − X β ) = 0 ⟶ β = ( X T X ) − 1 X T Y X^T\cdot(Y-X\beta)=0\longrightarrow\beta=(X^TX)^{-1}X^TY XT(YXβ)=0β=(XTX)1XTY

概率视角

噪声为高斯分布的MLE(频率学派)

先给结论,最小二乘法等价于噪声为高斯分布的MLE

对于一维的情况,记 y = w T x + ϵ , ϵ ∼ N ( 0 , σ 2 ) y=w^Tx+\epsilon,\epsilon\sim\mathcal{N}(0,\sigma^2) y=wTx+ϵ,ϵN(0,σ2),那么 y ∼ N ( w T x , σ 2 ) y\sim\mathcal{N}(w^Tx,\sigma^2) yN(wTx,σ2)。代入极大似然估计中:
L ( w ) = log ⁡ p ( Y ∣ X , w ) = log ⁡ ∏ i = 1 N p ( y i ∣ x i , w ) = ∑ i = 1 N log ⁡ ( 1 2 π σ e − ( y i − w T x i ) 2 2 σ 2 ) a r g m a x w L ( w ) = a r g m i n w ∑ i = 1 N ( y i − w T x i ) 2 \begin{aligned} L(w)=\log p(Y|X,w)&=\log\prod\limits_{i=1}^Np(y_i|x_i,w)\\ &=\sum\limits_{i=1}^N\log(\frac{1}{\sqrt{2\pi\sigma}}e^{-\frac{(y_i-w^Tx_i)^2}{2\sigma^2}})\\ \mathop{argmax}\limits_wL(w)&=\mathop{argmin}\limits_w\sum\limits_{i=1}^N(y_i-w^Tx_i)^2 \end{aligned} L(w)=logp(YX,w)wargmaxL(w)=logi=1Np(yixi,w)=i=1Nlog(2πσ 1e2σ2(yiwTxi)2)=wargmini=1N(yiwTxi)2
这个表达式和最小二乘估计得到的结果一样。

权重先验也为高斯分布的 MAP(贝叶斯学派)

MAP是在前面MLE的基础上,再给予权重一个先验概率分布。

取先验分布 w ∼ N ( 0 , σ 0 2 ) w\sim\mathcal{N}(0,\sigma_0^2) wN(0,σ02)。于是:
w ^ = a r g m a x w p ( w ∣ Y ) = a r g m a x w p ( Y ∣ w ) p ( w ) = a r g m a x w log ⁡ p ( Y ∣ w ) p ( w ) = a r g m a x w ( log ⁡ p ( Y ∣ w ) + log ⁡ p ( w ) ) = a r g m i n w [ ( y − w T x ) 2 + σ 2 σ 0 2 w T w ] \begin{aligned} \hat{w}=\mathop{argmax}\limits_wp(w|Y)&=\mathop{argmax}\limits_wp(Y|w)p(w)\\ &=\mathop{argmax}\limits_w\log p(Y|w)p(w)\\ &=\mathop{argmax}\limits_w(\log p(Y|w)+\log p(w))\\ &=\mathop{argmin}\limits_w[(y-w^Tx)^2+\frac{\sigma^2}{\sigma_0^2}w^Tw] \end{aligned} w^=wargmaxp(wY)=wargmaxp(Yw)p(w)=wargmaxlogp(Yw)p(w)=wargmax(logp(Yw)+logp(w))=wargmin[(ywTx)2+σ02σ2wTw]
这里省略了 X X X p ( Y ) p(Y) p(Y) w w w 没有关系,同时也利用了上面高斯分布的 MLE的结果。

我们将会看到,超参数 σ 0 \sigma_0 σ0的存在和下面会介绍的 Ridge 正则项可以对应,同样的如果将权重的先验分布取为 Laplace 分布,那么就会得到和 L1 正则类似的结果。

正则化

在实际应用时,如果样本容量不远远大于样本的特征维度,很可能造成过拟合,对这种情况,我们有下面三个解决方式:

1. 加数据
2. 特征选择(降低特征维度)如 PCA 算法。
3. 正则化

正则化一般是在损失函数(如上面介绍的最小二乘损失)上加入正则化项(表示模型的复杂度对模型的惩罚),下面我们介绍一般情况下的两种正则化框架。
L 1 : a r g m i n w L ( w ) + λ ∣ ∣ w ∣ ∣ 1 , λ > 0 L 2 : a r g m i n w L ( w ) + λ ∣ ∣ w ∣ ∣ 2 2 , λ > 0 \begin{aligned} L1&:\mathop{argmin}\limits_wL(w)+\lambda||w||_1,\lambda\gt0\\ L2&:\mathop{argmin}\limits_wL(w)+\lambda||w||^2_2,\lambda \gt 0 \end{aligned} L1L2:wargminL(w)+λw1,λ>0:wargminL(w)+λw22,λ>0
下面对最小二乘误差分别分析这两者的区别。

L1 Lasso

L1正则化可以引起稀疏解。

从最小化损失的角度看,由于 L1 项求导在0附近的左右导数都不是0,因此更容易取到0解。

从另一个方面看,L1 正则化相当于:
a r g m i n w L ( w ) s . t . ∣ ∣ w ∣ ∣ 1 < C \mathop{argmin}\limits_wL(w)\\ s.t. ||w||_1\lt C wargminL(w)s.t.w1<C
我们已经看到平方误差损失函数在 w w w 空间是一个椭球,因此上式求解就是椭球和 ∣ ∣ w ∣ ∣ 1 = C ||w||_1=C w1=C的切点,因此更容易相切在坐标轴上。

L2 Ridge

L2正则化、岭回归、权值衰减
w ^ = a r g m i n w L ( w ) + λ w T w ⟶ ∂ ∂ w L ( w ) + 2 λ w = 0 ⟶ 2 X T X w ^ − 2 X T Y + 2 λ w ^ = 0 ⟶ w ^ = ( X T X + λ I ) − 1 X T Y \begin{aligned} \hat{w}=\mathop{argmin}\limits_wL(w)+\lambda w^Tw&\longrightarrow\frac{\partial}{\partial w}L(w)+2\lambda w=0\\ &\longrightarrow2X^TX\hat{w}-2X^TY+2\lambda \hat w=0\\ &\longrightarrow \hat{w}=(X^TX+\lambda \mathbb{I})^{-1}X^TY \end{aligned} w^=wargminL(w)+λwTwwL(w)+2λw=02XTXw^2XTY+2λw^=0w^=(XTX+λI)1XTY

可以看到,这个正则化参数和前面的 MAP 结果不谋而合。利用2范数进行正则化不仅可以是模型选择 w w w 较小的参数,同时也避免 X T X X^TX XTX不可逆的问题(因为半正定矩阵加上了一个对角矩阵是正定矩阵)。

小结

传统的机器学习方法或多或少都有线性回归模型的影子:

  1. 打破线性,线性模型往往不能很好地拟合数据,因此有三种方案克服这一劣势:
    1. 属性非线性,对特征的维数进行变换,例如多项式回归模型就是在线性特征的基础上加入高次项。(多项式回归,二次、三次)
    2. 全局非线性,在线性方程后面加入一个非线性变换,即引入一个非线性的激活函数。(激活函数是非线性)
    3. 系数非线性,对于一致的线性系数,我们进行多次变换,这样同一个特征不仅仅被单个系数影响。(神经网络)
  2. 打破全局性,线性回归在整个样本空间都是线性的,我们修改这个限制,在不同区域引入不同的线性或非线性。(线性样条回归和决策树模型)
  3. 加工数据,线性回归中使用了所有的样本,但是对数据预先进行加工学习的效果可能更好(所谓的维数灾难,高维度数据更难学习)( PCA 算法和流形学习)

最小二乘法是几何视角,等价于概率角度的频率派出发的噪声为高斯分布的MLE。正则化跟贝叶斯学派出发的MAP证明的不谋而合,加上正则化的最小二乘法等价于MAP,也说明了后者在机器学习中的理论正确性与重要性。

你可能感兴趣的:(经典机器学习算法)