支持向量机是一种二类分类模型。学习方法是间隔最大化
首先我们来了解一下支持向量和间隔的概念。
支持向量和间隔
分类学习最基本的想法就是基于训练集D在样本空间中找到一个划分超平面,将不同类别的样本分开.但能将训练样本分开的划分超平面可能有很多,如图所示,我们应该努力去找到哪一个呢?
以一个二分类问题为例,给定训练样本集
D
=
(
x
1
,
y
1
)
,
(
x
2
,
y
2
)
…
(
x
m
,
y
m
)
,
y
i
∈
{
−
1
,
+
1
}
,
D= {(x_1,y_1), (x_2, y_2)\dots(x_m,y_m)},yi∈\{-1,+1\},
D=(x1,y1),(x2,y2)…(xm,ym),yi∈{−1,+1},,图中有很多条直线可即将正类和负类划分开,但是我们要找的这条直线必须泛化能力强,也就是不仅要在训练集上表现的好,在测试集上也要准确度高,在图像上可以看到我们选择的这条直线(黑色)最好是离两边的样本都越远越好,这样实际测试情况中,靠近这条线的样本就会比其他直线少一些,即容错率高一些,误分类的样本就会少一些。
设一个二分类的线性模型:
y
=
w
x
+
b
y=wx+b
y=wx+b(假设只含有一个参数),则划分样本空间的线性方程为
w
x
+
b
=
0
wx+b=0
wx+b=0,
然后使用相应的分类决策函数
f
(
x
)
=
s
i
g
n
(
w
x
+
b
)
f(x)=sign(wx+b)
f(x)=sign(wx+b)进行分类,称之为线性可分支持向量机。
若该方程能够正确的将训练样本分类则对于所有
y
i
>
1
y_i>1
yi>1的样本将满足
w
x
i
+
b
>
1
wx_i+b>1
wxi+b>1
,对于
y
i
<
−
1
y_i<-1
yi<−1的样本,则
w
x
i
+
b
<
−
1
wx_i+b<-1
wxi+b<−1,即:
{
w
x
i
+
b
⩾
+
1
,
y
i
=
+
1
w
x
i
+
b
⩽
−
1
,
y
i
=
−
1
\left\{\begin{array}{ll}{{w}{x}_{i}+b \geqslant+1,} & {y_{i}=+1} \\ {{w}{x}_{i}+b \leqslant-1,} & {y_{i}=-1}\end{array}\right.
{wxi+b⩾+1,wxi+b⩽−1,yi=+1yi=−1
样本
x
i
x_i
xi到这条直线的距离为:
r
=
∣
w
x
+
b
∣
∥
w
∥
r=\frac{\left|{w} {x}+b\right|}{\|{w}\|}
r=∥w∥∣wx+b∣
而当给出的数据时具有多属性时,就要将参数
w
w
w换成向量
w
,
\bm w,
w,由前面学习的线性模型的知识可以得到线性模型
y
=
w
T
x
+
b
,
y=\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b,
y=wTx+b,,划分超平面的线性方程是:
w
T
x
+
b
=
0
\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b=0
wTx+b=0.
此时我们要找到的是一个可以将样本划分的超平面,样本空间可以想象成一个多维空间,此时样本空间中的点
x
\bm x
x到超平面的距离:
r
=
∣
w
T
x
+
b
∣
∥
w
∥
r=\frac{\left|\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b\right|}{\|\boldsymbol{w}\|}
r=∥w∥∣∣wTx+b∣∣
如图所示,我们将满足约束条件式
w
T
x
i
+
b
=
+
1
或
w
T
x
i
+
b
=
−
1
\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{i}+b =+1或\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{i}+b =-1
wTxi+b=+1或wTxi+b=−1的点(即图中虚线表示的点)称为支持向量(
x
\bm x
x具有多种属性,是一个多维向量)。两个不同类的支持向量到划分超平面的距离之和称之为间隔,即
γ
=
1
∥
w
∥
+
1
∥
w
∥
=
2
∥
w
∥
\gamma=\frac{1}{{\|\boldsymbol{w}\|}}+\frac{1}{{\|\boldsymbol{w}\|}}=\frac{2}{\|\boldsymbol{w}\|}
γ=∥w∥1+∥w∥1=∥w∥2
由前面的分析可以得到,我们要找的划分超平面要使得划分样本到该面的距离最大(最大间隔分类超平面),即获得
m
a
x
2
∣
∣
w
∣
∣
max \frac{2}{||\bm w||}
max∣∣w∣∣2,并求得此时的参数
w
,
b
\bm w,b
w,b。其中
∣
∣
w
∣
∣
=
∑
i
=
1
m
(
w
i
2
)
||\bm w||=\sqrt{\sum_{i=1}^m(w_i^2)}
∣∣w∣∣=∑i=1m(wi2)
要求
m
a
x
2
∣
∣
w
∣
∣
max \frac{2}{||\bm w||}
max∣∣w∣∣2,即求
m
a
x
∣
∣
w
∣
∣
−
1
max ||\bm w||^{-1}
max∣∣w∣∣−1,等价于最小化
1
2
∣
∣
w
∣
∣
2
\frac{1}{2}||\bm w||^2
21∣∣w∣∣2,
所以我们就可以得到要求一个支持向量机的基本型,即:
min
w
,
b
1
2
∥
w
∥
2
约束条件:
y
i
(
w
T
x
i
+
b
)
⩾
1
,
i
=
1
,
2
,
…
,
m
(
1
)
\begin{array}{l}{\min _{\boldsymbol{w}, b} \frac{1}{2}\|\boldsymbol{w}\|^{2}}\\ \\ {\text { 约束条件:\quad } y_{i}\left(\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{i}+b\right) \geqslant 1, \quad i=1,2, \ldots, m}\end{array} \quad\quad(1)
minw,b21∥w∥2 约束条件:yi(wTxi+b)⩾1,i=1,2,…,m(1),约束条件表示分类能否正确,
b
\quad b
b通过约束条件影响着
w
\bm w
w的取值。
- 若训练数据集线性可分,则可将训练数据集中的样本点完全正确分开的最大间隔超平面存在且唯一。
- 在决定分离超平面时,只有支持向量起作用,而其他实例点并不起作用,(而线性逻辑回归会考虑所有的样本点)如果移动支持向量将改变所求的解,但是在间隔边界以外移动实例点,解不会改变,由于支持向量在决定分离超平面中起着决定性作用,所以将这种分类模型称为支持向量机。
公式推导
上式(1)可以通过求其对偶问题来求上式的解。
使用拉格朗日乘子法就转变成对偶问题,(类似于求条件极值,关于拉格朗日乘子法和KKT条件可以参考拉格朗日乘子法和KKT条件这篇文章)
- 对每条约束添加 α i , i = 1 , 2 , 3... m \alpha_i,i=1,2,3...m αi,i=1,2,3...m,
- 其拉格朗日函数可表示为 L ( w , b , α ) = 1 2 ∥ w ∥ 2 + ∑ i = 1 m α i ( 1 − y i ( w T x i + b ) ) ( 2 ) L(\boldsymbol{w}, b, \boldsymbol{\alpha})=\frac{1}{2}\|\boldsymbol{w}\|^{2}+\sum_{i=1}^{m} \alpha_{i}\left(1-y_{i}\left(\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{i}+b\right)\right)\quad\quad(\bm2) L(w,b,α)=21∥w∥2+i=1∑mαi(1−yi(wTxi+b))(2)
- (
2
\bm2
2)式可写成
L
(
w
,
b
,
α
)
=
1
2
∥
w
∥
2
+
∑
i
=
1
m
α
i
(
1
−
y
i
(
w
T
x
i
+
b
)
)
=
1
2
∥
w
∥
2
+
∑
i
=
1
m
(
α
i
−
α
i
y
i
w
T
x
i
−
α
i
y
i
b
)
=
1
2
w
T
w
+
∑
i
=
1
m
α
i
−
∑
i
=
1
m
α
i
y
i
w
T
x
i
−
∑
i
=
1
m
α
i
y
i
b
\begin{aligned} L(\boldsymbol{w}, b, \boldsymbol{\alpha}) &=\frac{1}{2}\|\boldsymbol{w}\|^{2}+\sum_{i=1}^{m} \alpha_{i}\left(1-y_{i}\left(\boldsymbol{w}^{T} \boldsymbol{x}_{i}+b\right)\right) \\ &=\frac{1}{2}\|\boldsymbol{w}\|^{2}+\sum_{i=1}^{m}\left(\alpha_{i}-\alpha_{i} y_{i} \boldsymbol{w}^{T} \boldsymbol{x}_{i}-\alpha_{i} y_{i} b\right) \\ &=\frac{1}{2} \boldsymbol{w}^{T} \boldsymbol{w}+\sum_{i=1}^{m} \alpha_{i}-\sum_{i=1}^{m} \alpha_{i} y_{i} \boldsymbol{w}^{T} \boldsymbol{x}_{i}-\sum_{i=1}^{m} \alpha_{i} y_{i} b \end{aligned}
L(w,b,α)=21∥w∥2+i=1∑mαi(1−yi(wTxi+b))=21∥w∥2+i=1∑m(αi−αiyiwTxi−αiyib)=21wTw+i=1∑mαi−i=1∑mαiyiwTxi−i=1∑mαiyib
L L L分别对 w , b \bm w,b w,b求偏导,并令偏导为零得 ∂ L ∂ w = 1 2 × 2 × w + 0 − ∑ i = 1 m α i y i x i − 0 = 0 ⟹ w = ∑ i = 1 m α i y i x i ( 3 ) ∂ L ∂ b = 0 + 0 − 0 − ∑ i = 1 m α i y i = 0 ⟹ ∑ i = 1 m α i y i = 0 ( 4 ) \begin{array}{c}{\frac{\partial L}{\partial \boldsymbol{w}}=\frac{1}{2} \times 2 \times \boldsymbol{w}+0-\sum_{i=1}^{m} \alpha_{i} y_{i} \boldsymbol{x}_{i}-0=0 \Longrightarrow \boldsymbol{w}=\sum_{i=1}^{m} \alpha_{i} y_{i} \boldsymbol{x}_{i}} \quad(\bm3)\\ \\{\frac{\partial L}{\partial b}=0+0-0-\sum_{i=1}^{m} \alpha_{i} y_{i}=0 \Longrightarrow \sum_{i=1}^{m} \alpha_{i} y_{i}=0}\end{array}\quad(4) ∂w∂L=21×2×w+0−∑i=1mαiyixi−0=0⟹w=∑i=1mαiyixi(3)∂b∂L=0+0−0−∑i=1mαiyi=0⟹∑i=1mαiyi=0(4)
将(3)代入(2),考虑(4)约束条件即可得到(1)式的对偶问题:
min w , b L ( w , b , α ) = 1 2 w T w + ∑ i = 1 m α i − ∑ i = 1 m α i y i w T x i − ∑ i = 1 m α i y i b = 1 2 w T ∑ i = 1 m α i y i x i − w T ∑ i = 1 m α i y i x i + ∑ i = 1 m α i − b ∑ i = 1 m α i y i = − 1 2 w T ∑ i = 1 m α i y i x i + ∑ i = 1 m α i − b ∑ i = 1 m α i y i \begin{aligned} \min _{\boldsymbol{w}, b} L(\boldsymbol{w}, b, \boldsymbol{\alpha}) &=\frac{1}{2} \boldsymbol{w}^{T} \boldsymbol{w}+\sum_{i=1}^{m} \alpha_{i}-\sum_{i=1}^{m} \alpha_{i} y_{i} \boldsymbol{w}^{T} \boldsymbol{x}_{i}-\sum_{i=1}^{m} \alpha_{i} y_{i} b \\ &=\frac{1}{2} \boldsymbol{w}^{T} \sum_{i=1}^{m} \alpha_{i} y_{i} \boldsymbol{x}_{i}-\boldsymbol{w}^{T} \sum_{i=1}^{m} \alpha_{i} y_{i} \boldsymbol{x}_{i}+\sum_{i=1}^{m} \alpha_{i}-b \sum_{i=1}^{m} \alpha_{i} y_{i} \\ &=-\frac{1}{2} \boldsymbol{w}^{T} \sum_{i=1}^{m} \alpha_{i} y_{i} \boldsymbol{x}_{i}+\sum_{i=1}^{m} \alpha_{i}-b \sum_{i=1}^{m} \alpha_{i} y_{i} \end{aligned} w,bminL(w,b,α)=21wTw+i=1∑mαi−i=1∑mαiyiwTxi−i=1∑mαiyib=21wTi=1∑mαiyixi−wTi=1∑mαiyixi+i=1∑mαi−bi=1∑mαiyi=−21wTi=1∑mαiyixi+i=1∑mαi−bi=1∑mαiyi
因为: ∑ i = 1 m α i y i = 0 \sum_{i=1}^{m} \alpha_{i} y_{i}=0 ∑i=1mαiyi=0,所以上式
min w , b L ( w , b , α ) = − 1 2 w T ∑ i = 1 m α i y i x i + ∑ i = 1 m α i = − 1 2 ( ∑ i = 1 m α i y i x i ) T ( ∑ i = 1 m α i y i x i ) + ∑ i = 1 m α i = − 1 2 ∑ i = 1 m α i y i x i T ∑ i = 1 m α i y i x i + ∑ i = 1 m α i = ∑ i = 1 m α i − 1 2 ∑ i = 1 m ∑ j = 1 m α i α j y i y j x i T x j \begin{aligned} \min _{\boldsymbol{w}, b} L(\boldsymbol{w}, b, \boldsymbol{\alpha}) &=-\frac{1}{2} \boldsymbol{w}^{T} \sum_{i=1}^{m} \alpha_{i} y_{i} \boldsymbol{x}_{i}+\sum_{i=1}^{m} \alpha_{i} \\ &=-\frac{1}{2}\left(\sum_{i=1}^{m} \alpha_{i} y_{i} \boldsymbol{x}_{i}\right)^{T}\left(\sum_{i=1}^{m} \alpha_{i} y_{i} \boldsymbol{x}_{i}\right)+\sum_{i=1}^{m} \alpha_{i} \\ &=-\frac{1}{2} \sum_{i=1}^{m} \alpha_{i} y_{i} \boldsymbol{x}_{i}^{T} \sum_{i=1}^{m} \alpha_{i} y_{i} \boldsymbol{x}_{i}+\sum_{i=1}^{m} \alpha_{i} \\ &=\sum_{i=1}^{m} \alpha_{i}-\frac{1}{2} \sum_{i=1}^{m} \sum_{j=1}^{m} \alpha_{i} \alpha_{j} y_{i} y_{j} \boldsymbol{x}_{i}^{T} \boldsymbol{x}_{j} \end{aligned} w,bminL(w,b,α)=−21wTi=1∑mαiyixi+i=1∑mαi=−21(i=1∑mαiyixi)T(i=1∑mαiyixi)+i=1∑mαi=−21i=1∑mαiyixiTi=1∑mαiyixi+i=1∑mαi=i=1∑mαi−21i=1∑mj=1∑mαiαjyiyjxiTxj
即: max α min w , b L ( w , b , α ) = max α ∑ i = 1 m α i − 1 2 ∑ i = 1 m ∑ j = 1 m α i α j y i y j x i T x j s.t. ∑ i = 1 N α i y i = 0 α i ⩾ 0 , i = 1 , 2 , ⋯   , m \max _{\alpha} \min _{\boldsymbol{w}, b} L(\boldsymbol{w}, b, \boldsymbol{\alpha})=\max _{\boldsymbol{\alpha}}\quad \sum_{i=1}^{m} \alpha_{i}-\frac{1}{2} \sum_{i=1}^{m} \sum_{j=1}^{m} \alpha_{i} \alpha_{j} y_{i} y_{j} \boldsymbol{x}_{i}^{T} \boldsymbol{x}_{j}\\\\\begin{array}{c}{\text { s.t. } \quad \sum_{i=1}^{N} \alpha_{i} y_{i}=0} \\ {\alpha_{i} \geqslant 0, \quad i=1,2, \cdots, m}\end{array} αmaxw,bminL(w,b,α)=αmaxi=1∑mαi−21i=1∑mj=1∑mαiαjyiyjxiTxj s.t. ∑i=1Nαiyi=0αi⩾0,i=1,2,⋯,m
上式除 α \alpha α外均已知,因此可求得 α \alpha α,然后在求得 w , b \bm w,b w,b,就可求得模型:
f ( x ) = w T x + b = ∑ i = 1 m α i y i x i T x + b \begin{aligned} f(\boldsymbol{x}) &=\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b \\ &=\sum_{i=1}^{m} \alpha_{i} y_{i} \boldsymbol{x}_{i}^{\mathrm{T}} \boldsymbol{x}+b \end{aligned} f(x)=wTx+b=i=1∑mαiyixiTx+b,注意结果需满足KKT条件: { α i ⩾ 0 y i f ( x i ) − 1 ⩾ 0 α i ( y i f ( x i ) − 1 ) = 0 \left\{\begin{array}{l}{\alpha_{i} \geqslant 0} \\ {y_{i} f\left(\boldsymbol{x}_{i}\right)-1 \geqslant 0} \\ {\alpha_{i}\left(y_{i} f\left(\boldsymbol{x}_{i}\right)-1\right)=0}\end{array}\right. ⎩⎨⎧αi⩾0yif(xi)−1⩾0αi(yif(xi)−1)=0
解得 α \alpha α中满足 α > 0 \alpha>0 α>0的实例点 x i \bm x_i xi称为支持向量,支持向量可在间隔边界上,也可在间隔边界与分离超平面之间。最佳分离超平面由支持向量完全决定。
软间隔
通常情况下,会有一些样本不满足约束条件,
我们要怎样处理这些样本呢,在最大化间隔的同时,应该允许一些样本不满足约束条件
y
i
(
w
T
x
i
+
b
)
⩾
1
y_{i}\left(\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{i}+b\right) \geqslant 1
yi(wTxi+b)⩾1;同时使不满足约束条件的样本尽可能的少
即设置软间隔:
y
i
(
w
T
x
i
+
b
)
⩾
1
−
ξ
i
y_{i}\left(\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{i}+b\right) \geqslant 1-\xi_i
yi(wTxi+b)⩾1−ξi,同时我们要平衡最大化间隔和分类误差,
ξ
i
\xi_i
ξi大于等于0,称为松弛变量,即正则化损失函数:
min
w
,
b
,
ξ
i
1
2
∥
w
∥
2
+
C
∑
i
=
1
m
ξ
i
s.t.
y
i
(
w
T
x
i
+
b
)
⩾
1
−
ξ
i
ξ
i
⩾
0
,
i
=
1
,
2
,
…
,
m
C
是
惩
罚
系
数
\min _{w, b, \xi_{i}} \frac{1}{2}\|\boldsymbol{w}\|^{2}+C \sum_{i=1}^{m} \xi_{i}\quad\quad\quad \begin{array}{c}{\text { s.t. } \quad y_{i}\left(\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}_{i}+b\right) \geqslant 1-\xi_{i}} \\ {\xi_{i} \geqslant 0, i=1,2, \ldots, m}\end{array}\\\quad\quad \quad C是惩罚系数
w,b,ξimin21∥w∥2+Ci=1∑mξi s.t. yi(wTxi+b)⩾1−ξiξi⩾0,i=1,2,…,mC是惩罚系数
ξ
i
\xi_i
ξi可以用常见的几种损失函数来计算松弛变量,即处理不满足约束条件的值,
hinge损失:
ℓ
hinge
(
z
)
=
max
(
0
,
1
−
z
)
\ell_{\text {hinge}}(z)=\max (0,1-z)
ℓhinge(z)=max(0,1−z)
指数损失:
ℓ
e
x
p
(
z
)
=
exp
(
−
z
)
\ell_{e x p}(z)=\exp (-z)
ℓexp(z)=exp(−z)
对率损失:
ℓ
l
o
g
(
z
)
=
log
(
1
+
exp
(
−
z
)
)
\ell_{l o g}(z)=\log (1+\exp (-z))
ℓlog(z)=log(1+exp(−z))
核函数
除了上述情况外,还有可能出现的在低维平面上无法进行线性分类的情况,例如在逻辑回归中讲到的异或问题,此时我们可以通过坐标变换等,将低维空间的样本映射到高维空间,在高维空间进行分类。
如上图所示,图中A,B为一类,C,D为一类,在二维平面上我们无法进行分类,此时我们可以将平面沿某一条直线对折如上右图,C,D就在3维空间上就是在同一平面内,就可以进行分类了。
这个翻折的过程就等价于
ϕ
(
x
i
)
\phi\left(\boldsymbol{x}_{i}\right)
ϕ(xi)。
通过
ϕ
(
x
i
)
\phi\left(\boldsymbol{x}_{i}\right)
ϕ(xi)这个函数我们可以将低维平面上的
x
\bm x
x坐标(每个坐标位置表示一个属性)映射到高维平面上,(如果原始空间是有限维,即属性有限,那么一定存在一个高维特征空间使样本可分。)然后就可以使用线性支持向量机进行求解。
由前面的知识可得:
max
α
∑
i
=
1
m
α
i
−
1
2
∑
i
=
1
m
∑
j
=
1
m
α
i
α
j
y
i
y
j
ϕ
(
x
i
)
T
ϕ
(
x
j
)
s.t.
∑
i
=
1
m
α
i
y
i
=
0
α
i
⩾
0
,
i
=
1
,
2
,
…
,
m
\begin{array}{c}{\max _{\alpha} \quad \sum_{i=1}^{m} \alpha_{i}-\frac{1}{2} \sum_{i=1}^{m} \sum_{j=1}^{m} \alpha_{i} \alpha_{j} y_{i} y_{j} \phi\left(x_{i}\right)^{\mathrm{T}} \phi\left(x_{j}\right)} \\ {} \\ {\text { s.t. } \sum_{i=1}^{m} \alpha_{i} y_{i}=0} \\ {\alpha_{i} \geqslant 0, \quad i=1,2, \ldots, m}\end{array}
maxα∑i=1mαi−21∑i=1m∑j=1mαiαjyiyjϕ(xi)Tϕ(xj) s.t. ∑i=1mαiyi=0αi⩾0,i=1,2,…,m
而通常求解一个高维空间中的
x
i
,
x
j
\bm x_i,\bm x_j
xi,xj的内积:
ϕ
(
x
i
)
T
ϕ
(
x
j
)
\phi\left(x_{i}\right)^{\mathrm{T}} \phi\left(x_{j}\right)
ϕ(xi)Tϕ(xj)是比较麻烦的,现在我们有这样的一个函数使得:
κ
(
x
i
,
x
j
)
=
⟨
ϕ
(
x
i
)
,
ϕ
(
x
j
)
⟩
=
ϕ
(
x
i
)
T
ϕ
(
x
j
)
\kappa\left(\boldsymbol{x}_{i}, \boldsymbol{x}_{j}\right)=\left\langle\phi\left(\boldsymbol{x}_{i}\right), \phi\left(\boldsymbol{x}_{j}\right)\right\rangle=\phi\left(\boldsymbol{x}_{i}\right)^{\mathrm{T}} \phi\left(\boldsymbol{x}_{j}\right)
κ(xi,xj)=⟨ϕ(xi),ϕ(xj)⟩=ϕ(xi)Tϕ(xj)
即
κ
(
x
i
,
x
j
)
\kappa\left(\boldsymbol{x}_{i}, \boldsymbol{x}_{j}\right)
κ(xi,xj)表示
x
i
,
x
j
\bm x_i,\bm x_j
xi,xj在低维空间中通过代入KaTeX parse error: Expected '\right', got 'EOF' at end of input: …ldsymbol{x}_{i}可以等同于在高维中求解
ϕ
(
x
i
)
T
ϕ
(
x
j
)
\phi\left(\boldsymbol{x}_{i}\right)^{\mathrm{T}} \phi\left(\boldsymbol{x}_{j}\right)
ϕ(xi)Tϕ(xj)。
κ
(
x
i
,
x
j
)
\kappa\left(\boldsymbol{x}_{i}, \boldsymbol{x}_{j}\right)
κ(xi,xj)称之为核函数。
即我们可以通过低维空间的运算,就可以得到
x
i
,
x
j
\bm x_i,\bm x_j
xi,xj变换到高维空间中的内积,就会减少很多运算。可以重写模型函数:
max
α
∑
i
=
1
m
α
i
−
1
2
∑
i
=
1
m
∑
j
=
1
m
α
i
α
j
y
i
y
j
κ
(
x
i
,
x
j
)
s.t.
∑
i
=
1
m
α
i
y
i
=
0
α
i
⩾
0
,
i
=
1
,
2
,
…
,
m
\begin{aligned} \max _{\boldsymbol{\alpha}} &\quad\quad \sum_{i=1}^{m} \alpha_{i}-\frac{1}{2} \sum_{i=1}^{m} \sum_{j=1}^{m} \alpha_{i} \alpha_{j} y_{i} y_{j} \kappa\left(\boldsymbol{x}_{i}, \boldsymbol{x}_{j}\right) \\ \text { s.t. } & \sum_{i=1}^{m} \alpha_{i} y_{i}=0 \\ & \alpha_{i} \geqslant 0, \quad i=1,2, \ldots, m \end{aligned}
αmax s.t. i=1∑mαi−21i=1∑mj=1∑mαiαjyiyjκ(xi,xj)i=1∑mαiyi=0αi⩾0,i=1,2,…,m
求解可得
f
(
x
)
=
w
T
ϕ
(
x
)
+
b
=
∑
i
=
1
m
α
i
y
i
ϕ
(
x
i
)
T
ϕ
(
x
)
+
b
=
∑
i
=
1
m
α
i
y
i
κ
(
x
,
x
i
)
+
b
\begin{aligned} f(\boldsymbol{x}) &=\boldsymbol{w}^{\mathrm{T}} \phi(\boldsymbol{x})+b \\ &=\sum_{i=1}^{m} \alpha_{i} y_{i} \phi\left(\boldsymbol{x}_{i}\right)^{\mathrm{T}} \phi(\boldsymbol{x})+b \\ &=\sum_{i=1}^{m} \alpha_{i} y_{i} \kappa\left(\boldsymbol{x}, \boldsymbol{x}_{i}\right)+b \end{aligned}
f(x)=wTϕ(x)+b=i=1∑mαiyiϕ(xi)Tϕ(x)+b=i=1∑mαiyiκ(x,xi)+b