3.1 问题定义
现实任务中,训练样本经常不是线性可分的,即原始样本空间中并不存在一个能正确划分两类样本的超平面。
对于这样的问题,基于Mercer核展开定理,通过内积函数定义的非线性变换,将样本从原始空间映射到一个高维特征空间(Hibbert空间),使得样本在这个高维特征空间内线性可分(升维线性化)。
令
ϕ
(
x
)
\phi(\boldsymbol x)
ϕ(x)表示将
x
\boldsymbol x
x映射后的特征向量,在特征空间中划分超平面对应的模型可表示为
f
(
x
)
=
w
T
ϕ
(
x
)
+
b
f(\boldsymbol x) = \boldsymbol w^T \phi(\boldsymbol x) + b
f(x)=wTϕ(x)+b优化目标为
min
1
2
∣
∣
w
∣
∣
2
s
.
t
.
y
i
(
w
T
ϕ
(
x
i
)
+
b
)
≥
1
,
i
=
1
,
2
,
.
.
.
m
\begin{aligned} & \min \; \frac{1}{2}||\boldsymbol w||^2 \\ & s.t. \;\; y_i(\boldsymbol w^T \phi(\boldsymbol x_i) + b) \geq 1,i =1,2,...m \end{aligned}
min21∣∣w∣∣2s.t.yi(wTϕ(xi)+b)≥1,i=1,2,...m其对偶问题为
max
α
∑
i
=
1
m
α
i
−
1
2
∑
i
=
1
,
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{aligned} \max_{\alpha} & \sum\limits_{i=1}^{m}\alpha_i - \frac{1}{2}\sum\limits_{i=1,j=1}^{m}\alpha_i\alpha_jy_iy_j\phi(\boldsymbol x_i)^T \phi(\boldsymbol x_j) \\ s.t. \; & \sum\limits_{i=1}^{m}\alpha_iy_i = 0, \\ & \alpha_i \geq 0, \; i=1,2,...m \end{aligned}
αmaxs.t.i=1∑mαi−21i=1,j=1∑mαiαjyiyjϕ(xi)Tϕ(xj)i=1∑mαiyi=0,αi≥0,i=1,2,...m
该问题和线性可分SVM的优化目标函数的区别仅仅是将内积 x i x j \boldsymbol x_i \boldsymbol x_j xixj替换为 ϕ ( x i ) T ϕ ( x j ) \phi (\boldsymbol x_i)^T \phi(\boldsymbol x_j) ϕ(xi)Tϕ(xj)。
ϕ ( x i ) T ϕ ( x j ) \phi (\boldsymbol x_i)^T \phi(\boldsymbol x_j) ϕ(xi)Tϕ(xj)是 x i \boldsymbol x_i xi与 x j \boldsymbol x_j xj映射到特征空间后的内积,由于特征空间维数很高,甚至是无穷维,因此直接计算 ϕ ( x i ) T ϕ ( x j ) \phi (\boldsymbol x_i)^T \phi(\boldsymbol x_j) ϕ(xi)Tϕ(xj)通常是困难的。
如对于一个2维特征的数据 ( x 1 , x 2 ) (x_1,x_2) (x1,x2),需要将其映射到5维 ( 1 , x 1 , x 2 , x 1 2 , x 2 2 , x 1 x 2 ) (1, x_1, x_2, x_{1}^2, x_{2}^2, x_{1}x_2) (1,x1,x2,x12,x22,x1x2)来做特征的内积。
3.2 核函数
假设 ϕ \phi ϕ是一个从低维的输入空间 χ \chi χ(欧式空间的子集或者离散集合)到高维的希尔伯特空间 H \mathcal{H} H的映射。如果存在函数 K ( , ) \boldsymbol K( ,) K(,) 对于任意 x i , x j ∈ χ \boldsymbol x_i, \boldsymbol x_j \in \chi xi,xj∈χ都有:
K ( x i , x j ) = < ϕ ( x i ) , ϕ ( x j ) > = ϕ ( x i ) T ϕ ( x j ) \boldsymbol K(x_i,x_j) = <\phi(\boldsymbol x_i),\phi(\boldsymbol x_j)> = \phi(\boldsymbol x_i)^T\phi(\boldsymbol x_j) K(xi,xj)=<ϕ(xi),ϕ(xj)>=ϕ(xi)Tϕ(xj)
即
x
i
\boldsymbol x_i
xi与
x
j
\boldsymbol x_j
xj在特征空间的内积等于它们在原始样本空间中通过函数
K
(
,
)
\boldsymbol K( , )
K(,)计算的结果,则称
K
(
,
)
\boldsymbol K( , )
K(,)为核函数。
核函数使得计算在低维特征空间中进行,避免了高维特征空间中的巨大计算量,同时还利用了高维空间线性可分的特性。
凡是满足Mercer定理的函数都可以作为支持向量机的核函数。
一般所说核函数为正定核函数(正定核比Mercer更具一般性),一个函数为正定核函数的充分必要条件是如下:
对于任意 x i ∈ χ , i = 1 , 2 , 3... m x_i \in \chi, i=1,2,3...m xi∈χ,i=1,2,3...m, K ( ⋅ , ⋅ ) \boldsymbol K(\cdot , \cdot ) K(⋅,⋅)是正定核函数,当且仅当 K ( x i , x j ) \boldsymbol K(x_i,x_j) K(xi,xj)对应的Gram矩阵 K = [ K ( x i , x j ) ] \boldsymbol K = \bigg[ K(x_i, x_j )\bigg] K=[K(xi,xj)]为半正定矩阵。
常用核函数如下
径向基函数核(RBF,Radial basis Function)又称高斯核。