PRML学习总结(7)——Sparse Kernel Machines
在前⼀章中,我们研究了许多基于⾮线性核的学习算法。这种算法的⼀个最⼤的局限性是核函数 k ( x n , x m ) k\left(\mathbf{x}_{n}, \mathbf{x}_{m}\right) k(xn,xm)必须对所有可能的训练点对 x n \mathbf{x}_{n} xn和 x m \mathbf{x}_{m} xm进⾏求值,这在训练阶段的计算上是不可⾏的,并且会使得对新的数据点进⾏预测时也会花费过多的时间。本章中,我们会看到具有稀疏(sparse)解的基于核的算法,从⽽对新数据的预测只依赖于在训练数据点的⼀个⼦集上计算的核函数。
7.1 Maximum Margin Classifiers
首先考虑二分类问题,
y
(
x
)
=
w
T
ϕ
(
x
)
+
b
y(\mathbf{x})=\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}(\mathbf{x})+b
y(x)=wTϕ(x)+b我们认为数据是线性可分的,即存在参数
w
\mathbf w
w和
b
b
b使得能够使得数据集正确可分。之前在第四章学习感知器的时候就发现,对于可分的参数有很多,我们需要找到最优的一组解。SVM则定义了一个margin,通过最大化margin进而求解到最优的参数。且这个优化问题是一个凸优化问题,能够求解到唯一最值点。
在可分的情况下,有
t
n
y
(
x
n
)
>
0
t_{n} y\left(\mathbf{x}_{n}\right)>0
tny(xn)>0,那么数据集中某个点
x
n
\mathbf x_n
xn到决策面的距离为
t
n
y
(
x
n
)
∥
w
∥
=
t
n
(
w
T
ϕ
(
x
n
)
+
b
)
∥
w
∥
\frac{t_{n} y\left(\mathbf{x}_{n}\right)}{\|\mathbf{w}\|}=\frac{t_{n}\left(\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right)+b\right)}{\|\mathbf{w}\|}
∥w∥tny(xn)=∥w∥tn(wTϕ(xn)+b)margin就是在数据集中使得上式最小的距离,我们的目标是最大化这个距离
arg
max
w
,
b
{
1
∥
w
∥
min
n
[
t
n
(
w
T
ϕ
(
x
n
)
+
b
)
]
}
\underset{\mathbf{w}, b}{\arg \max }\left\{\frac{1}{\|\mathbf{w}\|} \min _{n}\left[t_{n}\left(\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right)+b\right)\right]\right\}
w,bargmax{∥w∥1nmin[tn(wTϕ(xn)+b)]}直接优化比较存在困难,那么可以将其转化为等价形式。当我们
w
→
κ
w
\mathbf{w} \rightarrow \kappa \mathbf{w}
w→κw and
b
→
κ
b
b \rightarrow \kappa b
b→κb时,目标值
t
n
y
(
x
n
)
/
∥
w
∥
t_{n} y\left(\mathbf{x}_{n}\right) /\|\mathbf{w}\|
tny(xn)/∥w∥将不会变化,因此我们可以对离决策面最近的一个点设定一个约束
t
n
(
w
T
ϕ
(
x
n
)
+
b
)
=
1
t_{n}\left(\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right)+b\right)=1
tn(wTϕ(xn)+b)=1这样一来,所有点
t
n
(
w
T
ϕ
(
x
n
)
+
b
)
⩾
1
,
n
=
1
,
…
,
N
t_{n}\left(\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right)+b\right) \geqslant 1, \quad n=1, \ldots, N
tn(wTϕ(xn)+b)⩾1,n=1,…,N对于以上约束,至少有一个点使得等号成立,那么原优化问题就等价为
arg
min
w
,
b
1
2
∥
w
∥
2
\underset{\mathbf{w}, b}{\arg \min } \frac{1}{2}\|\mathbf{w}\|^{2}
w,bargmin21∥w∥2其约束条件如上。求解该优化问题,引入拉格朗日乘子
L
(
w
,
b
,
a
)
=
1
2
∥
w
∥
2
−
∑
n
=
1
N
a
n
{
t
n
(
w
T
ϕ
(
x
n
)
+
b
)
−
1
}
L(\mathbf{w}, b, \mathbf{a})=\frac{1}{2}\|\mathbf{w}\|^{2}-\sum_{n=1}^{N} a_{n}\left\{t_{n}\left(\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right)+b\right)-1\right\}
L(w,b,a)=21∥w∥2−n=1∑Nan{tn(wTϕ(xn)+b)−1}目标为最小化
w
\mathbf w
w和
b
b
b,最大化
a
n
a_n
an,利用求导梯度为0
w
=
∑
n
=
1
N
a
n
t
n
ϕ
(
x
n
)
0
=
∑
n
=
1
N
a
n
t
n
\begin{aligned} \mathbf{w} &=\sum_{n=1}^{N} a_{n} t_{n} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right) \\ 0 &=\sum_{n=1}^{N} a_{n} t_{n} \end{aligned}
w0=n=1∑Nantnϕ(xn)=n=1∑Nantn代入原式
L
~
(
a
)
=
∑
n
=
1
N
a
n
−
1
2
∑
n
=
1
N
∑
m
=
1
N
a
n
a
m
t
n
t
m
k
(
x
n
,
x
m
)
\widetilde{L}(\mathbf{a})=\sum_{n=1}^{N} a_{n}-\frac{1}{2} \sum_{n=1}^{N} \sum_{m=1}^{N} a_{n} a_{m} t_{n} t_{m} k\left(\mathbf{x}_{n}, \mathbf{x}_{m}\right)
L
(a)=n=1∑Nan−21n=1∑Nm=1∑Nanamtntmk(xn,xm)约束条件为
a
n
⩾
0
,
n
=
1
,
…
,
N
∑
n
=
1
N
a
n
t
n
=
0
\begin{aligned} a_{n} & \geqslant 0, \quad n=1, \ldots, N \\ \sum_{n=1}^{N} a_{n} t_{n} &=0 \end{aligned}
ann=1∑Nantn⩾0,n=1,…,N=0
对于新来的数据点
x
\mathbf x
x,
y
(
x
)
=
∑
n
=
1
N
a
n
t
n
k
(
x
,
x
n
)
+
b
y(\mathbf{x})=\sum_{n=1}^{N} a_{n} t_{n} k\left(\mathbf{x}, \mathbf{x}_{n}\right)+b
y(x)=n=1∑Nantnk(x,xn)+b在转化为对偶问题时,KKT条件
a
n
⩾
0
t
n
y
(
x
n
)
−
1
⩾
0
a
n
{
t
n
y
(
x
n
)
−
1
}
=
0
\begin{aligned} a_{n} & \geqslant 0 \\ t_{n} y\left(\mathbf{x}_{n}\right)-1 & \geqslant 0 \\ a_{n}\left\{t_{n} y\left(\mathbf{x}_{n}\right)-1\right\} &=0 \end{aligned}
antny(xn)−1an{tny(xn)−1}⩾0⩾0=0成立。那么对于每个数据点
a
n
=
0
a_{n}=0
an=0 or
t
n
y
(
x
n
)
=
1
t_{n} y\left(\mathbf{x}_{n}\right)=1
tny(xn)=1,对于
a
n
a_n
an非零的点就是支持向量点。决定着之后的预测!对于参数
b
b
b,可以利用支持向量决定
t
n
(
∑
m
∈
S
a
m
t
m
k
(
x
n
,
x
m
)
+
b
)
=
1
t_{n}\left(\sum_{m \in \mathcal{S}} a_{m} t_{m} k\left(\mathbf{x}_{n}, \mathbf{x}_{m}\right)+b\right)=1
tn(m∈S∑amtmk(xn,xm)+b)=1我们可以用其中一个支持向量计算参数
b
b
b,为了训练稳定,可以将所有的
b
b
b平均下。
b
=
1
N
S
∑
n
∈
S
(
t
n
−
∑
m
∈
S
a
m
t
m
k
(
x
n
,
x
m
)
)
b=\frac{1}{N_{\mathcal{S}}} \sum_{n \in \mathcal{S}}\left(t_{n}-\sum_{m \in \mathcal{S}} a_{m} t_{m} k\left(\mathbf{x}_{n}, \mathbf{x}_{m}\right)\right)
b=NS1n∈S∑(tn−m∈S∑amtmk(xn,xm))
7.1.1 Overlapping class distributions
到目前为止所考虑的都是可分的情况,对于不可分的情况,我们可以通过对每个训练数据引入松弛变量
ξ
n
⩾
0
\xi_{n} \geqslant 0
ξn⩾0来解决。具体地,对于正确分类(大于margin)的
ξ
n
=
0
\xi_{n}=0
ξn=0,而错误分类的
ξ
n
=
∣
t
n
−
y
(
x
n
)
∣
\xi_{n}=\left|t_{n}-y\left(\mathbf{x}_{n}\right)\right|
ξn=∣tn−y(xn)∣。
之前的约束
t
n
y
(
x
n
)
−
1
⩾
0
t_{n} y\left(\mathbf{x}_{n}\right)-1 \geqslant 0
tny(xn)−1⩾0改为
t
n
y
(
x
n
)
⩾
1
−
ξ
n
,
n
=
1
,
…
,
N
t_{n} y\left(\mathbf{x}_{n}\right) \geqslant 1-\xi_{n}, \quad n=1, \ldots, N
tny(xn)⩾1−ξn,n=1,…,N则目标变为了,最小化
C
∑
n
=
1
N
ξ
n
+
1
2
∥
w
∥
2
C \sum_{n=1}^{N} \xi_{n}+\frac{1}{2}\|\mathbf{w}\|^{2}
Cn=1∑Nξn+21∥w∥2显然当
C
→
∞
C \rightarrow \infty
C→∞时,就等价为之前可分的情况。优化上式同样采用拉格朗日乘子
L
(
w
,
b
,
a
)
=
1
2
∥
w
∥
2
+
C
∑
n
=
1
N
ξ
n
−
∑
n
=
1
N
a
n
{
t
n
y
(
x
n
)
−
1
+
ξ
n
}
−
∑
n
=
1
N
μ
n
ξ
n
L(\mathbf{w}, b, \mathbf{a})=\frac{1}{2}\|\mathbf{w}\|^{2}+C \sum_{n=1}^{N} \xi_{n}-\sum_{n=1}^{N} a_{n}\left\{t_{n} y\left(\mathbf{x}_{n}\right)-1+\xi_{n}\right\}-\sum_{n=1}^{N} \mu_{n} \xi_{n}
L(w,b,a)=21∥w∥2+Cn=1∑Nξn−n=1∑Nan{tny(xn)−1+ξn}−n=1∑Nμnξnwhere
{
a
n
⩾
0
}
\left\{a_{n} \geqslant 0\right\}
{an⩾0} and
{
μ
n
⩾
0
}
\left\{\mu_{n} \geqslant 0\right\}
{μn⩾0}同样得到KKT条件
a
n
⩾
0
t
n
y
(
x
n
)
−
1
+
ξ
n
⩾
0
a
n
(
t
n
y
(
x
n
)
−
1
+
ξ
n
)
=
0
μ
n
⩾
0
ξ
n
⩾
0
μ
n
ξ
n
=
0
\begin{array}{r}{a_{n} \geqslant 0} \\ {\qquad \begin{aligned} t_{n} y\left(\mathbf{x}_{n}\right)-1+\xi_{n} & \geqslant 0 \\ a_{n}\left(t_{n} y\left(\mathbf{x}_{n}\right)-1+\xi_{n}\right) &=0 \\ \mu_{n} & \geqslant 0 \\ \xi_{n} & \geqslant 0 \\ \mu_{n} \xi_{n} &=0 \end{aligned}}\end{array}
an⩾0tny(xn)−1+ξnan(tny(xn)−1+ξn)μnξnμnξn⩾0=0⩾0⩾0=0
∂
L
∂
w
=
0
⇒
w
=
∑
n
=
1
N
a
n
t
n
ϕ
(
x
n
)
∂
L
∂
b
=
0
⇒
∑
n
=
1
N
a
n
t
n
=
0
∂
L
∂
ξ
n
=
0
⇒
a
n
=
C
−
μ
n
\begin{aligned} \frac{\partial L}{\partial \mathbf{w}} &=0 \Rightarrow \mathbf{w}=\sum_{n=1}^{N} a_{n} t_{n} \phi\left(\mathbf{x}_{n}\right) \\ \frac{\partial L}{\partial b} &=0 \Rightarrow \sum_{n=1}^{N} a_{n} t_{n}=0 \\ \frac{\partial L}{\partial \xi_{n}} &=0 \quad \Rightarrow \quad a_{n}=C-\mu_{n} \end{aligned}
∂w∂L∂b∂L∂ξn∂L=0⇒w=n=1∑Nantnϕ(xn)=0⇒n=1∑Nantn=0=0⇒an=C−μn之后代入原目标函数得
L
~
(
a
)
=
∑
n
=
1
N
a
n
−
1
2
∑
n
=
1
N
∑
m
=
1
N
a
n
a
m
t
n
t
m
k
(
x
n
,
x
m
)
\widetilde{L}(\mathbf{a})=\sum_{n=1}^{N} a_{n}-\frac{1}{2} \sum_{n=1}^{N} \sum_{m=1}^{N} a_{n} a_{m} t_{n} t_{m} k\left(\mathbf{x}_{n}, \mathbf{x}_{m}\right)
L
(a)=n=1∑Nan−21n=1∑Nm=1∑Nanamtntmk(xn,xm)可以发现目标函数与之前可分下是一样的,但是约束条件变为
0
⩽
a
n
⩽
C
∑
n
=
1
N
a
n
t
n
=
0
\begin{array}{l}{0 \leqslant a_{n} \leqslant C} \\ {\sum_{n=1}^{N} a_{n} t_{n}=0}\end{array}
0⩽an⩽C∑n=1Nantn=0对于
b
b
b的求解仍然是采取支持向量
0
<
a
n
<
C
0<a_{n}<C
0<an<C
t
n
(
∑
m
∈
S
a
m
t
m
k
(
x
n
,
x
m
)
+
b
)
=
1
t_{n}\left(\sum_{m \in \mathcal{S}} a_{m} t_{m} k\left(\mathbf{x}_{n}, \mathbf{x}_{m}\right)+b\right)=1
tn(m∈S∑amtmk(xn,xm)+b)=1同样地为了稳定性
b
=
1
N
M
∑
n
∈
M
(
t
n
−
∑
m
∈
S
a
m
t
m
k
(
x
n
,
x
m
)
)
b=\frac{1}{N_{\mathcal{M}}} \sum_{n \in \mathcal{M}}\left(t_{n}-\sum_{m \in \mathcal{S}} a_{m} t_{m} k\left(\mathbf{x}_{n}, \mathbf{x}_{m}\right)\right)
b=NM1n∈M∑(tn−m∈S∑amtmk(xn,xm))还有一种等价的形式
ν
−
S
V
M
\nu-SVM
ν−SVM,最大化
L
~
(
a
)
=
−
1
2
∑
n
=
1
N
∑
m
=
1
N
a
n
a
m
t
n
t
m
k
(
x
n
,
x
m
)
\widetilde{L}(\mathbf{a})=-\frac{1}{2} \sum_{n=1}^{N} \sum_{m=1}^{N} a_{n} a_{m} t_{n} t_{m} k\left(\mathbf{x}_{n}, \mathbf{x}_{m}\right)
L
(a)=−21n=1∑Nm=1∑Nanamtntmk(xn,xm)约束为
0
⩽
a
n
⩽
1
/
N
∑
n
=
1
N
a
n
t
n
=
0
∑
n
=
1
N
a
n
⩾
ν
\begin{array}{l}{0 \leqslant a_{n} \leqslant 1 / N} \\ {\sum_{n=1}^{N} a_{n} t_{n}=0} \\ {\sum_{n=1}^{N} a_{n} \geqslant \nu}\end{array}
0⩽an⩽1/N∑n=1Nantn=0∑n=1Nan⩾ν
y
(
x
)
=
w
T
ϕ
(
x
)
+
b
y(\mathbf{x})=\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}(\mathbf{x})+b
y(x)=wTϕ(x)+b
7.1.2 Relation to logistic regression
与线性可分的情形⼀样,对于线性不可分的概率分布,我们可以⽤最⼩化正则化的误差函数的⽅法重新表⽰SVM。这也使得我们能够强调与logistic回归模型之间的相似性和差别。
由于
ξ
n
=
∣
t
n
−
y
(
x
n
)
∣
\xi_{n}=\left|t_{n}-y\left(\mathbf{x}_{n}\right)\right|
ξn=∣tn−y(xn)∣,则
ξ
n
=
1
−
y
n
t
n
\xi_{n}=1-y_{n} t_{n}
ξn=1−yntn,那么原目标函数可以写成
∑
n
=
1
N
E
S
V
(
y
n
t
n
)
+
λ
∥
w
∥
2
\sum_{n=1}^{N} E_{\mathrm{SV}}\left(y_{n} t_{n}\right)+\lambda\|\mathbf{w}\|^{2}
n=1∑NESV(yntn)+λ∥w∥2其中
λ
=
(
2
C
)
−
1
\lambda=(2 C)^{-1}
λ=(2C)−1,
E
S
V
(
y
n
t
n
)
=
[
1
−
y
n
t
n
]
+
E_{\mathrm{SV}}\left(y_{n} t_{n}\right)=\left[1-y_{n} t_{n}\right]_{+}
ESV(yntn)=[1−yntn]+
7.1.3 Multiclass SVMs
7.1.4 SVMs for regression
目标函数为
1
2
∑
n
=
1
N
{
y
n
−
t
n
}
2
+
λ
2
∥
w
∥
2
\frac{1}{2} \sum_{n=1}^{N}\left\{y_{n}-t_{n}\right\}^{2}+\frac{\lambda}{2}\|\mathbf{w}\|^{2}
21n=1∑N{yn−tn}2+2λ∥w∥2为了得到稀疏的解,引入误差函数
E
ϵ
(
y
(
x
)
−
t
)
=
{
0
,
if
∣
y
(
x
)
−
t
∣
<
ϵ
∣
y
(
x
)
−
t
∣
−
ϵ
,
otherwise
E_{\epsilon}(y(\mathbf{x})-t)=\left\{\begin{array}{ll}{0,} & {\text { if }|y(\mathbf{x})-t|<\epsilon} \\ {|y(\mathbf{x})-t|-\epsilon,} & {\text { otherwise }}\end{array}\right.
Eϵ(y(x)−t)={0,∣y(x)−t∣−ϵ, if ∣y(x)−t∣<ϵ otherwise 从而
C
∑
n
=
1
N
E
ϵ
(
y
(
x
n
)
−
t
n
)
+
1
2
∥
w
∥
2
C \sum_{n=1}^{N} E_{\epsilon}\left(y\left(\mathbf{x}_{n}\right)-t_{n}\right)+\frac{1}{2}\|\mathbf{w}\|^{2}
Cn=1∑NEϵ(y(xn)−tn)+21∥w∥2跟之前一样,每个数据都引入两个松弛因子
ξ
n
⩾
0
\xi_{n} \geqslant 0
ξn⩾0和
ξ
^
n
⩾
0
\widehat{\xi}_{n} \geqslant 0
ξ
n⩾0,对于误差函数不为0的点就会给予惩罚
t
n
⩽
y
(
x
n
)
+
ϵ
+
ξ
n
t
n
⩾
y
(
x
n
)
−
ϵ
−
ξ
^
n
\begin{aligned} t_{n} & \leqslant y\left(\mathbf{x}_{n}\right)+\epsilon+\xi_{n} \\ t_{n} & \geqslant y\left(\mathbf{x}_{n}\right)-\epsilon-\widehat{\xi}_{n} \end{aligned}
tntn⩽y(xn)+ϵ+ξn⩾y(xn)−ϵ−ξ
n
从而目标函数为
C
∑
n
=
1
N
(
ξ
n
+
ξ
^
n
)
+
1
2
∥
w
∥
2
C \sum_{n=1}^{N}\left(\xi_{n}+\widehat{\xi}_{n}\right)+\frac{1}{2}\|\mathbf{w}\|^{2}
Cn=1∑N(ξn+ξ
n)+21∥w∥2约束条件为
t
n
⩽
y
(
x
n
)
+
ϵ
+
ξ
n
t
n
⩾
y
(
x
n
)
−
ϵ
−
ξ
^
n
\begin{array}{l}{t_{n} \leqslant y\left(\mathbf{x}_{n}\right)+\epsilon+\xi_{n}} \\ {t_{n} \geqslant y\left(\mathbf{x}_{n}\right)-\epsilon-\hat{\xi}_{n}}\end{array}
tn⩽y(xn)+ϵ+ξntn⩾y(xn)−ϵ−ξ^n且松弛因子都大于或等于0。按照同样的方式可以得到其对偶形式
L
=
C
∑
n
=
1
N
(
ξ
n
+
ξ
^
n
)
+
1
2
∥
w
∥
2
−
∑
n
=
1
N
(
μ
n
ξ
n
+
μ
^
n
ξ
^
n
)
−
∑
n
=
1
N
a
n
(
ϵ
+
ξ
n
+
y
n
−
t
n
)
−
∑
n
=
1
N
a
^
n
(
ϵ
+
ξ
^
n
−
y
n
+
t
n
)
\begin{aligned} L=& C \sum_{n=1}^{N}\left(\xi_{n}+\widehat{\xi}_{n}\right)+\frac{1}{2}\|\mathbf{w}\|^{2}-\sum_{n=1}^{N}\left(\mu_{n} \xi_{n}+\widehat{\mu}_{n} \hat{\xi}_{n}\right) \\-& \sum_{n=1}^{N} a_{n}\left(\epsilon+\xi_{n}+y_{n}-t_{n}\right)-\sum_{n=1}^{N} \widehat{a}_{n}\left(\epsilon+\widehat{\xi}_{n}-y_{n}+t_{n}\right) \end{aligned}
L=−Cn=1∑N(ξn+ξ
n)+21∥w∥2−n=1∑N(μnξn+μ
nξ^n)n=1∑Nan(ϵ+ξn+yn−tn)−n=1∑Na
n(ϵ+ξ
n−yn+tn)
∂
L
∂
w
=
0
⇒
w
=
∑
n
=
1
N
(
a
n
−
a
^
n
)
ϕ
(
x
n
)
∂
L
∂
b
=
0
⇒
∑
n
=
1
N
(
a
n
−
a
^
n
)
=
0
∂
L
∂
ξ
n
=
0
⇒
a
n
+
μ
n
=
C
∂
L
∂
ξ
^
n
=
0
⇒
a
^
n
+
μ
^
n
=
C
\begin{array}{l}{\frac{\partial L}{\partial \mathbf{w}}=0 \Rightarrow \mathbf{w}=\sum_{n=1}^{N}\left(a_{n}-\widehat{a}_{n}\right) \phi\left(\mathbf{x}_{n}\right)} \\ {\frac{\partial L}{\partial b}=0 \Rightarrow \sum_{n=1}^{N}\left(a_{n}-\widehat{a}_{n}\right)=0} \\ {\frac{\partial L}{\partial \xi_{n}}=0 \quad \Rightarrow \quad a_{n}+\mu_{n}=C} \\ {\frac{\partial L}{\partial \widehat{\xi}_{n}}=0 \quad \Rightarrow \quad \widehat{a}_{n}+\widehat{\mu}_{n}=C}\end{array}
∂w∂L=0⇒w=∑n=1N(an−a
n)ϕ(xn)∂b∂L=0⇒∑n=1N(an−a
n)=0∂ξn∂L=0⇒an+μn=C∂ξ
n∂L=0⇒a
n+μ
n=C
L
~
(
a
,
a
^
)
=
−
1
2
∑
n
=
1
N
∑
m
=
1
N
(
a
n
−
a
^
n
)
(
a
m
−
a
^
m
)
k
(
x
n
,
x
m
)
−
ϵ
∑
n
=
1
N
(
a
n
+
a
^
n
)
+
∑
n
=
1
N
(
a
n
−
a
^
n
)
t
n
\begin{aligned} \widetilde{L}(\mathbf{a}, \widehat{\mathbf{a}})=&-\frac{1}{2} \sum_{n=1}^{N} \sum_{m=1}^{N}\left(a_{n}-\widehat{a}_{n}\right)\left(a_{m}-\widehat{a}_{m}\right) k\left(\mathbf{x}_{n}, \mathbf{x}_{m}\right) \\ &-\epsilon \sum_{n=1}^{N}\left(a_{n}+\widehat{a}_{n}\right)+\sum_{n=1}^{N}\left(a_{n}-\widehat{a}_{n}\right) t_{n} \end{aligned}
L
(a,a
)=−21n=1∑Nm=1∑N(an−a
n)(am−a
m)k(xn,xm)−ϵn=1∑N(an+a
n)+n=1∑N(an−a
n)tn约束为
0
⩽
a
n
⩽
C
0
⩽
a
^
n
⩽
C
\begin{array}{l}{0 \leqslant a_{n} \leqslant C} \\ {0 \leqslant \widehat{a}_{n} \leqslant C}\end{array}
0⩽an⩽C0⩽a
n⩽C对于新点的预测为
y
(
x
)
=
∑
n
=
1
N
(
a
n
−
a
^
n
)
k
(
x
,
x
n
)
+
b
y(\mathbf{x})=\sum_{n=1}^{N}\left(a_{n}-\widehat{a}_{n}\right) k\left(\mathbf{x}, \mathbf{x}_{n}\right)+b
y(x)=n=1∑N(an−a
n)k(x,xn)+b由KKT条件
a
n
(
ϵ
+
ξ
n
+
y
n
−
t
n
)
=
0
a
^
n
(
ϵ
+
ξ
^
n
−
y
n
+
t
n
)
=
0
(
C
−
a
n
)
ξ
n
=
0
(
C
−
a
^
n
)
ξ
^
n
=
0
\begin{aligned} a_{n}\left(\epsilon+\xi_{n}+y_{n}-t_{n}\right) &=0 \\ \widehat{a}_{n}\left(\epsilon+\hat{\xi}_{n}-y_{n}+t_{n}\right) &=0 \\\left(C-a_{n}\right) \xi_{n} &=0 \\\left(C-\widehat{a}_{n}\right) \hat{\xi}_{n} &=0 \end{aligned}
an(ϵ+ξn+yn−tn)a
n(ϵ+ξ^n−yn+tn)(C−an)ξn(C−a
n)ξ^n=0=0=0=0对于
0
<
a
n
<
C
0<a_{n}<C
0<an<C的点为支持向量,由此可以计算
b
b
b。
b
=
t
n
−
ϵ
−
w
T
ϕ
(
x
n
)
=
t
n
−
ϵ
−
∑
m
=
1
N
(
a
m
−
a
^
m
)
k
(
x
n
,
x
m
)
\begin{aligned} b &=t_{n}-\epsilon-\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right) \\ &=t_{n}-\epsilon-\sum_{m=1}^{N}\left(a_{m}-\widehat{a}_{m}\right) k\left(\mathbf{x}_{n}, \mathbf{x}_{m}\right) \end{aligned}
b=tn−ϵ−wTϕ(xn)=tn−ϵ−m=1∑N(am−a
m)k(xn,xm)
7.2 Relevance Vector Machines
正定才能保证是个二次优化问题
7.2.1 RVM for regression
⽤于回归的相关向量机的形式是第3章研究过的线性模型的形式,但是先验概率有所不同,从⽽产⽣了稀疏解。其建模为
p
(
t
∣
x
,
w
,
β
)
=
N
(
t
∣
y
(
x
)
,
β
−
1
)
p(t | \mathbf{x}, \mathbf{w}, \beta)=\mathcal{N}\left(t | y(\mathbf{x}), \beta^{-1}\right)
p(t∣x,w,β)=N(t∣y(x),β−1)其中
y
(
x
)
=
∑
i
=
1
M
w
i
ϕ
i
(
x
)
=
w
T
ϕ
(
x
)
y(\mathbf{x})=\sum_{i=1}^{M} w_{i} \phi_{i}(\mathbf{x})=\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}(\mathbf{x})
y(x)=i=1∑Mwiϕi(x)=wTϕ(x)为了能跟SVM对齐具体地
y
(
x
)
=
∑
n
=
1
N
w
n
k
(
x
,
x
n
)
+
b
y(\mathbf{x})=\sum_{n=1}^{N} w_{n} k\left(\mathbf{x}, \mathbf{x}_{n}\right)+b
y(x)=n=1∑Nwnk(x,xn)+b我们从更一般的情况入手,假设我们有
N
N
N个输入
x
\mathbf x
x,则似然函数为
p
(
t
∣
X
,
w
,
β
)
=
∏
n
=
1
N
p
(
t
n
∣
x
n
,
w
,
β
−
1
)
p(\mathbf{t} | \mathbf{X}, \mathbf{w}, \beta)=\prod_{n=1}^{N} p\left(t_{n} | \mathbf{x}_{n}, \mathbf{w}, \beta^{-1}\right)
p(t∣X,w,β)=n=1∏Np(tn∣xn,w,β−1)我们可以在权重
w
\mathbf w
w上引入先验
p
(
w
∣
α
)
=
∏
i
=
1
M
N
(
w
i
∣
0
,
α
i
−
1
)
p(\mathbf{w} | \boldsymbol{\alpha})=\prod_{i=1}^{M} \mathcal{N}\left(w_{i} | 0, \alpha_{i}^{-1}\right)
p(w∣α)=i=1∏MN(wi∣0,αi−1)那么后验
p
(
w
∣
t
,
X
,
α
,
β
)
=
N
(
w
∣
m
,
Σ
)
p(\mathbf{w} | \mathbf{t}, \mathbf{X}, \boldsymbol{\alpha}, \beta)=\mathcal{N}(\mathbf{w} | \mathbf{m}, \mathbf{\Sigma})
p(w∣t,X,α,β)=N(w∣m,Σ)其中
m
=
β
Σ
Φ
T
t
Σ
=
(
A
+
β
Φ
T
Φ
)
−
1
\begin{aligned} \mathbf{m} &=\beta \boldsymbol{\Sigma} \mathbf{\Phi}^{\mathrm{T}} \mathbf{t} \\ \boldsymbol{\Sigma} &=\left(\mathbf{A}+\beta \boldsymbol{\Phi}^{\mathrm{T}} \mathbf{\Phi}\right)^{-1} \end{aligned}
mΣ=βΣΦTt=(A+βΦTΦ)−1
A
=
d
i
a
g
(
α
i
)
\mathbf{A}=diag(\alpha _i)
A=diag(αi),对于超参数
α
,
β
\mathbf \alpha,\beta
α,β,可以利用近似证据求得
p
(
t
∣
X
,
α
,
β
)
=
∫
p
(
t
∣
X
,
w
,
β
)
p
(
w
∣
α
)
d
w
p(\mathbf{t} | \mathbf{X}, \boldsymbol{\alpha}, \beta)=\int p(\mathbf{t} | \mathbf{X}, \mathbf{w}, \beta) p(\mathbf{w} | \boldsymbol{\alpha}) \mathrm{d} \mathbf{w}
p(t∣X,α,β)=∫p(t∣X,w,β)p(w∣α)dw从而
ln
p
(
t
∣
X
,
α
,
β
)
=
ln
N
(
t
∣
0
,
C
)
=
−
1
2
{
N
ln
(
2
π
)
+
ln
∣
C
∣
+
t
T
C
−
1
t
}
\begin{aligned} \ln p(\mathbf{t} | \mathbf{X}, \boldsymbol{\alpha}, \beta) &=\ln \mathcal{N}(\mathbf{t} | \mathbf{0}, \mathbf{C}) \\ &=-\frac{1}{2}\left\{N \ln (2 \pi)+\ln |\mathbf{C}|+\mathbf{t}^{\mathrm{T}} \mathbf{C}^{-1} \mathbf{t}\right\} \end{aligned}
lnp(t∣X,α,β)=lnN(t∣0,C)=−21{Nln(2π)+ln∣C∣+tTC−1t}其中
C
=
β
−
1
I
+
Φ
A
−
1
Φ
T
\mathbf{C}=\beta^{-1} \mathbf{I}+\mathbf{\Phi} \mathbf{A}^{-1} \mathbf{\Phi}^{\mathrm{T}}
C=β−1I+ΦA−1ΦT见3.5.令导数=0
α
i
new
=
γ
i
m
i
2
(
β
new
)
−
1
=
∥
t
−
Φ
m
∥
2
N
−
∑
i
γ
i
\begin{aligned} \alpha_{i}^{\text { new }} &=\frac{\gamma_{i}}{m_{i}^{2}} \\\left(\beta^{\text { new }}\right)^{-1} &=\frac{\|\mathbf{t}-\mathbf{\Phi} \mathbf{m}\|^{2}}{N-\sum_{i} \gamma_{i}} \end{aligned}
αi new (β new )−1=mi2γi=N−∑iγi∥t−Φm∥2其中
γ
i
=
1
−
α
i
Σ
i
i
\gamma_{i}=1-\alpha_{i} \Sigma_{i i}
γi=1−αiΣii。然后再迭代得到
w
\mathbf w
w的后验,再得到以上估计,如此迭代直至收敛。优化后,可以发现大部分
α
i
\alpha _i
αi会变得很大,从而
w
\mathbf w
w的后验的均值和方差趋于0,那么这些
w
i
\mathbf w_i
wi的值就会变为0,也就是其对应的基函数没什么作用,进而得到稀疏解。
得到了
α
⋆
\boldsymbol{\alpha}^{\star}
α⋆ and
β
⋆
\beta^{\star}
β⋆时,预测分布为
p
(
t
∣
x
,
X
,
t
,
α
⋆
,
β
⋆
)
=
∫
p
(
t
∣
x
,
w
,
β
⋆
)
p
(
w
∣
X
,
t
,
α
⋆
,
β
⋆
)
d
w
=
N
(
t
∣
m
T
ϕ
(
x
)
,
σ
2
(
x
)
)
\begin{aligned} p\left(t | \mathbf{x}, \mathbf{X}, \mathbf{t}, \boldsymbol{\alpha}^{\star}, \beta^{\star}\right) &=\int p\left(t | \mathbf{x}, \mathbf{w}, \beta^{\star}\right) p\left(\mathbf{w} | \mathbf{X}, \mathbf{t}, \boldsymbol{\alpha}^{\star}, \beta^{\star}\right) \mathrm{d} \mathbf{w} \\ &=\mathcal{N}\left(t | \mathbf{m}^{\mathrm{T}} \boldsymbol{\phi}(\mathbf{x}), \sigma^{2}(\mathbf{x})\right) \end{aligned}
p(t∣x,X,t,α⋆,β⋆)=∫p(t∣x,w,β⋆)p(w∣X,t,α⋆,β⋆)dw=N(t∣mTϕ(x),σ2(x))其中
σ
2
(
x
)
=
(
β
⋆
)
−
1
+
ϕ
(
x
)
T
Σ
ϕ
(
x
)
\sigma^{2}(\mathbf{x})=\left(\beta^{\star}\right)^{-1}+\phi(\mathbf{x})^{\mathrm{T}} \boldsymbol{\Sigma} \phi(\mathbf{x})
σ2(x)=(β⋆)−1+ϕ(x)TΣϕ(x)
7.2.2 Analysis of sparsity
我们之前已经注意到⾃动相关性检测的过程使得参数的⼀个⼦集趋于零。我们现在更加详细地考察相关向量机的稀疏性的原理。在这个过程中,我们会得到⼀个与之前的直接⽅法相⽐更快的最优化超参数的⽅法。
直观上说明当基函数向量与观测向量不对齐时,
α
\alpha
α就会趋于无穷大,进而使得该基函数无效。
数学上证明,将其展开
C
=
β
−
1
I
+
∑
j
≠
i
α
j
−
1
φ
j
φ
j
T
+
α
i
−
1
φ
i
φ
i
T
=
C
−
i
+
α
i
−
1
φ
i
φ
i
T
\begin{aligned} \mathbf{C} &=\beta^{-1} \mathbf{I}+\sum_{j \neq i} \alpha_{j}^{-1} \varphi_{j} \boldsymbol{\varphi}_{j}^{\mathrm{T}}+\alpha_{i}^{-1} \boldsymbol{\varphi}_{i} \boldsymbol{\varphi}_{i}^{\mathrm{T}} \\ &=\mathbf{C}_{-i}+\alpha_{i}^{-1} \boldsymbol{\varphi}_{i} \varphi_{i}^{\mathrm{T}} \end{aligned}
C=β−1I+j̸=i∑αj−1φjφjT+αi−1φiφiT=C−i+αi−1φiφiT其中
φ
i
\varphi_{i}
φi denotes the
i
th
i^{\text { th }}
i th column of
Φ
\Phi
Φ,即
(
ϕ
i
(
x
1
)
,
…
,
ϕ
i
(
x
N
)
)
\left(\phi_{i}\left(\boldsymbol{x}_{1}\right), \ldots, \phi_{i}\left(\boldsymbol{x}_{N}\right)\right)
(ϕi(x1),…,ϕi(xN));
ϕ
n
,
\phi_{n},
ϕn, which denotes the
n
th
n^{\text { th }}
n th row of
Φ
\Phi
Φ;根据矩阵恒等式
∣
C
∣
=
∣
C
−
i
∥
1
+
α
i
−
1
φ
i
T
C
−
i
−
1
φ
i
∣
C
−
1
=
C
−
i
−
1
−
C
−
i
−
1
φ
i
φ
i
T
C
−
i
−
1
α
i
+
φ
i
T
C
−
i
−
1
φ
i
\begin{aligned}|\mathbf{C}| &=\left|\mathbf{C}_{-i} \| 1+\alpha_{i}^{-1} \boldsymbol{\varphi}_{i}^{\mathrm{T}} \mathbf{C}_{-i}^{-1} \boldsymbol{\varphi}_{i}\right| \\ \mathbf{C}^{-1} &=\mathbf{C}_{-i}^{-1}-\frac{\mathbf{C}_{-i}^{-1} \varphi_{i} \varphi_{i}^{\mathrm{T}} \mathbf{C}_{-i}^{-1}}{\alpha_{i}+\varphi_{i}^{\mathrm{T}} \mathbf{C}_{-i}^{-1} \boldsymbol{\varphi}_{i}} \end{aligned}
∣C∣C−1=∣∣C−i∥1+αi−1φiTC−i−1φi∣∣=C−i−1−αi+φiTC−i−1φiC−i−1φiφiTC−i−1则之前的似然函数可以改写为
L
(
α
)
=
L
(
α
−
i
)
+
λ
(
α
i
)
L(\boldsymbol{\alpha})=L\left(\boldsymbol{\alpha}_{-i}\right)+\lambda\left(\alpha_{i}\right)
L(α)=L(α−i)+λ(αi)其中
λ
(
α
i
)
=
1
2
[
ln
α
i
−
ln
(
α
i
+
s
i
∣
)
+
q
i
2
α
i
+
s
i
]
\lambda\left(\alpha_{i}\right)=\frac{1}{2}\left[\ln \alpha_{i}-\ln \left(\alpha_{i}+s_{i} |\right)+\frac{q_{i}^{2}}{\alpha_{i}+s_{i}}\right]
λ(αi)=21[lnαi−ln(αi+si∣)+αi+siqi2]上式包含了所有关于
α
i
\alpha_i
αi,引入
s
i
=
φ
i
T
C
−
i
−
1
φ
i
q
i
=
φ
i
T
C
−
i
−
1
t
\begin{aligned} s_{i} &=\varphi_{i}^{\mathrm{T}} \mathbf{C}_{-i}^{-1} \varphi_{i} \\ q_{i} &=\varphi_{i}^{\mathrm{T}} \mathbf{C}_{-i}^{-1} \mathbf{t} \end{aligned}
siqi=φiTC−i−1φi=φiTC−i−1t
导数为0
d
λ
(
α
i
)
d
α
i
=
α
i
−
1
s
i
2
−
(
q
i
2
−
s
i
)
2
(
α
i
+
s
i
)
2
\frac{\mathrm{d} \lambda\left(\alpha_{i}\right)}{\mathrm{d} \alpha_{i}}=\frac{\alpha_{i}^{-1} s_{i}^{2}-\left(q_{i}^{2}-s_{i}\right)}{2\left(\alpha_{i}+s_{i}\right)^{2}}
dαidλ(αi)=2(αi+si)2αi−1si2−(qi2−si)
7.2.3 RVM for classification
我们可以将相关向量机框架推⼴到分类问题,推⼴的⽅法是将权值的ARD先验应⽤到第4章研究过的概率线性分类模型上。⾸先,我们考虑⼆分类问题,⽬标变量是⼆值变量
t
∈
{
0
,
1
}
t \in\{0,1\}
t∈{0,1}。这个模型现在的形式为基函数的线性组合经过logistic sigmoid函数的变换,即
y
(
x
,
w
)
=
σ
(
w
T
ϕ
(
x
)
)
y(\mathbf{x}, \mathbf{w})=\sigma\left(\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}(\mathbf{x})\right)
y(x,w)=σ(wTϕ(x))如果我们对权重施加一个高斯先验,那么就变成了第四章中研究过的问题,我们采用ARD先验,即对每个权重施加一个不同精度得高斯分布。由于权重的后验不再是高斯了,因此可以采用拉普拉斯近似
ln
p
(
w
∣
t
,
α
)
=
ln
{
p
(
t
∣
w
)
p
(
w
∣
α
)
}
−
ln
p
(
t
∣
α
)
=
∑
n
=
1
N
{
t
n
ln
y
n
+
(
1
−
t
n
)
ln
(
1
−
y
n
)
}
−
1
2
w
T
A
w
+
c
o
n
s
t
\begin{array}{l}{\ln p(\mathbf{w} | \mathbf{t}, \boldsymbol{\alpha})=\ln \{p(\mathbf{t} | \mathbf{w}) p(\mathbf{w} | \boldsymbol{\alpha})\}-\ln p(\mathbf{t} | \boldsymbol{\alpha})} \\ {\quad=\sum_{n=1}^{N}\left\{t_{n} \ln y_{n}+\left(1-t_{n}\right) \ln \left(1-y_{n}\right)\right\}-\frac{1}{2} \mathbf{w}^{\mathrm{T}} \mathbf{A} \mathbf{w}+\mathrm{const}}\end{array}
lnp(w∣t,α)=ln{p(t∣w)p(w∣α)}−lnp(t∣α)=∑n=1N{tnlnyn+(1−tn)ln(1−yn)}−21wTAw+const则
∇
ln
p
(
w
∣
t
,
α
)
=
Φ
T
(
t
−
y
)
−
A
w
∇
∇
ln
p
(
w
∣
t
,
α
)
=
−
(
Φ
T
B
Φ
+
A
)
\begin{aligned} \nabla \ln p(\mathbf{w} | \mathbf{t}, \boldsymbol{\alpha}) &=\mathbf{\Phi}^{\mathrm{T}}(\mathbf{t}-\mathbf{y})-\mathbf{A} \mathbf{w} \\ \nabla \nabla \ln p(\mathbf{w} | \mathbf{t}, \boldsymbol{\alpha}) &=-\left(\mathbf{\Phi}^{\mathrm{T}} \mathbf{B} \mathbf{\Phi}+\mathbf{A}\right) \end{aligned}
∇lnp(w∣t,α)∇∇lnp(w∣t,α)=ΦT(t−y)−Aw=−(ΦTBΦ+A)其中
B
\mathbf B
B为
N
×
N
N\times N
N×N的对角矩阵
b
n
=
y
n
(
1
−
y
n
)
b_{n}=y_{n}\left(1-y_{n}\right)
bn=yn(1−yn)。
w
⋆
=
A
−
1
Φ
T
(
t
−
y
)
Σ
=
(
Φ
T
B
Φ
+
A
)
−
1
\begin{aligned} \mathbf{w}^{\star} &=\mathbf{A}^{-1} \mathbf{\Phi}^{\mathrm{T}}(\mathbf{t}-\mathbf{y}) \\ \boldsymbol{\Sigma} &=\left(\mathbf{\Phi}^{\mathrm{T}} \mathbf{B} \Phi+\mathbf{A}\right)^{-1} \end{aligned}
w⋆Σ=A−1ΦT(t−y)=(ΦTBΦ+A)−1采用拉普拉斯近似
p
(
t
∣
α
)
=
∫
p
(
t
∣
w
)
p
(
w
∣
α
)
d
w
≃
p
(
t
∣
w
⋆
)
p
(
w
⋆
∣
α
)
(
2
π
)
M
/
2
∣
Σ
∣
1
/
2
\begin{aligned} p(\mathbf{t} | \boldsymbol{\alpha}) &=\int p(\mathbf{t} | \mathbf{w}) p(\mathbf{w} | \boldsymbol{\alpha}) \mathrm{d} \mathbf{w} \\ & \simeq p\left(\mathbf{t} | \mathbf{w}^{\star}\right) p\left(\mathbf{w}^{\star} | \boldsymbol{\alpha}\right)(2 \pi)^{M / 2}|\mathbf{\Sigma}|^{1 / 2} \end{aligned}
p(t∣α)=∫p(t∣w)p(w∣α)dw≃p(t∣w⋆)p(w⋆∣α)(2π)M/2∣Σ∣1/2代入了后求导为0
−
1
2
(
w
i
⋆
)
2
+
1
2
α
i
−
1
2
Σ
i
i
=
0
-\frac{1}{2}\left(w_{i}^{\star}\right)^{2}+\frac{1}{2 \alpha_{i}}-\frac{1}{2} \Sigma_{i i}=0
−21(wi⋆)2+2αi1−21Σii=0从而
α
i
new
=
γ
i
(
w
i
⋆
)
2
\alpha_{i}^{\text { new }}=\frac{\gamma_{i}}{\left(w_{i}^{\star}\right)^{2}}
αi new =(wi⋆)2γi其中
γ
i
=
1
−
α
i
Σ
i
i
\gamma_{i}=1-\alpha_{i} \Sigma_{i i}
γi=1−αiΣii定义
t
^
=
Φ
w
⋆
+
B
−
1
(
t
−
y
)
\widehat{\mathbf{t}}=\mathbf{\Phi} \mathbf{w}^{\star}+\mathbf{B}^{-1}(\mathbf{t}-\mathbf{y})
t
=Φw⋆+B−1(t−y),则
ln
p
(
t
∣
α
,
β
)
=
−
1
2
{
N
ln
(
2
π
)
+
ln
∣
C
∣
+
(
t
^
)
T
C
−
1
t
^
}
\ln p(\mathbf{t} | \boldsymbol{\alpha}, \beta)=-\frac{1}{2}\left\{N \ln (2 \pi)+\ln |\mathbf{C}|+(\widehat{\mathbf{t}})^{\mathrm{T}} \mathbf{C}^{-1} \widehat{\mathbf{t}}\right\}
lnp(t∣α,β)=−21{Nln(2π)+ln∣C∣+(t
)TC−1t
}其中
C
=
B
+
Φ
A
Φ
T
\mathbf{C}=\mathbf{B}+\mathbf{\Phi} \mathbf{A} \mathbf{\Phi}^{\mathrm{T}}
C=B+ΦAΦT以上形式跟回归问题一样可以进行稀疏性分析,同样可以得到一个快速算法。