机器学习-线性模型

线性模型

线性模型是指预测函数为线性函数的模型,即
f ( x ) = ω 1 x 1 + ω 2 x 2 + … ω d x d + b , f(\bm{x}) = \omega_{1}x_{1} + \omega_{2}x_{2} + \ldots \omega_{d}x_{d} + b, f(x)=ω1x1+ω2x2+ωdxd+b,
用向量形式则可写为
f ( x ) = ω T x + b , f(\bm{x}) = \bm{\omega}^{\text{T}} \bm{x} + b, f(x)=ωTx+b,
其中, ω = ( ω 1 ; ω 2 ; … ; ω d ) \bm{\omega} = \left(\omega_{1}; \omega_{2}; \ldots; \omega_{d} \right) ω=(ω1;ω2;;ωd)为权重向量, x = ( x 1 ; x 2 ; … ; x d ) \bm{x} = \left(x_{1}; x_{2}; \ldots; x_{d}\right) x=(x1;x2;;xd)为特征向量。

线性回归

首先考虑一种简单的情形:输入属性的数目只有一个,也就是单变量线性回归。
单变量线性回归试图学得函数
f ( x i ) = ω x i + b f(x_{i}) = \omega x_{i} + b f(xi)=ωxi+b
并且使得预测值和真实值的误差尽可能小。

接下来我们通过让均方误差最小化来确定模型中的参数,即
( ω ∗ , b ∗ ) = arg ⁡ min ⁡ ( ω , b ) ∑ i = 1 m ( f ( x i ) − y i ) 2 = arg ⁡ min ⁡ ( ω , b ) ∑ i = 1 m ( ω x i + b − y i ) 2 \begin{aligned} \left( \omega^{*}, b^{*}\right) &= \mathop{\arg \min} \limits_{\left( \omega, b\right)} \sum_{i=1}^{m} \left(f(x_{i}) - y_{i}\right)^{2} \\ & = \mathop{\arg \min} \limits_{\left( \omega, b\right)} \sum_{i=1}^{m} \left(\omega x_{i} + b - y_{i}\right)^{2} \end{aligned} (ω,b)=(ω,b)argmini=1m(f(xi)yi)2=(ω,b)argmini=1m(ωxi+byi)2
由最小二乘法,可以求得 ω , b \omega, b ω,b的闭式解。

同样的,对于多元线性回归
f ( x i ) = ω T x i + b , s.t. f ( x i ) ≃ y i , f(\bm{x}_{i}) = \bm{\omega}^{\text{T}} x_{i} + b, \quad \text{s.t.} f(\bm{x}_{i}) \simeq y_{i}, f(xi)=ωTxi+bs.t.f(xi)yi,
我们也利用最小二乘法来估计参数 ω , b \bm{\omega}, b ω,b.

为此,我们先对权重向量和特征向量增广,即
ω ^ = ( ω , b ) , X = ( x , 1 ) , \begin{aligned} \hat{\bm{\omega}} &= \left(\bm{\omega}, b\right), \\ \bm{X} &= \left(\bm{x}, 1\right), \end{aligned} ω^X=(ω,b),=(x,1),

则最优解必定满足
ω ^ ∗ = arg ⁡ min ⁡ ω ^ ( y − X ω ^ ) T ( y − X ω ^ ) . \hat{\bm{\omega}}^{*} = \mathop{\arg \min} \limits_{\hat{\bm{\omega}}} \left( \bm{y} - \bm{X} \hat{\bm{\omega}}\right)^{\text{T}} \left( \bm{y} - \bm{X} \hat{\bm{\omega}}\right). ω^=ω^argmin(yXω^)T(yXω^).

E ω ^ = ( y − X ω ^ ) T ( y − X ω ^ ) E_{\hat{\bm{\omega}}} = \left( \bm{y} - \bm{X} \hat{\bm{\omega}}\right)^{\text{T}} \left( \bm{y} - \bm{X} \hat{\bm{\omega}}\right) Eω^=(yXω^)T(yXω^),对 ω ^ \hat{\bm{\omega}} ω^ 求导可得
∂ E ω ^ ∂ ω ^ = 2 X T ( X ω ^ − y ) . \frac{\partial E_{\hat{\bm{\omega}}}}{\partial \hat{\bm{\omega}} } = 2\bm{X}^{\text{T}} \left(\bm{X} \hat{\bm{\omega}} - \bm{y}\right). ω^Eω^=2XT(Xω^y).
令上式等于零可以得到 ω ^ \hat{\bm{\omega}} ω^最优解的闭式解。

