学习笔记3-最小二乘法详细推导

1.最小二乘法作用

最小二乘法是拟合超定线形方程的一中使用广泛的方法,以下介绍其推导过程。

模型假设及推导

设存在n个特征组成的向量x = [ x 0 , x 1 , x 2 , . . . , x n ] x=\left[ x_0,x_1,x_2,...,x_n \right]x=[x0,x1,x2,...,xn],并且有训练集D = ( x ( i ) , y ( i ) ) , i = 1 , 2 , . . . , m D=\left( x^{\left( i \right)},y^{\left( i \right)} \right) ,i=1,2,...,mD=(x(i),y(i)),i=1,2,...,m
现如今,把D DD带入x xx中,得到m × ( n + 1 ) m \times(n+1)m×(n+1)的输入矩阵:
X = ( x 0 ( 1 ) x 1 ( 1 ) . . . x n ( 1 ) x 0 ( 2 ) x 1 ( 2 ) . . . x n ( 2 ) . . . . . . . . . . . . x 0 ( m ) x 1 ( m ) . . . x n ( m ) ) X=\left( \begin{matrix}{} x_{0}^{\left( 1 \right)}& x_{1}^{\left( 1 \right)}& ...& x_{n}^{\left( 1 \right)}\\ x_{0}^{\left( 2 \right)}& x_{1}^{\left( 2 \right)}& ...& x_{n}^{\left( 2 \right)}\\ ...& ...& ...& ...\\ x_{0}^{\left( m \right)}& x_{1}^{\left( m \right)}& ...& x_{n}^{\left( m \right)}\\ \end{matrix} \right)X=x0(1)x0(2)...x0(m)x1(1)x1(2)...x1(m)............xn(1)xn(2)...xn(m)
以及输出矩阵:
Y = [ y ( 1 ) , y 2 , . . . , y ( m ) ] T Y=\left[ y^{\left( 1 \right)},y^2,...,y^{\left( m \right)} \right] ^TY=[y(1),y2,...,y(m)]T

现设线形拟合函数为h W ( X ) = X W T h_W\left( X \right) =XW^ThW(X)=XWT

其中,W WW为权重向量,其组成为:W = [ w 1 , w 2 , . . . , w n ] W=\left[ w_1,w_2,...,w_n \right]W=[w1,w2,...,wn]这也是所求的目标量

根据经验风险最小原则:
min ⁡ ( J ( W ) ) = min ⁡ ( 1 2 m ∑ i = 1 m ( Y ( i ) − X ( i ) W T ) 2 ) \min \left( J\left( W \right) \right) =\min \left( \frac{1}{2m}\sum_{i=1}^m{\left( Y^{\left( i \right)}-X^{\left( i \right)}W^T \right) ^2} \right)min(J(W))=min(2m1i=1m(Y(i)X(i)WT)2)

上式中,
损失函数同样可以表达为:
J ( W ) = 1 2 m ( X W T − Y ) T ( X W T − Y ) = 1 2 m ∣ ∣ X W T − Y ∣ ∣ 2 J\left( W \right) =\frac{1}{2m}\left( XW^T-Y \right) ^T\left( XW^T-Y \right) =\frac{1}{2m}||XW^T-Y||^2J(W)=2m1(XWTY)T(XWTY)=2m1XWTY2
正好是求J ( W ) J\left( W \right)J(W)二范数的最小值。

损失函数求导

对于损失函数的最小值的求法,在这通过求其极值点即可(损失函数最高次是二次)。
以下为详细描述求导过程:
∂ J ( W ) ∂ w j = 1 2 m ∑ i = 1 m ∂ ∂ w j ( ( Y ( i ) − X ( i ) W T ) 2 ) = 1 m ∑ i = 1 m X j ( i ) ( Y ( i ) − X ( i ) W T ) \frac{\partial J\left( W \right)}{\partial w_j}=\frac{1}{2m}\sum_{i=1}^m{\frac{\partial}{\partial w_j}\left( \left( Y^{\left( i \right)}-X^{\left( i \right)}W^T \right) ^2 \right)}=\frac{1}{m}\sum_{i=1}^m{X_{j}^{\left( i \right)}\left( Y^{\left( i \right)}-X^{\left( i \right)}W^T \right)}wjJ(W)=2m1i=1mwj((Y(i)X(i)WT)2)=m1i=1mXj(i)(Y(i)X(i)WT)
而:
∂ J ( W ) ∂ W = [ ∂ J ( W ) ∂ w 0 , ∂ J ( W ) ∂ w 1 , . . . , ∂ J ( W ) ∂ w n ] T \frac{\partial J\left( W \right)}{\partial W}=\left[ \frac{\partial J\left( W \right)}{\partial w_0},\frac{\partial J\left( W \right)}{\partial w_1},...,\frac{\partial J\left( W \right)}{\partial w_n} \right] ^TWJ(W)=[w0J(W),w1J(W),...,wnJ(W)]T
因此得:
∂ J ( W ) ∂ W = 1 m X T ( X W T − Y ) \frac{\partial J\left( W \right)}{\partial W}=\frac{1}{m}X^T\left( XW^T-Y \right)WJ(W)=m1XT(XWTY)

使∂ J ( W ) ∂ W = 0 \frac{\partial J\left( W \right)}{\partial W}=0WJ(W)=0,得到最优参数W ∗ W^*W
W ∗ = ( X T X ) − 1 X T Y W^*=\left( X^TX \right) ^{-1}X^TYW=(XTX)1XTY
从而得到拟合线h W ∗ ( X ) h_{W^*}\left( X \right)hW(X)

岭回归(Ridge Regression)

对于最小二乘法,使用的基本条件是要求各个特征间要相互独立,保证X T X X^TXXTX可逆;并且,当特征间有较大的多重共线性,也会使得X T X X^TXXTX计算结果不准确。

在此,Hoerl 提出了岭回归理论,给X T X X^TXXTX对角线元素都添加一个超参数λ > 0 \lambda>0λ>0(常数),从而使得矩阵X T X X^TXXTX满秩,由此得到最优结果:
W ∗ = ( X T X + λ I ) − 1 X T Y W^*=\left( X^TX+\lambda I \right) ^{-1}X^TYW=(XTX+λI)1XTY
该方法主要用于解决X T X X^TXXTX矩阵为病态情况。

梯度下降法与最小二乘法关系

  • 在之前关于梯度下降的文章(https://blog.csdn.net/qq_37279306/article/details/105630512)中,通过不断迭代W WW,从而达到满足精度的权值W WW,实质上是让J ( W ) J\left( W \right)J(W)趋于0。
  • 对于最小二乘法,这个过程相当于加上强制的条件使得J ( W ) = 0 J\left( W \right)=0J(W)=0,从而得到最完美的结果 (损失函数最小值理论解),然而,当样本的数量比较大的时候,矩阵的求解难度会非常大,甚至有点时候无法求解。一般对于较大的矩阵,通过主成分分析可以降低特征的维度,之后再用最小二乘法会在一定程度上降低计算难度。

因此,在求这类模型及损失函数时,梯度下降法更为常用。

参考文献

https://baike.sogou.com/v200960.htm
fromTitle=%E6%9C%80%E5%B0%8F%E4%BA%8C%E4%B9%98%E6%B3%95

https://baike.sogou.com/v305550.htm?fromTitle=%E5%B2%AD%E5%9B%9E%E5%BD%92


版权声明:本文为qq_37279306原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。