1. 线性回归
线性回归试图学得:
f
(
x
i
)
=
ω
x
i
+
b
,
使
得
f
(
x
i
)
≃
y
i
(1)
f(x_i)=\omega x_i + b ,使得f(x_i) \simeq y_i \tag{1}
f(xi)=ωxi+b,使得f(xi)≃yi(1)
利用均方误差进行衡量
f
(
x
i
)
f(x_i)
f(xi)与
y
i
y_i
yi的差别,求解
ω
,
b
\omega, b
ω,b使得均方误差最小。
(
ω
∗
,
b
∗
)
=
a
r
g
m
i
n
(
ω
,
b
)
∑
i
=
1
m
(
f
(
x
i
)
−
y
i
)
2
=
a
r
g
m
i
n
(
ω
,
b
)
∑
i
=
1
m
(
y
i
−
ω
x
i
−
b
)
2
(2)
\begin{matrix} (\omega^*,b^*)= \underset{(\omega, b)}{arg \quad min} \sum_{i=1}^{m}(f(x_i)-y_i)^2 \\ \\ \qquad \qquad = \underset{(\omega, b)}{arg \quad min} \sum_{i=1}^{m}(y_i-\omega x_i - b)^2 \end{matrix} \tag{2}
(ω∗,b∗)=(ω,b)argmin∑i=1m(f(xi)−yi)2=(ω,b)argmin∑i=1m(yi−ωxi−b)2(2)
求解
ω
\omega
ω 和
b
b
b 使得均方误差最小化的过程,称为线性回归模型的最小二乘“参数估计”。我们将均方误差分别对w和b求导,得到:
∂
E
(
ω
,
b
)
∂
ω
=
2
(
ω
∑
i
=
1
m
x
i
2
−
∑
i
=
1
m
(
y
i
−
b
)
x
i
)
,
(3)
\frac {\partial E_{(\omega, b)}}{\partial \omega} = 2(\omega \sum_{i=1}^mx_i^2-\sum_{i=1}^m(y_i-b)x_i), \tag{3}
∂ω∂E(ω,b)=2(ωi=1∑mxi2−i=1∑m(yi−b)xi),(3)
∂
E
(
ω
,
b
)
∂
b
=
2
(
m
b
−
∑
i
=
1
m
(
y
i
−
ω
x
i
)
(4)
\frac {\partial E_{(\omega, b)}}{\partial b} = 2(mb-\sum_{i=1}^m(y_i-\omega x_i) \tag{4}
∂b∂E(ω,b)=2(mb−i=1∑m(yi−ωxi)(4)
令上式为零可得到
ω
\omega
ω和
b
b
b最优解的闭式解:
ω
=
∑
i
=
1
m
y
i
(
x
i
−
x
ˉ
)
∑
i
=
1
m
x
i
2
−
1
m
(
∑
i
=
1
m
x
i
)
2
(5)
\omega = \frac{\sum_{i=1}^my_i(x_i-\bar{x})}{\sum_{i=1}^mx_i^2-\frac{1}{m}(\sum_{i=1}^mx_i)^2} \tag{5}
ω=∑i=1mxi2−m1(∑i=1mxi)2∑i=1myi(xi−xˉ)(5)
b
=
1
m
∑
i
=
1
m
(
y
i
−
ω
x
i
)
(6)
b = \frac{1}{m}\sum_{i=1}^m(y_i-\omega x_i) \tag{6}
b=m1i=1∑m(yi−ωxi)(6)
其中
x
ˉ
=
1
m
∑
i
=
1
m
x
i
\bar{x}=\frac{1}{m}\sum_{i=1}^mx_i
xˉ=m1∑i=1mxi为
x
x
x的均值。
更一般的情形是数据集
D
D
D,样本由
d
d
d个属性描述。此时我们试图学得:
f
(
x
)
=
ω
T
x
i
+
b
,
使
得
f
(
x
i
)
≃
y
i
,
(7)
f(x) = \omega^Tx_i+b, \quad 使得f(x_i) \simeq y_i, \tag{7}
f(x)=ωTxi+b,使得f(xi)≃yi,(7)
这就成为“多元线性回归”。
类似地,可利用最小二乘来对
ω
\omega
ω和
b
b
b进行估计。为方便讨论,把
ω
\omega
ω和
b
b
b吸收如向量形式相应地,把数据集
D
D
D表示为一个大小的矩阵
X
X
X,其中每行对应一个示例,改行前d个元素对应于示例的d个属性值,最后一个元素恒置为1,即
X
=
(
x
11
x
12
⋯
x
1
d
1
x
21
x
22
⋯
x
2
d
1
⋮
⋮
⋱
⋮
⋮
x
m
1
x
m
2
⋯
x
m
d
1
)
=
(
x
1
T
1
x
2
T
1
⋮
⋮
x
m
T
1
)
(8)
X=\begin{pmatrix} x_{11} & x_{12}& \cdots & x_{1d}& 1\\ x_{21} & x_{22}& \cdots & x_{2d}& 1\\ \vdots & \vdots & \ddots & \vdots & \vdots \\ x_{m1} & x_{m2}& \cdots & x_{md}& 1 \end{pmatrix} =\begin{pmatrix} x_1^T & 1\\ x_2^T & 1\\ \vdots & \vdots \\ x_m^T & 1 \end{pmatrix} \tag{8}
X=⎝⎜⎜⎜⎛x11x21⋮xm1x12x22⋮xm2⋯⋯⋱⋯x1dx2d⋮xmd11⋮1⎠⎟⎟⎟⎞=⎝⎜⎜⎜⎛x1Tx2T⋮xmT11⋮1⎠⎟⎟⎟⎞(8)
标记写成向量形式为
y
=
(
y
1
;
y
2
;
⋯
;
y
m
)
y=(y_1;y_2;\cdots;y_m)
y=(y1;y2;⋯;ym),则有:
ω
^
∗
=
a
r
g
m
i
n
ω
^
(
y
−
X
ω
^
)
T
(
y
−
X
ω
^
)
(9)
\hat{\omega}^*=\underset{\hat{\omega}}{arg \quad min}(y-X \hat{\omega})^T(y-X \hat{\omega})\tag{9}
ω^∗=ω^argmin(y−Xω^)T(y−Xω^)(9)
令
E
ω
^
=
(
y
−
X
ω
^
)
T
(
y
−
X
ω
^
)
E_{\hat{\omega}}=(y-X \hat{\omega})^T(y-X \hat{\omega})
Eω^=(y−Xω^)T(y−Xω^),对
ω
^
\hat \omega
ω^求导得到:
∂
E
ω
^
∂
ω
^
=
2
X
T
(
X
ω
^
−
y
)
(10)
\frac{\partial E_{\hat{\omega}}}{\partial \hat{\omega}}=2X^T(X\hat{\omega}-y) \tag{10}
∂ω^∂Eω^=2XT(Xω^−y)(10)
当
X
T
X
X^TX
XTX为满秩矩阵或正定矩阵时,令上式为零可得的 :
ω
^
∗
=
(
X
T
X
)
−
1
X
T
y
(11)
\hat{\omega}^*=(X^TX)^{-1}X^Ty \tag{11}
ω^∗=(XTX)−1XTy(11),
当其不是满秩矩阵,即我们常遇到大量的变量,其数目超过样例数,导致
X
X
X的列数多于行数,显然不满秩。此时可解除多个
w
^
\hat{w}
w^,他们都能使均方误差最小化。选择哪一个作为输出,将由学习算法的归纳偏好决定,常见的做法是引入正则化项。
假设我们认为示例所对应的输出标记是在指数尺度多行变化,那就可将输出标记的对数作为先行模型逼近的目标,即
l
n
(
y
)
=
ω
T
x
+
b
(12)
ln(y)=\omega^Tx+b \tag{12}
ln(y)=ωTx+b(12)
这就是“对数线性回归”。同时实际上是在试图让
e
ω
T
x
+
b
e^{\omega^Tx+b}
eωTx+b逼近y。实质撒花姑娘已是求输入空间到输出空间的非线性函数映射。
更一般地,考虑单调可微函数g(.),令
y
=
g
−
1
(
ω
T
x
+
b
)
(13)
y=g^{-1}(\omega^Tx+b) \tag{13}
y=g−1(ωTx+b)(13),
这样得到的模型称为“广义线性模型(generalized linear model)”,其中函数
g
(
.
)
g(.)
g(.)称为“联系函数”。显然,对数线性回归是广义线性模型在
g
(
.
)
=
l
n
(
.
)
g(.)=ln(.)
g(.)=ln(.)时的特例
2.对数几率回归(LR回归)
2.1 定义
将线性模型用作分类任务时,只需找一个单调可微函数将分类任务的真实标记
y
y
y与线性回归模型的预测值联系起来。
如:在二分类任务中,其输出标记
y
∈
0
,
1
y \in {0,1}
y∈0,1,而线性模型产生的预测值
z
=
ω
T
x
+
b
z = \omega ^Tx+b
z=ωTx+b是实值,于是,我们需要将实值
z
z
z转换为0\1值,因此可以使用“单位阶跃函数”。但是“单位阶跃函数”不连续,因此使用单调可微的“对数几率函数”。
y
=
1
1
+
e
−
z
=
1
1
+
e
−
(
ω
T
x
+
b
)
(14)
y=\frac{1}{1+e^{-z}}=\frac{1}{1+e^{-(\omega^T x+b)}} \tag{14}
y=1+e−z1=1+e−(ωTx+b)1(14)
公式(14)可以变化为:
l
n
y
1
−
y
=
ω
T
x
+
b
(15)
ln\frac{y}{1-y}=\omega^T x+b \tag{15}
ln1−yy=ωTx+b(15)
若将
y
y
y视为样本
x
x
x的可能性,则
1
−
y
1-y
1−y为反例的可能性,两者的比值
y
1
−
y
\frac{y}{1-y}
1−yy称为“几率”,反应
x
x
x作为正例的相对可能性。取对数得到:
l
n
y
1
−
y
(16)
ln\frac{y}{1-y} \tag{16}
ln1−yy(16)
由公式(15)可以看出,模型实际上在用线性回归模型的预测结果去逼近真实标记的对数几率。它是对分类直接进行建模,无需事先假设数据分布,避免了假设分布不准确带来的问题;同时,可以得到近似的概率预测,对于许多运用概率辅助决策的任务很有用。
2.2 求解
将式(14)的
y
y
y视为类后验概率估计
p
(
y
=
1
∣
x
)
p(y=1|x)
p(y=1∣x),则式(15)可以写为:
l
n
p
(
y
=
1
∣
x
)
p
(
y
=
0
∣
x
)
=
ω
T
x
+
b
(17)
ln\frac{p(y=1|x)}{p(y=0|x)}=\omega^Tx+b\tag{17}
lnp(y=0∣x)p(y=1∣x)=ωTx+b(17)
则:
p
(
y
=
1
∣
x
)
=
e
ω
T
x
+
b
1
+
e
ω
T
x
+
b
(18)
p(y=1|x)=\frac{e^{\omega^Tx+b}}{1+e^{\omega^Tx+b}} \tag{18}
p(y=1∣x)=1+eωTx+beωTx+b(18)
p
(
y
=
0
∣
x
)
=
1
1
+
e
ω
T
x
+
b
(19)
p(y=0|x)=\frac{1}{1+e^{\omega^Tx+b}} \tag{19}
p(y=0∣x)=1+eωTx+b1(19)
可以通过“极大似然法”来估计
ω
,
b
\omega,b
ω,b.给定数据集
{
(
x
i
,
y
i
)
}
i
=
1
m
\{(x_i,y_i)\}_{i=1}^m
{(xi,yi)}i=1m,对数几率回归模型最大化“对数似然”:
ℓ
(
ω
,
b
)
=
∑
i
=
1
m
l
n
p
(
y
i
∣
x
i
;
ω
,
b
)
(20)
\ell(\omega,b)=\sum_{i=1}^mln p(y_i|x_i;\omega,b) \tag{20}
ℓ(ω,b)=i=1∑mlnp(yi∣xi;ω,b)(20)
令
β
=
(
ω
;
b
)
,
x
^
=
(
x
;
1
)
\beta=(\omega;b),\hat{x}=(x;1)
β=(ω;b),x^=(x;1),则
ω
T
x
+
b
\omega^Tx+b
ωTx+b简写为:
β
T
x
^
\beta^T\hat{x}
βTx^;再令
p
1
(
x
^
;
β
)
=
p
(
y
=
1
∣
x
^
;
β
)
p_1(\hat{x};\beta)=p(y=1|\hat{x};\beta)
p1(x^;β)=p(y=1∣x^;β),
p
0
(
x
^
;
β
)
=
p
(
y
=
0
∣
x
^
;
β
)
=
1
−
p
1
(
y
=
1
∣
x
^
;
β
)
p_0(\hat{x};\beta)=p(y=0|\hat{x};\beta)=1-p_1(y=1|\hat{x};\beta)
p0(x^;β)=p(y=0∣x^;β)=1−p1(y=1∣x^;β),则:
p
(
y
i
∣
x
i
;
ω
,
b
)
=
y
i
p
1
(
x
^
i
;
β
)
+
(
1
−
y
i
)
p
0
(
x
^
i
;
β
)
(21)
p(y_i|x_i;\omega,b)=y_ip_1(\hat{x}_i;\beta) + (1-y_i)p_0(\hat{x}_i;\beta) \tag{21}
p(yi∣xi;ω,b)=yip1(x^i;β)+(1−yi)p0(x^i;β)(21)
ℓ
(
β
)
=
∑
i
=
1
m
(
−
y
i
β
T
x
i
^
+
l
n
(
1
+
e
β
T
x
i
^
)
)
(22)
\ell(\beta)=\sum_{i=1}^m(-y_i\beta^T\hat{x_i}+ln(1+ e^{\beta^T\hat{x_i}}))\tag{22}
ℓ(β)=i=1∑m(−yiβTxi^+ln(1+eβTxi^))(22)
式(22)为关于
β
\beta
β的高阶可导连续凸函数,根据凸优化理论,经典的数值优化算法如:梯度下降法,牛顿法都可以得到最优解。