活动地址:CSDN21天学习挑战赛
1 非线性支持向量机
学习是一个循序渐进的过程,问题往往会变得复杂多样:线性支持向量机得到的是一个线性分离超平面,当遇到的分类问题无法用线性支持向量机去解决的话怎么办?比如下图把不同类别样本区分开的是一个椭圆,应该如何处理此类问题呢?
如果能把非线性空间中的点映射到线性空间中的话,即把非线性问题转化为线性问题,就可以用老办法解决新问题了,关键是如何转化呢?
2 核函数引入
假设输入空间为欧氏空间
R
2
R^2
R2,映射函数 为
φ
(
x
)
\varphi(x)
φ(x),输出特征空间为希尔伯特空间
H
H
H。
已知线性支持向量机的目标函数为:
min
α
1
2
∑
i
=
1
N
∑
j
=
1
N
α
i
α
j
y
i
y
j
(
x
i
⋅
x
j
)
−
∑
i
=
1
N
α
i
\quad\min\limits_{\alpha} \frac{1}{2} \sum_{i=1}^{N} \sum_{j=1}^{N} \alpha_{i} \alpha_{j} y_{i} y_{j}\left(x_{i} \cdot x_{j}\right)-\sum_{i=1}^{N} \alpha_{i}
αmin21i=1∑Nj=1∑Nαiαjyiyj(xi⋅xj)−i=1∑Nαi该式子中的
x
i
⋅
x
j
x_{i}\cdot x_{j}
xi⋅xj无论是原始问题还是对偶问题。目标函数都涉及输入实例与输出实例之间的内积运算,通过映射函数映射之后便为
φ
(
x
i
)
⋅
φ
(
x
j
)
\varphi(x_i)\cdot\varphi(x_j)
φ(xi)⋅φ(xj)。
令
K
(
x
i
,
x
j
)
=
φ
(
x
i
)
⋅
φ
(
x
j
)
K(x_i,x_j)=\varphi(x_i)\cdot\varphi(x_j)
K(xi,xj)=φ(xi)⋅φ(xj),
K
(
x
i
,
x
j
)
K(x_i,x_j)
K(xi,xj)叫做核函数,这是在新的空间上的内积。采用不同的映射函数进行映射也可以得到相同的核函数。接下来就是求核函数,就可以将线性支持向量机的目标函数重新代换。
参考
1.《统计学习方法》——李航