对数几率回归

考虑广义线性模型
y = g − 1 ( ω T x + b ) , y = g^{-1}(\bm{\omega}^{\text{T}} \bm{x} + b), y=g1(ωTx+b),
其中, g ( x ) g(x) g(x)是单调可微函数,称为联系函数。令 g ( x ) = ln ⁡ ( x ) g(x) = \ln(x) g(x)=ln(x), 我们便得到了对数线性回归。

如果联系函数取对数几率函数
h ( x ) = 1 1 + exp ⁡ ( − x ) , h(x) = \frac{1}{1+ \exp{(-x)}}, h(x)=1+exp(x)1,
便得到了对数几率回归
h = 1 1 + exp ⁡ [ − ( ω T x + b ) ] . h = \frac{1}{1+ \exp[-{\left(\bm{\omega}^{\text{T}} \bm{x} + b\right)}]}. h=1+exp[(ωTx+b)]1.
等价地,我们有
ln ⁡ h 1 − h = ω T x + b . \ln\frac{h}{1-h} = \bm{\omega}^{\text{T}} \bm{x} + b. ln1hh=ωTx+b.
对于二分类问题,若将 h h h 看作样本 x \bm{x} x 作为正例的可能性,则 1 − h 1-h 1h 是其作为反例的可能性。两者的比值称为几率。若将 h h h 视为类后验概率 p ( y = 1 ∣ x ) , p(y = 1 | \bm{x}), p(y=1x), 并且令
β = ( ω , b ) , x ^ = ( x , 1 ) . \begin{aligned} \bm{\beta} &= (\bm{\omega}, b), \\ \hat{\bm{x}} &= (\bm{x},1). \end{aligned} βx^=(ω,b),=(x,1).
样本属于每个类的概率统一写成
p ( y ∣ x , β ) = ( h ( x ) ) y ( 1 − h ( x ) ) 1 − y . p(y|\bm{x}, \bm{\beta}) = \left(h(\bm{x})\right)^{y} \left(1 - h(\bm{x})\right)^{1-y}. p(yx,β)=(h(x))y(1h(x))1y.
因此,训练集的似然函数为
l ( β ) = ∏ i = 1 m p ( y i ∣ x i , β ) = ∏ i = 1 m ( h ( x i ) ) y i ( 1 − h ( x i ) ) 1 − y i . l(\bm{\beta}) = \prod_{i =1}^{m} p(y_{i} | \bm{x}_{i}, \bm{\beta}) = \prod_{i =1}^{m} \left(h(\bm{x}_{i})\right)^{y_{i}} \left(1 - h(\bm{x}_{i})\right)^{1-y_{i}}. l(β)=i=1mp(yixi,β)=i=1m(h(xi))yi(1h(xi))1yi.
取对数后,得到对数似然函数
L ( β ) = ln ⁡ ( l ( β ) ) = ∑ i = 1 m [ y i ln ⁡ h ( x i ) + ( 1 − y i ) ln ⁡ ( 1 − h ( x i ) ) ] . L(\bm{\beta}) = \ln(l(\bm{\beta})) = \sum_{i=1}^{m} \left[ y_{i}\ln h(\bm{x}_{i}) + (1-y_{i}) \ln(1-h(\bm{x}_{i}))\right]. L(β)=ln(l(β))=i=1m[yilnh(xi)+(1yi)ln(1h(xi))].
最后,我们可以通过梯度下降法获得其最优解。

线性判别分析

线性判别分析(Linear Discriminant Analysis, LDA)的基本思想是:通过线性投影使得同类样本间的差异最小化,不同类样本之间的差异最大化。具体的做法是寻找一个投影矩阵 W \bm{W} W, 样本的特征向量 x \bm{x} x 经过投影之后得到
y = W x , \bm{y} = \bm{W} \bm{x}, y=Wx,
其中 y \bm{y} y 是低维空间的特征向量。

