线性模型
线性模型是指预测函数为线性函数的模型,即
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=1∑m(f(xi)−yi)2=(ω,b)argmini=1∑m(ωxi+b−yi)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+b,s.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(y−Xω^)T(y−Xω^).
令
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ω^=(y−Xω^)T(y−Xω^),对
ω
^
\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=g−1(ω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.
ln1−hh=ωTx+b.
对于二分类问题,若将
h
h
h 看作样本
x
\bm{x}
x 作为正例的可能性,则
1
−
h
1-h
1−h 是其作为反例的可能性。两者的比值称为几率。若将
h
h
h 视为类后验概率
p
(
y
=
1
∣
x
)
,
p(y = 1 | \bm{x}),
p(y=1∣x), 并且令
β
=
(
ω
,
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(y∣x,β)=(h(x))y(1−h(x))1−y.
因此,训练集的似然函数为
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=1∏mp(yi∣xi,β)=i=1∏m(h(xi))yi(1−h(xi))1−yi.
取对数后,得到对数似然函数
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=1∑m[yilnh(xi)+(1−yi)ln(1−h(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μ1∣∣22=ω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=x∈X0∑(x−μ0)(x−μ0)T+x∈X1∑(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=1∑m(xi−μ)(xi−μ)T,
以及类内散度矩阵
S
ω
=
∑
i
=
1
N
S
ω
i
,
\bm{S}_{\bm{\omega}} = \sum_{i=1}^{N} \bm{S}_{\omega_{i}},
Sω=i=1∑NSω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=x∈Xi∑(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=St−Sω=i=1∑Nmi(μ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.