(《机器学习》完整版系列)第3章 线性模型——3.1 线性回归(线性模型对应于仿射函数)

假定数据工程师希望模型实例的“样子”很简单:基于“多元一次式”(即仿射函数), 在这个限定下,我们看看算法工程提供了什么算法。
注:【西瓜书式(3.1)(3.2)】是仿射函数,当 b = 0 b=0 b=0时为线性函数。 线性模型对应的数学表达式是仿射函数,而不是字面上的线性函数,后续知识(式(6))可知,仿射函数很容易转化为线性函数。 故不管是仿射的还是线性的,统称为线性模型,几乎没有人说仿射模型。
“最小二乘法”用于推导线性回归,也常作为均方误差的几何解释。

线性回归

1.当属性的个数 d = 1 d=1 d=1时,【西瓜书式(3.1)】变为
l : f ( x ) = w x + b \begin{align} l: f(x)=wx+b \tag{1} \end{align} l:f(x)=wx+b(1)

将数据集 { x i } i = 1 m \{x_i\}_{i=1}^m {xi}i=1m代入式(1)则得到【西瓜书式(3.3)】。
注:【西瓜书式(3.1)】中的 x i x_i xi表示示例 x \boldsymbol{x} x的第 i i i个属性,而【西瓜书式(3.3)】中的 x i x_i xi表示数据集中第 i i i个样本,这时,(一维)向量 x \boldsymbol{x} x变为标量 x x x

将【西瓜书式(3.3)】的第一式视为方程组: m m m个方程,但只有两个未知数 ( w , b ) (w,b) (w,b),通常是无解,我们可以使用最小二乘法求一个“尽可能满足各方程”(即指不能达成等号的情况下,尽可能地接近等号。)的解。

“最小二乘法”的基本思路:找一条直线,使各样本点到该直线的欧氏距离之和最小。

简化:找一条直线,使各样本点到该直线的“纵标”欧氏距离 ∣ y i ^ − y i ∣ |\hat{y_i}-y_i| yi^yi之和最小。 如图1所示。

再方便化:找一条直线,使各样本点到该直线的“纵标”欧氏距离平方 [ y i ^ − y i ] 2 [\hat{y_i}-y_i]^2 [yi^yi]2之和最小(处理“平方和”比处理“绝对值和”方便)。
图1 “纵标”欧氏距离

图1 “纵标”欧氏距离

由“最小二乘法”可以得到我们需要最小化的目标函数
E ( w , b ) = ∑ i = 1 m ( y i − w x i − b ) 2 \begin{align} E_{(w,b)}=\sum_{i=1}^m(y_i-wx_i-b)^2 \tag{2} \end{align} E(w,b)=i=1m(yiwxib)2(2)

目标为:求 ( w ∗ , b ∗ ) (w^*,b^*) (w,b)使 E ( w ∗ , b ∗ ) = min ⁡ E ( w , b ) E_{(w^*,b^*)}=\min E_{(w,b)} E(w,b)=minE(w,b),这句话用数学语言,即为
( w ∗ , b ∗ ) = arg ⁡ min ⁡ ( w , b ) E ( w , b ) \begin{align} (w^*,b^*)=\mathop{\arg\min}\limits_{\substack{(w,b)}}E_{(w,b)} \tag{3} \end{align} (w,b)=(w,b)argminE(w,b)(3)
注:引入数学符号arg(argument论据,数学中指自变量),这里是指:已知函数,求满足条件(如,函数值最小)的自变量的值。

由均方误差定义【西瓜书式(2.2)】也可以得到式(2),故“最小二乘法”常作为均方误差的几何解释。

将式(2)和式(3)两式合在一起写,即为【西瓜书式(3.4)】。

对目标函数(2)使用拉格朗日求极值的方法,得到式(3)的解【西瓜书式(3.7)(3.8)】

2.当属性的个数 d ≠ 1 d \neq 1 d=1时,【西瓜书式(3.1)】变为
y i ^ = f ( x i ) = w T x i + b = [ x i T w ] T + b = x i T w + 1 ⋅ b (标量的转置不变) = ( x i T 1 ) ( w b ) \begin{align} \hat{y_i} & =f(\boldsymbol{x}_i)\notag \\ & ={\boldsymbol{w}}^\mathrm{T}{\boldsymbol{x}_i}+b\notag \\ & =[{\boldsymbol{x}_i}^\mathrm{T}{\boldsymbol{w}}]^\mathrm{T}+b\notag \\ & ={\boldsymbol{x}_i}^\mathrm{T}{\boldsymbol{w}}+1\cdot b\qquad\text{(标量的转置不变)}\notag \\ & =\left(\begin{array}{cc} {\boldsymbol{x}_i}^\mathrm{T} & 1 \\ \end{array}\right) \left(\begin{array}{c} \boldsymbol{w} \\ b \\ \end{array}\right) \tag{4} \end{align} yi^=f(xi)=wTxi+b=[xiTw]T+b=xiTw+1b(标量的转置不变)=(xiT1)(wb)(4)

对数据集 D D D中的所有样本都使用式(4),即有