接下来我们的目标就是要获取这个投影矩阵,首先考虑把向量映射到一维空间。给定数据集 D = { ( x i , y i ) } i = 1 m , y i = { 0 , 1 } , D = \{ (\bm{x}_{i}, y_{i})\}_{i=1}^{m}, \quad y_{i} = \{0,1\}, D={(xi,yi)}i=1m,yi={0,1}, X i ,   μ i ,   Σ i X_{i}, \, \bm{\mu}_{i}, \, \bm{\Sigma}_{i} Xi,μi,Σi 分别表示第 i ∈ { 0 , 1 } i \in \{0, 1\} i{0,1} 类示例的集合,均值向量、协方差矩阵。若将数据投影到直线 ω \bm{\omega} ω 上,则可得样本的均值向量为
ω T μ i ,   i ∈ { 0 , 1 } , \bm{\omega}^{\text{T}} \bm{\mu}_{i}, \, i \in \{0, 1\}, ωTμi,i{0,1},
协方差矩阵为
ω T Σ i ω ,   i ∈ { 0 , 1 } . \bm{\omega}^{\text{T}} \bm{\Sigma}_{i}\bm{\omega}, \, i \in \{0, 1\}. ωTΣiω,i{0,1}.

为了让同类样本间的差异最小化,可以让同类样本投影点的协方差尽可能小;而为了让不同类样本之间的差异最大化,可以让类中心之间的距离尽可能的大。综合考虑二者,可以得到需要最大化的目标
J = ∣ ∣ ω T μ 0 − ω T μ 1 ∣ ∣ 2 2 ω T Σ 0 ω + ω T Σ 1 ω = ω T ( μ 0 − μ 1 ) ( μ 0 − μ 1 ) T ω ω T ( Σ 0 + Σ 1 ) ω . \begin{aligned} J & = \frac{|| \bm{\omega}^{\text{T}} \bm{\mu}_{0} -\bm{\omega}^{\text{T}} \bm{\mu}_{1} ||_{2}^{2}}{\bm{\omega}^{\text{T}} \bm{\Sigma}_{0}\bm{\omega} + \bm{\omega}^{\text{T}} \bm{\Sigma}_{1}\bm{\omega}} \\ & = \frac{\bm{\omega}^{\text{T}} \left(\bm{\mu}_{0}- \bm{\mu}_{1}\right)\left(\bm{\mu}_{0}- \bm{\mu}_{1}\right)^{\text{T}} \bm{\omega}}{\bm{\omega}^{\text{T}} \left( \bm{\Sigma}_{0} + \bm{\Sigma}_{1}\right)\bm{\omega}}. \end{aligned} J=ωTΣ0ω+ωTΣ1ωωTμ0ωTμ122=ωT(Σ0+Σ1)ωωT(μ0μ1)(μ0μ1)Tω.

定义类内散度矩阵
S ω = Σ 0 + Σ 1 = ∑ x ∈ X 0 ( x − μ 0 ) ( x − μ 0 ) T + ∑ x ∈ X 1 ( x − μ 1 ) ( x − μ 1 ) T \begin{aligned} \bm{S}_{\omega} & = \bm{\Sigma}_{0} + \bm{\Sigma}_{1} \\ & = \sum_{\bm{x} \in X_{0}}(\bm{x} - \bm{\mu}_{0})(\bm{x} - \bm{\mu}_{0})^{\text{T}} + \sum_{\bm{x} \in X_{1}}(\bm{x} - \bm{\mu}_{1})(\bm{x} - \bm{\mu}_{1})^{\text{T}} \end{aligned} Sω=Σ0+Σ1=xX0(xμ0)(xμ0)T+xX1(xμ1)(xμ1)T
和类间散度矩阵
S b = ( μ 0 − μ 1 ) ( μ 0 − μ 1 ) T , \bm{S}_{b} = \left( \bm{\mu}_{0} - \bm{\mu}_{1}\right) \left( \bm{\mu}_{0} - \bm{\mu}_{1}\right)^{\text{T}}, Sb=(μ0μ1)(μ0μ1)T,

