简单线性回归 解析解 最小二乘法

  这里所说的简单线性是指一元线性回归,即特征个数为1,样本个数为n个。符号表示中 y ^ i \hat y_i y^i 表示的是对第 i 个样本的预测值。所以损失函数为:

     L ( w , b ) = ∑ i = 1 n 1 2 ( y i − y ^ i ) 2 = ∑ i = 1 n 1 2 ( ( w T x i + b ) − y i ) 2 = 1 2 ( x w − y ) T ( x w − y ) \large L(\pmb w, b) = \sum\limits_{i=1}^n \frac 12 (y_i - \hat y_i)^2 = \sum\limits_{i=1}^n \frac 12((\pmb w^T \pmb x_i + b) - y_i)^2 = \frac 12 (\pmb x\pmb w - \pmb y)^T(\pmb x \pmb w - \pmb y) L(ww,b)=i=1n21(yiy^i)2=i=1n21((wwTxxi+b)yi)2=21(xxwwyy)T(xxwwyy)

  在训练模型时,我们希望寻找一组参数 ( w ∗ , b ∗ ) (\pmb w^*, b^*) (ww,b), 这组参数能最小化在所有训练样本上的总损失。如下式:

     w ∗ , b ∗ = a r g m i n w , b L ( w , b ) \pmb w^*, b^* = argmin_{\pmb w, b} L(\pmb w, b) ww,b=argminww,bL(ww,b)

  由于此函数 L ( w , b ) L(\pmb w, b) L(ww,b)是凸函数,所以极值点是最小值点。利用上述公式开始推导:

化简

   L ( w , b ) = 1 2 ( x w − y ) T ( x w − y ) \large L(\pmb w, b) = \large\frac 12 (\pmb x \pmb w - \pmb y)^T(\pmb x \pmb w - \pmb y) L(ww,b)=21(xxwwyy)T(xxwwyy)
     = 1 2 ( ( x w ) T − y T ) ( x w − y ) =\large \frac 12((\pmb x \pmb w)^T - \pmb y^T)(\pmb x \pmb w - \pmb y) =21((xxww)TyyT)(xxwwyy)
     = 1 2 ( w T x T − y T ) ( x w − y ) = \large \frac 12 (\pmb w^T \pmb x^T - \pmb y^T)(\pmb x \pmb w - \pmb y) =21(wwTxxTyyT)(xxwwyy)
     = 1 2 ( w T x T x w − w T x T y − y T x w + y T y ) =\large \frac 12 (\pmb w^T \pmb x^T \pmb x\pmb w - \pmb w^T \pmb x^T \pmb y -\pmb y^T \pmb x \pmb w + \pmb y^T\pmb y) =21(wwTxxTxxwwwwTxxTyyyyTxxww+yyTyy)
注:

∂ w T A w ∂ w = 2 A w \large \frac {\partial \pmb w^T\pmb A \pmb w} {\partial\pmb w} = \pmb {2Aw} wwwwTAAww=2Aw2Aw

∂ w T A ∂ w = A \large \frac {\partial \pmb{w^TA}} {\partial \pmb w} = \pmb A wwwTAwTA=AA

∂ A w ∂ w = A T \large \frac {\partial \pmb {Aw}} {\partial \pmb w} = \pmb A^T wwAwAw=AAT

w \pmb w ww进行求导:

∂ L ∂ w = [ 1 2 ( w T x T x w − w T x T y − y T x w + y T y ) ] \large \frac {\partial L} {\partial \pmb w} = [\frac {\large 1} {\large 2} (\pmb w^T \pmb x^T \pmb x\pmb w - \pmb w^T \pmb x^T \pmb y -\pmb y^T \pmb x \pmb w + \pmb y^T\pmb y)] wwL=[21(wwTxxTxxwwwwTxxTyyyyTxxww+yyTyy)]

= 1 2 [ ( w T x T x w ) ′ − ( w T x T y ) ′ − ( y T x w ) ′ + ( y T y ) ′ ] \large = \frac {\large 1} {\large 2}[(\pmb w^T \pmb x^T \pmb x\pmb w)' - (\pmb w^T \pmb x^T \pmb y)' - (\pmb y^T \pmb x \pmb w)' + (\pmb y^T\pmb y)'] =21[(wwTxxTxxww)(wwTxxTyy)(yyTxxww)+(yyTyy)]