{ y 1 ^ = ( x 1 T 1 ) ( w b ) y 2 ^ = ( x 2 T 1 ) ( w b ) ⋯ ⋯ y m ^ = ( x m T 1 ) ( w b ) \begin{align*} \begin{cases} \hat{y_1}=\left(\begin{array}{cc} \boldsymbol{x}_1^\mathrm{T} & 1 \\ \end{array}\right) \left(\begin{array}{c} \boldsymbol{w} \\ b \\ \end{array}\right) \\ \hat{y_2}=\left(\begin{array}{cc} \boldsymbol{x}_2^\mathrm{T} & 1 \\ \end{array}\right) \left(\begin{array}{c} \boldsymbol{w} \\ b \\ \end{array}\right) \\ \cdots \qquad \cdots \\ \hat{y_m}=\left(\begin{array}{cc} \boldsymbol{x}_m^\mathrm{T} & 1 \\ \end{array}\right) \left(\begin{array}{c} \boldsymbol{w} \\ b \\ \end{array}\right) \\ \end{cases} \end{align*} y1^=(x1T1)(wb)y2^=(x2T1)(wb)ym^=(xmT1)(wb)
上式综合到一个式子中,则有

( y ^ 1 y ^ 2 ⋮ y ^ m ) = ( x 1 T 1 x 2 T 1 ⋮ x m T 1 ) ( w b ) \begin{align} \left( \begin{array}{c} \hat{y}_1 \\ \hat{y}_2 \\ \vdots \\ \hat{y}_m \\ \end{array} \right)= \left( \begin{array}{cc} \boldsymbol{x}_1^\mathrm{T} & 1 \\ \boldsymbol{x}_2^\mathrm{T} & 1 \\ \vdots \\ \boldsymbol{x}_m^\mathrm{T} & 1 \\ \end{array} \right) \left( \begin{array}{c} \boldsymbol{w} \\ b \\ \end{array} \right) \tag{5} \end{align} y^1y^2y^m = x1Tx2TxmT111 (wb)(5)

对式(5)引入缩写(向量与矩阵的表达),即
y ^ = X w ^ \begin{align} \hat{\boldsymbol{y}}=\mathbf{X}\hat{\boldsymbol{w}} \tag{6} \end{align} y^=Xw^(6)
注:式(5)与式(6)即为线性函数,即通过这种变换就将仿射函数转化成了线性函数。

由此,总(均方)误差可以表示成点 y = ( y 1 , y 2 , ⋯   , y m ) \boldsymbol{y}=(y_1,y_2,\cdots,y_m) y=(y1,y2,,ym)与点 y ^ = ( y ^ 1 , y ^ 2 , ⋯   , y ^ m ) \hat{\boldsymbol{y}}=(\hat{y}_1,\hat{y}_2,\cdots,\hat{y}_m) y^=(y^1,y^2,,y^m)之间的欧氏距离(平方),即
( y − y ^ ) T ( y − y ^ ) \begin{align} (\boldsymbol{y}-\hat{\boldsymbol{y}})^\mathrm{T}(\boldsymbol{y}-\hat{\boldsymbol{y}}) \tag{7} \end{align} (yy^)T(yy^)(7)

( y − X w ^ ) T ( y − X w ^ ) \begin{align} (\boldsymbol{y}-\mathbf{X}\hat{\boldsymbol{w}})^\mathrm{T}(\boldsymbol{y}-\mathbf{X}\hat{\boldsymbol{w}}) \tag{8} \end{align} (yXw^)T(yXw^)(8)
式(7)或式(8)记为 E w ^ E_{\hat{\boldsymbol{w}}} Ew^

∂ E w ^ ∂ w ^ = ∂ ( y − X w ^ ) T ( y − X w ^ ) ∂ w ^ = 2 x T ( X w ^ − y ) (此处应用了【西瓜书附录式(A.32)】) \begin{align} \frac{\partial E_{\hat{\boldsymbol{w}}}}{\partial \hat{\boldsymbol{w}}} & =\frac{\partial (\boldsymbol{y}-\mathbf{X}\hat{\boldsymbol{w}})^\mathrm{T}(\boldsymbol{y}-\mathbf{X}\hat{\boldsymbol{w}})}{\partial \hat{\boldsymbol{w}}}\notag \\ & =2 {\boldsymbol{x}}^{\mathrm{T}}(\mathbf{X}\hat{\boldsymbol{w}}-\boldsymbol{y})\tag{9} \\ & \qquad \text{(此处应用了【西瓜书附录式(A.32)】)}\notag \end{align} w^Ew^=w^(yXw^)T(yXw^)=2xT(Xw^y)(此处应用了【西瓜书附录式(A.32)】)(9)
即【西瓜书式(3.10)】,后续推理显然,由此得到线性回归,进而广义线性模型。

本文为原创,您可以:

  • 点赞(支持博主)
  • 收藏(待以后看)
  • 转发(他考研或学习,正需要)
  • 评论(或讨论)
  • 引用(支持原创)
  • 不侵权

上一篇:2.9 在机器学习开发实践中如何改善学习器的性能?
下一篇:3.2 对数几率回归(俗称:逻辑回归,但它既不“逻辑”也不是“回归”)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值