J = ω T S b ω ω T S ω ω , J = \frac{\bm{\omega}^{\text{T} } \bm{S}_{b} \bm{\omega}}{\bm{\omega}^{\text{T} } \bm{S}_{\omega} \bm{\omega}}, J=ωTSωωωTSbω,
此即 S b \bm{S}_{b} Sb S ω \bm{S}_{\omega} Sω的广义瑞利商。

接下来,我们来确定模型中的参数,考虑到此最优化问题的解不唯一,因此,可以加上一个约束条件简化问题
ω T S ω ω = 1. \bm{\omega}^{\text{T} } \bm{S}_{\omega} \bm{\omega} = 1. ωTSωω=1.
这样,上面的最优化问题转化为
min ⁡ ω − ω T S b ω s.t. ω T S ω ω = 1 \begin{aligned} &\mathop{ \min} \limits_{\bm{\omega}} \quad - \bm{\omega}^{\text{T} } \bm{S}_{b} \bm{\omega} \\ & \text{s.t.} \quad \bm{\omega}^{\text{T} } \bm{S}_{\omega} \bm{\omega} = 1 \end{aligned} ωminωTSbωs.t.ωTSωω=1
由拉格朗日乘子法可知上式等价于
S b ω = λ S ω ω , \bm{S}_{b} \bm{\omega} = \lambda \bm{S}_{\omega} \bm{\omega}, Sbω=λSωω,
如果 S ω \bm{S}_{\omega} Sω 可逆,则有
S ω − 1 S b ω = λ ω . \bm{S}_{\omega}^{-1} \bm{S}_{b} \bm{\omega } = \lambda \bm{\omega}. Sω1Sbω=λω.


接下来我们将其推广到多分类问题中,假定存在 N N N 个类,且第 i i i 类样本数为 m i m_{i} mi,

定义全局散度矩阵
S t = S b + S ω = ∑ i = 1 m ( x i − μ ) ( x i − μ ) T , \begin{aligned} \bm{S}_{t} &= \bm{S}_{b} + \bm{S}_{\omega} \\ & = \sum_{i=1}^{m} \left(\bm{x}_{i} - \bm{\mu} \right)\left(\bm{x}_{i} -\bm{ \mu} \right)^{\text{T}} \end{aligned}, St=Sb+Sω=i=1m(xiμ)(xiμ)T,
以及类内散度矩阵
S ω = ∑ i = 1 N S ω i , \bm{S}_{\bm{\omega}} = \sum_{i=1}^{N} \bm{S}_{\omega_{i}}, Sω=i=1NSωi,
其中,
S ω i = ∑ x ∈ X i ( x − μ i ) ( x − μ i ) T . \bm{S}_{\omega_{i}} = \sum_{\bm{x} \in X_{i}} \left(\bm{x} - \bm{\mu}_{i}\right)\left(\bm{x} - \bm{\mu}_{i}\right)^{\text{T}}. Sωi=xXi(xμi)(xμi)T.
由上面这些表达式,可得
S b = S t − S ω = ∑ i = 1 N m i ( μ i − μ ) ( μ i − μ ) T . \bm{S}_{b} = \bm{S}_{t} - \bm{S}_{\omega} = \sum_{i=1}^{N} m_{i}\left( \bm{\mu}_{i} - \bm{\mu}\right) \left( \bm{\mu}_{i} - \bm{\mu}\right)^{\text{T}}. Sb=StSω=i=1Nmi(μiμ)(μiμ)T.

最后,为了实现多分类 LDA ,只要使用 S b , S t , S ω \bm{S}_{b}, \bm{S}_{t} ,\bm{S}_{\omega} Sb,St,Sω 三者中的任何两者即可。通常使用如下的优化目标
max ⁡ W tr ( W T S b W ) tr ( W T S ω W ) . \mathop{\max} \limits_{\bm{W}} \frac{\text{tr} \left( \bm{W}^{\text{T}} \bm{S}_{b} \bm{W}\right)}{\text{tr} \left( \bm{W}^{\text{T}} \bm{S}_{\omega} \bm{W}\right)}. Wmaxtr(WTSωW)tr(WTSbW).
而上式可以通过如下的广义特征值问题求解
S b W = λ S ω W . \bm{S}_{b} \bm{W} = \lambda \bm{S}_{\omega} \bm{W}. SbW=λSωW.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值