= 1 2 [ 2 x T x w − x T y − ( y T x ) T ] \large = \frac {\large 1} {\large 2} [2\pmb x^T \pmb x \pmb w - \pmb x^T\pmb y - (\pmb y^T \pmb x)^T] =21[2xxTxxwwxxTyy(yyTxx)T]

= 1 2 [ 2 x T x w − 2 x T y ] \large = \frac {\large 1} {\large 2} [2\pmb x^T \pmb x \pmb w - 2\pmb x^T \pmb y] =21[2xxTxxww2xxTyy]

= x T x w − x T y \large = \pmb {x^Txw} - \pmb {x^Ty} =xTxwxTxwxTyxTy

假设我们找到了最优解,即梯度为0。将损失关于 w \pmb w ww的导数设为0,得到解析解:

w ∗ = ( x T x ) − 1 x T y \large \pmb {w^*} = (\pmb x^T \pmb x)^{-1}\pmb x^T\pmb y ww=(xxTxx)1xxTyy

或者当样本 i i i 的预测值为 y ^ i \large \hat y_i y^i,其相应的真实标签为 y i \large y_i yi时, 平方误差可以定义为以下公式:

     l i ( w , b ) = 1 2 ( y ^ i − y i ) 2 \large l_i(\pmb w, b) = \frac 12 (\hat y_i - y_i)^2 li(ww,b)=21(y^iyi)2

由于平方误差函数中的二次方项, 估计值 y ^ i \large \hat y_i y^i 和观测值 y i \large y_i yi 之间较大的差异将导致更大的损失。 为了度量模型在整个数据集上的质量,我们需计算在训练集个样本上的损失均值(也等价于求和)

     L ( w , b ) = 1 n ∑ i = 1 n l i ( w , b ) = 1 n ∑ i = 1 n 1 2 ( w T x i + b − y i ) 2 \large L(\pmb w, b) = \frac 1n \sum\limits_{i=1}^nl_i(\pmb w, b) = \frac 1n \sum\limits_{i=1}^n \frac12(\pmb w^T\pmb x_i + b - y_i)^2 L(ww,b)=n1i=1nli(ww,b)=n1i=1n21(wwTxxi+byi)2

为了简化问题,可以忽略偏置(我们可以通过向添加所有值为1的一列来做到这一点)。也就是

X ← [ x , 1 ] \pmb {X \leftarrow [x, 1]} X[x,1]X[x,1]

w ← [ w b ] \pmb {w \leftarrow \begin{bmatrix} w \\ b \end{bmatrix}} w[wb]w[wb]

至此我们的预测问题(推导出使用平方误差的线性回归优化问题的解析解)是最小化

     l ( X , y , w ) = 1 2 n ∣ ∣ y − X w ∣ ∣ 2 \large l(\pmb {X, y, w}) = \frac {\large 1} {\large 2n} || \pmb {y - Xw}||^2 l(X,y,wX,y,w)=2n1∣∣yXwyXw2

注:

∂ ∣ ∣ x 2 ∣ ∣ ∂ x = 2 x T \frac {\large \partial ||x^2||} {\large \partial x} = \large {2x^T} x∣∣x2∣∣=2xT

∂ A x ∂ x = A \frac {\large \partial Ax} {\large \partial x} = \large A xAx=A

计算损失函数对 w \pmb w ww的梯度

∂ ∂ w l ( X , y , w ) = 1 n ( y − X w ) T X \frac {\large \partial} {\large \partial \pmb w} \large \pmb {l(X, y, w)} = \frac {\large 1} {\large n}(\pmb {y - Xw})^TX wwl(X,y,w)l(X,y,w)=n1(yXwyXw)TX

由于此函数 l ( X , y , w ) \large l(\pmb {X, y, w}) l(X,y,wX,y,w)是凸函数,所以极值点是最小值点。也就是在损失平面上只有一个临界点,这个临界点对应于整个区域的损失极小点。

将损失函数关于 w \pmb w ww的导数设为0,求解矩阵方程来找到解析解

∂ ∂ w l ( X , y , w ) = 1 n ( y − X w ) T X = 0 \frac {\large \partial} {\large \partial \pmb w} \large \pmb {l(X, y, w)} = \frac {\large 1} {\large n}(\pmb {y - Xw})^TX = 0 wwl(X,y,w)l(X,y,w)=n1(yXwyXw)TX=0

得到最优解

w ∗ = ( X T X ) − 1 X T y \large \pmb {w^*} = \pmb{(X^TX)^{-1}X^Ty} ww=(XTX)1XTy(XTX)1XTy

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值