一、概述
假设有以下数据:
D = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯ , ( x N , y N ) } x i ∈ R p , y i ∈ R , i = 1 , 2 , ⋯ , N X = ( x 1 , x 1 , ⋯ , x N ) T = ( x 1 T x 2 T ⋮ x N T ) = ( x 11 x 12 ⋯ x 1 p x 21 x 22 ⋯ x 2 p ⋮ ⋮ ⋱ ⋮ x N 1 x N 2 ⋯ x N p ) N × p Y = ( y 1 y 2 ⋮ y N ) N × 1 D=\left \{(x_{1},y_{1}),(x_{2},y_{2}),\cdots ,(x_{N},y_{N})\right \}\\ x_{i}\in \mathbb{R}^{p},y_{i}\in \mathbb{R},i=1,2,\cdots ,N\\ X=(x_{1},x_{1},\cdots ,x_{N})^{T}=\begin{pmatrix} x_{1}^{T}\\ x_{2}^{T}\\ \vdots \\ x_{N}^{T} \end{pmatrix}=\begin{pmatrix} x_{11} & x_{12} & \cdots &x_{1p} \\ x_{21} & x_{22}& \cdots &x_{2p} \\ \vdots & \vdots & \ddots &\vdots \\ x_{N1}& x_{N2} & \cdots & x_{Np} \end{pmatrix}_{N \times p}\\ Y=\begin{pmatrix} y_{1}\\ y_{2}\\ \vdots \\ y_{N} \end{pmatrix}_{N \times 1} D={(x1,y1),(x2,y2),⋯,(xN,yN)}xi∈Rp,yi∈R,i=1,2,⋯,NX=(x1,x1,⋯,xN)T=⎝⎜⎜⎜⎛x1Tx2T⋮xNT⎠⎟⎟⎟⎞=⎝⎜⎜⎜⎛x11x21⋮xN1x12x22⋮xN2⋯⋯⋱⋯x1px2p⋮xNp⎠⎟⎟⎟⎞N×pY=⎝⎜⎜⎜⎛y1y2⋮yN⎠⎟⎟⎟⎞N×1
这些数据符合下图关系(以一维数据为例),这里的函数 f ( w ) f(w) f(w)忽略了偏置 b b b:
二、最小二乘估计
L ( w ) = ∑ i = 1 N ∥ w T x i − y i ∥ 2 2 = ∑ i = 1 N ( w T x i − y i ) 2 = ( w T x 1 − y 1 w T x 2 − y 2 ⋯ w T x N − y N ) ⏟ ( w T x 1 w T x 2 ⋯ w T x N ) − ( y 1 y 2 ⋯ y N ) ⏟ w T ( x 1 x 2 ⋯ x N ) − ( y 1 y 2 ⋯ y N ) ⏟ w T X T − Y T ( w T x 1 − y 1 w T x 2 − y 2 ⋮ w T x N − y N ) = ( w T X T − Y T ) ( X w − Y ) = w T X T X w − w T X T Y − Y T X w + Y T Y = w T X T X w − 2 w T X T Y + Y T Y L(w)=\sum_{i=1}^{N}\left \| w^{T}x_{i}-y_{i}\right \|_{2}^{2}\\ =\sum_{i=1}^{N}(w^{T}x_{i}-y_{i})^{2}\\ =\underset{\underset{\underset{w^{T}X^{T}-Y^{T}}{\underbrace{w^{T}\begin{pmatrix} x_{1} & x_{2} & \cdots & x_{N} \end{pmatrix}-\begin{pmatrix} y_{1} & y_{2} & \cdots & y_{N} \end{pmatrix}}}}{\underbrace{\begin{pmatrix} w^{T}x_{1} & w^{T}x_{2} & \cdots & w^{T}x_{N} \end{pmatrix}-\begin{pmatrix} y_{1} & y_{2} & \cdots & y_{N} \end{pmatrix}}}}{\underbrace{\begin{pmatrix} w^{T}x_{1}-y_{1} & w^{T}x_{2}-y_{2} & \cdots & w^{T}x_{N}-y_{N} \end{pmatrix}}}\begin{pmatrix} w^{T}x_{1}-y_{1}\\ w^{T}x_{2}-y_{2}\\ \vdots \\ w^{T}x_{N}-y_{N} \end{pmatrix}\\ =(w^{T}X^{T}-Y^{T})(Xw-Y)\\ =w^{T}X^{T}Xw-w^{T}X^{T}Y-Y^{T}Xw+Y^{T}Y\\ =w^{T}X^{T}Xw-2w^{T}X^{T}Y+Y^{T}Y L(w)=i=1∑N∥∥wTxi−yi∥∥22=i=1∑N(wTxi−yi)2=wTXT−YT wT(x1x2⋯xN)−(y1y2⋯yN) (wTx1wTx2⋯wTxN)−(y1y2⋯yN) (wTx1−y1wTx2−y2⋯wTxN−yN)⎝⎜⎜⎜⎛wTx1−y1wTx2−y2⋮wTxN−yN⎠⎟⎟⎟⎞=(wTXT−YT)(Xw−Y)=wTXTXw−wTXTY−YTXw+YTY=wTXTXw−2wTXTY+YTY
接下来通过对 w w w求导就可以解得参数w:
w ^ = a r g m i n L ( w ) ∂ L ( w ) ∂ w = 2 X T X w − 2 X T Y = 0 得 出 w = ( X T X ) − 1 X T ⏟ X + , 伪 逆 Y \hat{w}=argminL(w)\\ \frac{\partial L(w)}{\partial w}=2X^{T}Xw-2X^{T}Y=0\\ 得出w=\underset{X^{+},伪逆}{\underbrace{(X^{T}X)^{-1}X^{T}}}Y w^=argminL(w)∂w∂L(w)=2XTXw−2XTY=0得出w=X+,伪逆 (XTX)−1XTY
以上未考虑偏执 b b b,如果考虑的话则可以为 w w w添加一个维度,同时也为 x x x添加一个维度并使得添加的维度的值为 1 1 1,然后使用同样的求解方法即可。.
三、线性回归的几何解释
- 每个样本点的误差的总和
使用最小二乘法可以看做损失函数是每个样本的误差的总和,每个样本的误差即是 y i y_{i} yi与 w T x i w^{T}x_{i} wTxi的差,如下图所示:
- Y Y Y在 X X X的列空间上的投影
一组向量的生成子空间(span)是原始向量线性组合后所能抵达的点的集合。确定方程 A x = b Ax=b Ax=b是否有解,相当于确定向量 b b b是否在 A A A列向量的生成子空间中。这个特殊的生成子空间被称为 A A A的列空间(column space)或者 A A A的值域(range)。
我们的目的是为了求解 w w w使得 X w = Y Xw=Y Xw=Y,显然这个方程一般是无解的,即 Y Y Y一般不在 X X X的列空间中,因为样本点一般是散落在某条直线周围,所有的样本点准确地落在同一条直线上的情况少之又少。
对于 X w = f ( w ) Xw=f(w) Xw=f(w),为了使 f ( w ) f(w) f(w)与 Y Y Y最接近,则 f ( w ) f(w) f(w)就应该是 Y Y Y在 X X X的列空间中的投影,如下图所示,以 p = 2 p=2 p=2为例:
Y − X w Y-Xw Y−Xw就应该与每一个 ( x 1 i x 2 i ⋮ x N i ) \begin{pmatrix} x_{1i}\\ x_{2i}\\ \vdots \\ x_{Ni} \end{pmatrix} ⎝⎜⎜⎜⎛x1ix2i⋮xNi⎠⎟⎟⎟⎞都垂直,即 X T ( Y − X w ) = 0 p × 1 X^{T}(Y-Xw)=0_{p\times1} XT(Y−Xw)=0p×1,则可以直接解得 w = ( X T X ) − 1 X T Y w=(X^{T}X)^{-1}X^{T}Y w=(XTX)−1XTY。
四、最小二乘法与极大似然估计
可以认为实际值与估计值之间的差是一个高斯噪声,即 y y y和 f ( w ) f(w) f(w)满足关系$y=f(w)+\varepsilon =w^{T}x+\varepsilon , 其 中 ,其中 ,其中\varepsilon 是 高 斯 噪 声 , 满 足 是高斯噪声,满足 是高斯噪声,满足\varepsilon\sim N(0,\sigma ^{2}) , 因 此 ,因此 ,因此y|x;w\sim N(w^{T}x,\sigma ^{2}) , 即 ,即 ,即P(y|x;w)=\frac{1}{\sqrt{2\pi }\sigma }exp\left {-\frac{(y-w{T}x){2}}{2\sigma ^{2}}\right }$可以使用极大似然估计法来进行求解:
L ( w ) = l o g P ( Y ∣ X ; w ) = l o g ∏ i = 1 N P ( y i ∣ x i ; w ) = ∑ i = 1 N l o g P ( y i ∣ x i ; w ) = ∑ i = 1 N ( l o g 1 2 π + l o g e x p { − ( y i − w T x i ) 2 2 σ 2 } ) = ∑ i = 1 N ( l o g 1 2 π − ( y i − w T x i ) 2 2 σ 2 ) w ^ = a r g m a x w L ( w ) = a r g m a x w ∑ i = 1 N ( l o g 1 2 π − ( y i − w T x i ) 2 2 σ 2 ) = a r g m a x w ∑ i = 1 N − ( y i − w T x i ) 2 2 σ 2 = a r g m i n w ∑ i = 1 N ( y i − w T x i ) 2 = a r g m i n w ∑ i = 1 N ∥ w T x i − y i ∥ 2 2 ( 最 小 二 乘 法 ) L(w)=logP(Y|X;w)\\ =log\prod_{i=1}^{N}P(y_{i}|x_{i};w)\\ =\sum_{i=1}^{N}logP(y_{i}|x_{i};w)\\ =\sum_{i=1}^{N}(log\frac{1}{\sqrt{2\pi }}+log\, exp\left \{-\frac{(y_{i}-w^{T}x_{i})^{2}}{2\sigma ^{2}}\right \})\\ =\sum_{i=1}^{N}(log\frac{1}{\sqrt{2\pi }}-\frac{(y_{i}-w^{T}x_{i})^{2}}{2\sigma ^{2}})\\ \hat{w}=\underset{w}{argmax}L(w)\\ =\underset{w}{argmax}\sum_{i=1}^{N}(log\frac{1}{\sqrt{2\pi }}-\frac{(y_{i}-w^{T}x_{i})^{2}}{2\sigma ^{2}})\\=\underset{w}{argmax}\sum_{i=1}^{N}-\frac{(y_{i}-w^{T}x_{i})^{2}}{2\sigma ^{2}}\\ =\underset{w}{argmin}\sum_{i=1}^{N}(y_{i}-w^{T}x_{i})^{2}\\ =\underset{w}{argmin}\sum_{i=1}^{N}\left \| w^{T}x_{i}-y_{i}\right \|_{2}^{2}\\ (最小二乘法) L(w)=logP(Y∣X;w)=logi=1∏NP(yi∣xi;w)=i=1∑NlogP(yi∣xi;w)=i=1∑N(log2π1+logexp{−2σ2(yi−wTxi)2})=i=1∑N(log2π1−2σ2(yi−wTxi)2)w^=wargmaxL(w)=wargmaxi=1∑N(log2π1−2σ2(yi−wTxi)2)=wargmaxi=1∑N−2σ2(yi−wTxi)2=wargmini=1∑N(yi−wTxi)2=wargmini=1∑N∥∥wTxi−yi∥∥22(最小二乘法)
可以看到最小二乘法与噪声为高斯噪声时的极大似然估计法是等价的。
五、线性回归的正则化
- 高维小样本的问题
w ^ = ( X T X ) − 1 X T Y \hat{w}=(X^{T}X)^{-1}X^{T}Y w^=(XTX)−1XTY
当样本数 N N N远大于维度 p p p时 X T X X^{T}X XTX可逆,而当出现高维小样本的情况即维度 p p p大于样本数 N N N时, X T X X^{T}X XTX就不可逆,这种时候就容易出现过拟合的情况。
- 处理过拟合的方法
面对上述过拟合的现象有一些解决方案,主要有 { 增 加 数 据 量 特 征 选 择 / 特 征 提 取 正 则 化 \left\{\begin{matrix} 增加数据量\\ 特征选择/特征提取\\ 正则化 \end{matrix}\right. ⎩⎨⎧增加数据量特征选择/特征提取正则化
特征选择指的是根据某种规则去掉一些特征来实现降维;特征提取的方法例如主成分分析(PCA),也是实现降维;正则化的方法指给损失函数添加惩罚项来避免过拟合。
- 正则化的方法
通过最小化 J ( w ) = L ( w ) ‾ l o s s + λ P ( w ) ‾ p e n a l t y J(w)=\underset{loss}{\underline{L(w)}}+\lambda \underset{penalty}{\underline{P(w)}} J(w)=lossL(w)+λpenaltyP(w)来实现正则化,主要有L1正则化和L2正则化(也叫岭回归、权重衰减)。
{ L 1 正 则 化 ( L a s s o ) : P ( w ) = ∥ w ∥ 1 L 2 正 则 化 ( R i d g e ) : P ( w ) = ∥ w ∥ 2 2 \left\{\begin{matrix} L1正则化(Lasso):P(w)=\left \| w\right \|_{1}\\ L2正则化(Ridge):P(w)=\left \| w\right \|_{2}^{2} \end{matrix}\right. {L1正则化(Lasso):P(w)=∥w∥1L2正则化(Ridge):P(w)=∥w∥22
下面为L2正则化的求解过程:
J ( w ) = L ( w ) + λ P ( w ) = ( w T X T − Y T ) ( X w − Y ) + λ w T w = w T X T X w − 2 w T X T Y + Y T Y + λ w T w = w T ( X T X + λ I ) w − 2 w T X T Y + Y T Y w ^ = a r g m i n w J ( w ) ∂ J ( w ) ∂ w = 2 ( X T X + λ I ) w − 2 X T Y = 0 w ^ = ( X T X + λ I ) − 1 X T Y J(w)=L(w)+\lambda P(w)\\ =(w^{T}X^{T}-Y^{T})(Xw-Y)+\lambda w^{T}w\\ =w^{T}X^{T}Xw-2w^{T}X^{T}Y+Y^{T}Y+\lambda w^{T}w\\ =w^{T}(X^{T}X+\lambda I)w-2w^{T}X^{T}Y+Y^{T}Y\\ \hat{w}=\underset{w}{argmin}J(w)\\ \frac{\partial J(w)}{\partial w}=2(X^{T}X+\lambda I)w-2X^{T}Y=0\\ \hat{w}=(X^{T}X+\lambda I)^{-1}X^{T}Y J(w)=L(w)+λP(w)=(wTXT−YT)(Xw−Y)+λwTw=wTXTXw−2wTXTY+YTY+λwTw=wT(XTX+λI)w−2wTXTY+YTYw^=wargminJ(w)∂w∂J(w)=2(XTX+λI)w−2XTY=0w^=(XTX+λI)−1XTY
半正定矩阵 X T X X^{T}X XTX加上对角矩阵 λ I \lambda I λI一定是可逆的,可以解决 X T X X^{T}X XTX可能不可逆带来的问题。
六、最小二乘法与最大后验估计
- 已知
仍然认为实际值与估计值之间的差是一个高斯噪声,即 y y y和 f ( w ) f(w) f(w)满足关系:
y = f ( w ) + ε = w T x + ε 其 中 ε 是 高 斯 噪 声 , 满 足 ε ∼ N ( 0 , σ 2 ) 因 此 y ∣ x ; w ∼ N ( w T x , σ 2 ) , 即 P ( y ∣ x ; w ) = 1 2 π σ e x p { − ( y − w T x ) 2 2 σ 2 } y=f(w)+\varepsilon =w^{T}x+\varepsilon \\ 其中\varepsilon是高斯噪声,满足\varepsilon\sim N(0,\sigma ^{2})\\ 因此y|x;w\sim N(w^{T}x,\sigma ^{2}),即P(y|x;w)=\frac{1}{\sqrt{2\pi }\sigma }exp\left \{-\frac{(y-w^{T}x)^{2}}{2\sigma ^{2}}\right \} y=f(w)+ε=wTx+ε其中ε是高斯噪声,满足ε∼N(0,σ2)因此y∣x;w∼N(wTx,σ2),即P(y∣x;w)=2πσ1exp{−2σ2(y−wTx)2}
另外假设参数 w w w的服从先验分布:
w ∼ N ( 0 , σ 0 2 ) , 即 P ( w ) = 1 2 π σ 0 e x p { − ∥ w ∥ 2 2 2 σ 0 2 } 后 验 概 率 为 P ( w ∣ Y ) = P ( Y ∣ w ) P ( w ) P ( Y ) ( 这 里 的 Y 指 Y ∣ X , 为 书 写 简 单 而 省 略 。 ) w\sim N(0,\sigma _{0}^{2}),即P(w)=\frac{1}{\sqrt{2\pi }\sigma_{0}}exp\left \{-\frac{\left \| w\right \|_{2}^{2}}{2\sigma _{0}^{2}}\right \}\\ 后验概率为P(w|Y)=\frac{P(Y|w)P(w)}{P(Y)}(这里的Y指Y|X,为书写简单而省略。) w∼N(0,σ02),即P(w)=2πσ01exp{−2σ02∥w∥22}后验概率为P(w∣Y)=P(Y)P(Y∣w)P(w)(这里的Y指Y∣X,为书写简单而省略。)
- 最大后验估计法求解参数 w w w
w ^ = a r g m a x w P ( w ∣ Y ) = a r g m a x w P ( Y ∣ w ) P ( w ) P ( Y ) = a r g m a x w P ( Y ∣ w ) P ( w ) = a r g m a x w l o g P ( Y ∣ w ) P ( w ) = a r g m a x w l o g ∏ i = 1 N P ( y i ∣ w ) P ( w ) = a r g m a x w ∑ i = 1 N l o g P ( y i ∣ w ) P ( w ) = a r g m a x w ∑ i = 1 N l o g ( 1 2 π σ 1 2 π σ 0 e x p { − ( y − w T x ) 2 2 σ 2 − ∥ w ∥ 2 2 2 σ 0 2 } ) = a r g m a x w ∑ i = 1 N ( l o g 1 2 π σ 1 2 π σ 0 + l o g e x p { − ( y − w T x ) 2 2 σ 2 − ∥ w ∥ 2 2 2 σ 0 2 } ) = a r g m a x w ∑ i = 1 N ( − ( y − w T x ) 2 2 σ 2 − ∥ w ∥ 2 2 2 σ 0 2 ) = a r g m i n w ∑ i = 1 N ( ( y − w T x ) 2 2 σ 2 + ∥ w ∥ 2 2 2 σ 0 2 ) = a r g m i n w ∑ i = 1 N ( ( y − w T x ) 2 ⏟ L S E + σ 2 σ 0 2 ⏟ λ ∥ w ∥ 2 2 ) \hat{w}=\underset{w}{argmax}P(w|Y)\\ =\underset{w}{argmax}\frac{P(Y|w)P(w)}{P(Y)}\\ =\underset{w}{argmax}P(Y|w)P(w)\\ =\underset{w}{argmax}\, logP(Y|w)P(w)\\ =\underset{w}{argmax}\, log\prod_{i=1}^{N}P(y_{i}|w)P(w)\\ =\underset{w}{argmax}\sum_{i=1}^{N}logP(y_{i}|w)P(w)\\ =\underset{w}{argmax}\sum_{i=1}^{N}log(\frac{1}{\sqrt{2\pi }\sigma}\frac{1}{\sqrt{2\pi }\sigma_{0}}exp\left \{-\frac{(y-w^{T}x)^{2}}{2\sigma ^{2}}-\frac{\left \| w\right \|_{2}^{2}}{2\sigma _{0}^{2}}\right \})\\ =\underset{w}{argmax}\sum_{i=1}^{N}(log\frac{1}{\sqrt{2\pi }\sigma}\frac{1}{\sqrt{2\pi }\sigma_{0}}+log\, exp\left \{-\frac{(y-w^{T}x)^{2}}{2\sigma ^{2}}-\frac{\left \| w\right \|_{2}^{2}}{2\sigma _{0}^{2}}\right \})\\ =\underset{w}{argmax}\sum_{i=1}^{N}(-\frac{(y-w^{T}x)^{2}}{2\sigma ^{2}}-\frac{\left \| w\right \|_{2}^{2}}{2\sigma _{0}^{2}})\\ =\underset{w}{argmin}\sum_{i=1}^{N}(\frac{(y-w^{T}x)^{2}}{2\sigma ^{2}}+\frac{\left \| w\right \|_{2}^{2}}{2\sigma _{0}^{2}})\\ =\underset{w}{argmin}\sum_{i=1}^{N}(\underset{LSE}{\underbrace{(y-w^{T}x)^{2}}}+\underset{\lambda }{\underbrace{\frac{\sigma ^{2}}{\sigma _{0}^{2}}}}\left \| w\right \|_{2}^{2}) w^=wargmaxP(w∣Y)=wargmaxP(Y)P(Y∣w)P(w)=wargmaxP(Y∣w)P(w)=wargmaxlogP(Y∣w)P(w)=wargmaxlogi=1∏NP(yi∣w)P(w)=wargmaxi=1∑NlogP(yi∣w)P(w)=wargmaxi=1∑Nlog(2πσ12πσ01exp{−2σ2(y−wTx)2−2σ02∥w∥22})=wargmaxi=1∑N(log2πσ12πσ01+logexp{−2σ2(y−wTx)2−2σ02∥w∥22})=wargmaxi=1∑N(−2σ2(y−wTx)2−2σ02∥w∥22)=wargmini=1∑N(2σ2(y−wTx)2+2σ02∥w∥22)=wargmini=1∑N(LSE (y−wTx)2+λ σ02σ2∥w∥22)
可以看到正则化的最小二乘法与噪声为高斯噪声且先验也是高斯分布时的最大后验估计法是等价的。
- 总结
L S E ⇔ M L E ( n o i s e 为 G a u s s i a n D i s t r i b u t i o n ) R e g u l a r i z e d L S E ⇔ M A P ( n o i s e 、 p r i o r 为 G a u s s i a n D i s t r i b u t i o n ) LSE\Leftrightarrow MLE(noise为Gaussian Distribution)\\ Regularized \: LSE\Leftrightarrow MAP(noise、prior为Gaussian Distribution) LSE⇔MLE(noise为GaussianDistribution)RegularizedLSE⇔MAP(noise、prior为GaussianDistribution)