在线性模型的基础上通过引入层级结构或高维映射可得到许多功能更为强大的非线性模型(nonlinear model)。
线性回归试图学得:
\qquad\qquad\qquad\qquad\qquad f ( x i ) = w x i + b f(x_{i})=wx_{i}+b f(xi)=wxi+b,使得 f ( x i ) ≃ y i f(x_{i}) \simeq y_{i} f(xi)≃yi
对于 f ( x i ) ≃ y i f(x_{i}) \simeq y_{i} f(xi)≃yi,我们可以通过让均方误差最小化来达到(即找到一条直线,使得所有样本到该直线的欧几里得距离之和最小)。
( w ∗ , b ∗ ) = a r g m i n ( w , b ) ∑ i = 1 m ( f ( x i ) − y i ) 2 \left( w^{\ast },b^{\ast }\right) =arg\space min_{\left( w,b\right) }\sum ^{m}_{i=1}\left( f\left( x_{i}\right) -y_{i}\right) ^{2} (w∗,b∗)=arg min(w,b)i=1∑m(f(xi)−yi)2 (3.4) = a r g m i n ( w , b ) ∑ i = 1 m ( y i − w x i − b ) 2 \space\space\qquad\qquad =arg\space min_{\left( w,b\right) }\sum ^{m}_{i=1}\left( y_{i}-wx_{i}-b\right) ^{2} \tag{3.4} =arg min(w,b)i=1∑m(yi−wxi−b)2(3.4)
求解 E ( w , b ) = ∑ i = 1 m ( y i − w x i − b ) 2 E\left( w,b\right) = \sum ^{m}_{i=1}\left( y_{i}-wx_{i}-b\right) ^{2} E(w,b)=∑i=1m(yi−wxi−b)2最小化的过程,称为线性回归模型的最小二乘“参数估计”(parameter estimation)。
E ( w , b ) E\left( w,b\right) E(w,b)是关于 w w w和 b b b的凸函数(U型曲线如f(x)=x^2通常为凸函数,可求其最优解)
对 E ( w , b ) E\left( w,b\right) E(w,b)关于 w w w, b b b求一阶偏导,再令导数为0则可得 w w w, b b b最优解的闭式解:
(3.5) ∂ E ( w , b ) ∂ w = 2 ( w ∑ i = 1 m x i 2 − ∑ i = 1 m ( y i − b ) x i ) \dfrac {\partial E\left( w,b\right) }{\partial w}=2\left( w\sum ^{m}_{i=1}x^{2}_{i}-\sum ^{m}_{i=1}\left( y_{i}-b\right) x_{i}\right)\tag{3.5} ∂w∂E(w,b)=2(wi=1∑mxi2−i=1∑m(yi−b)xi)(3.5)
(3.6) ∂ E ( w , b ) ∂ b = 2 ( m b − ∑ i = 1 m ( y i − w x i ) ) \dfrac {\partial E\left( w,b\right) }{\partial b}=2\left(mb-\sum ^{m}_{i=1}\left( y_{i}-wx_{i}\right)\right)\tag{3.6} ∂b∂E(w,b)=2(mb−i=1∑m(yi−wxi))(3.6)
(3.5),(3.6)公式推导:
令(3.5),(3.6)为零,得 w w w, b b b最优解的闭式解:
(3.7) w = ∑ i = 1 m y i ( x i − x ‾ ) ∑ i = 1 m x i 2 − 1 m ( ∑ i = 1 m x i ) 2 w=\dfrac {\sum ^{m}_{i=1}y_{i}\left( x_{i}-\overline {x}\right) }{\sum ^{m}_{i=1}x^{2}_{i}-\dfrac {1}{m}( \sum ^{m}_{i=1}x_{i})^{2}}\tag{3.7} w=∑i=1mxi2−m1(∑i=1mxi)2∑i=1myi(xi−x)(3.7)
(3.8) b = 1 m ∑ i = 1 m ( y i − w x i ) b=\dfrac {1}{m}\sum ^{m}_{i=1}\left( y_{i}-wx_{i}\right)\tag{3.8} b=m1i=1∑m(yi−wxi)(3.8)
其中 x ‾ = 1 m ∑ i = 1 m x i \overline {x}=\dfrac {1}{m}\sum ^{m}_{i=1}x_{i} x=m1∑i=1mxi为 x x x的均值
公式(3.7),(3.8)的推导:
更一般的情况,样本由多个属性描述。给定数据集 D = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . ( x n , y n ) } D=\{(x_{1},y_{1}),(x_{2},y_{2}),...(x_{n},y_{n})\} D={(x1,y1),(x2,y2),...(xn,yn)},其中 x i = ( x i 1 ; x i 2 ; . . . ; x i d ) , y i ∈ R x_{i}=(x_{i1};x_{i2};...;x_{id}),y_{i} \in\R xi=(xi1;xi2;...;xid),yi∈R
此时线性回归模型试图学得:
\qquad\qquad\qquad\qquad\qquad f ( x i ) = w T x i + b f(x_{i})=w^{T}x_{i}+b f(xi)=wTxi+b,使得 f ( x i ) ≃ y i f(x_{i}) \simeq y_{i} f(xi)≃yi
此即为多元线性回归(multivariate linear regression)
类似的,我们可以利用最小二乘法来对 w w w和 b b b进行估计。
我们把w和b写成向量形式 w ‾ = ( w , b ) \overline {w}=(w,b) w=(w,b),把数据集 D D D表示成m(d+1)的矩阵 X X X。每一行对应一个示例,该行前d个元素表示d个属性值,最后一个为1(常数项b系数为1):
把标记写成向量形式: y = ( y 1 ; y 2 ; . . . ; y 3 ) y=(y_{1};y_{2};...;y_{3}) y=(y1;y2;...;y3),则与公式(3.4)类似的,我们有:
令该导数为零可得 w ^ \widehat{w} w 最优解的闭式解,但涉及矩阵逆计算,比之前的单变量情形更复杂一些。需进行一下讨论:
令式(3.10)为零可得
(3.11) w ^ ∗ = ( X T X ) − 1 X T y \widehat w^{\ast }=\left( X^{T}X\right) ^{-1}X^{T}y\tag{3.11} w ∗=(XTX)−1XTy(3.11)
公式(3.11)的推导:
令 x ^ i = ( x i ; 1 ) \widehat x_{i }=(x_{i};1) x i=(xi;1),则最终学得的多元线性回归模型为
(3.12) f ( x ^ i ) = x ^ i T ( X T X ) − 1 X T y f( \widehat x_{i})= \widehat x_{i}^{T}\left( X^{T}X\right) ^{-1}X^{T}y\tag{3.12} f(x i)=x iT(XTX)−1XTy(3.12)
公式(3.12)的推导:
现实任务中 X T X X^{T}X XTX往往不是满秩矩阵。我们会遇到大量变量,其数目超过样例数时, X X X的列数多于行数, X T X X^{T}X XTX显然不满秩(线性方程组自变量过多,则会有多组解)。对于解出的多个 w ^ \widehat w w ,它们都能使均方误差最小化,选择哪一个作为输出,将由学习算法的归纳偏好决定,常见做法是引入正则化(regularization)项。
为了便于讨论,我们把线性回归模型简写为
y = w T x + b y =w^{T}x+b y=wTx+b
若我们认为示例所对应的输出标记是在指数尺度上变化,那就可将输出标记的对数作为线性模型逼近的目标,即
ln y = w T x + b \ln y=w^{T}x+b lny=wTx+b
此即为对数线性回归(log-linear regression),它形式上仍是线性回归,但实质上是求取输入空间到输出空间的非线性函数映射
下图中对数函数起到了将线性回归模型的预测值与真实标记(指数函数的 y y y)联系起来的作用
因此,更一般地,我们可这样推广到一个广义线性模型(generalized linear model)
考虑单调可微函数 g ( ⋅ ) g(\cdot) g(⋅)(连续且充分光滑),令
(3.15) y = g − 1 ( w T x + b ) y=g^{-1}(w^{T}x+b)\tag{3.15} y=g−1(wTx+b)(3.15)
函数 g ( ⋅ ) g(\cdot) g(⋅)称为“联系函数”(link function)
显然,对数线性回归就是广义线性模型在 g ( ⋅ ) = ln ( ⋅ ) g(\cdot)=\ln(\cdot) g(⋅)=ln(⋅)时的特例
那么,广义线性模型是否也可像式(3.4)(3.9)类似进行均方差误差最小化呢?
当然可以。通常,广义线性模型的参数估计通过加权最小二乘法或极大似然法进行。
线性模型怎么做分类任务?
答案就在式(3.15)的广义模型中:只需找个单调可微函数将分类任务的真实标记 y y y与线性回归模型的预测值 z z z联系起来。
二分类任务的真实标记 y ∈ { 0 , 1 } y\in\{0,1\} y∈{0,1},而线性回归模型产生的预测值 z = w T x + b z=w^{T}x+b z=wTx+b为实值,则可将 z z z对应到{0,1}里。最理想的是单位阶跃函数(unit-step function):
即线性模型的预测值 z z z大于零就判定为正例,小于零就判定为反例,为临界值0时则可任意判定
为不连续的单位阶跃函数找到了对数几率函数作为代替函数(可以看到対率函数曲线的特性近似于阶跃函数,它是一种“Sigmoid函数”,它将 z z z值转化为一个接近0或1的 y y y值,其输出值在 z = 0 z=0 z=0附近变化很陡)
对数几率函数:
y = 1 1 + e − z y=\dfrac {1}{1+e^{-z}} y=1+e−z1
将对数几率函数作为 g − ( ⋅ ) g^{-}(\cdot) g−(⋅)代入式(3.15),得到:
(3.18) y = 1 1 + e − ( w T x + b ) y=\dfrac {1}{1+e^{-\left( w^{T}x+b\right) }} \tag{3.18} y=1+e−(wTx+b)1(3.18)
转化为线性形式则为(类似于式(3.14)):
(3.19) ln y 1 + y = w T x + b \ln\dfrac {y}{1+y}=w^{T}x+b\tag{3.19} ln1+yy=wTx+b(3.19)
若将 y y y看做样本 x x x作为正例的可能性,则 1 − y 1-y 1−y是其反例的可能性,两者的比值 y 1 − y \dfrac{y}{1-y} 1−yy称为 “几率”, 反映了 x x x作为正例的 相对可能性,
ln y 1 − y \ln\dfrac {y}{1-y} ln1−yy则为对数几率(log odds,亦称logit)
由式(3.19)可见,式(3.18)实际上是在用线性回归模型的预测结果去逼近真实标记的对数几率
首先,我们将式(3.18)中的 y y y视为类后验概率估计 p ( y = 1 ∣ x ) p(y=1|x) p(y=1∣x),则 1 − y 1-y 1−y即为 p ( y = 0 ∣ x ) p(y=0|x) p(y=0∣x)
则式(3.19)可重写为
(3.22) ln p ( y = 1 ∣ x ) p ( y = 0 ∣ x ) = w T x + b \ln \dfrac {p (y=1|x) }{p( y= 0|x)} =w^{T}x+b\tag{3.22} lnp(y=0∣x)p(y=1∣x)=wTx+b(3.22)
注: p ( y = 1 ∣ x ) + p ( y = 0 ∣ x ) = 1 p (y=1|x)+p( y= 0|x)=1 p(y=1∣x)+p(y=0∣x)=1
则有:
这里我们用极大似然法来估计 w w w和 b b b
给定数据集 { ( x i , y i ) } i = 1 m \left\{ \left( x_{i},y_{i}\right) \right\} ^{m}_{i=1} {(xi,yi)}i=1m,对率回归模型最大化“对数似然”(log-likelihood)
(3.25) f ( w , b ) = ∑ i = 1 m ln p ( y i ∣ x i ; w , b ) f\left( w,b\right) =\sum ^{m}_{i=1}\ln p\left(y_{i}\right| x_{i};w,b)\tag{3.25} f(w,b)=i=1∑mlnp(yi∣xi;w,b)(3.25)
注:这里的似然项的参数 θ c = ( x i ; w , b ) 吗 ? 是 ( w , b ) 还 是 ( w ; b ) ? \theta _{c}=(x_{i};w,b)吗?是(w,b)还是(w;b)? θc=(xi;w,b)吗?是(w,b)还是(w;b)?
式(3.26)的推导:
由式(3.23)(3.24)(3.25)(3.26)可知,最大化式(3.25)等价于最小化
(3.27) l ( β ) = ∑ i = 1 m ( − y i β T x ^ i + ln ( 1 + e β T x ^ i ) ) l\left( \beta \right) =\sum ^{m}_{i=1}\left( -y_{i}\beta ^{T}\widehat x_{i}+\ln \left( 1+e^{\beta ^{T }\widehat x_{i}}\right) \right)\tag{3.27} l(β)=i=1∑m(−yiβTx i+ln(1+eβTx i))(3.27)
这是关于 β \beta β的高阶可导连续函数,根据凸优化定理,经典的数值优化算法如梯度下降法,牛顿法都可求其最优解,于是得到
(3.28) β ∗ = a r g m i n l ( β ) \beta\ast=arg\space min\space l(\beta)\tag{3.28} β∗=arg min l(β)(3.28)
注:<牛顿法补充链接>
笔记已做好,待补充