阅读本文需要的背景知识点:线性支持向量机、一丢丢编程知识
一、引言
前面我们用两节介绍了两种支持向量机模型——硬间隔支持向量机、软间隔支持向量机,这两种模型可以统称为线性支持向量机,下面来介绍另一种支持向量机模型——非线性支持向量机1 (Non-Linear Support Vector Machine)。
二、模型介绍
在介绍非线性支持向量机之前,让我们来看如下的线性不可分的数据集:

图 2-1 中分别用圆和叉来代表不同的标签分类,很明显该数据集无法通过一条直线正确分类,但是如图 2-2 所示,该数据集可以被一条椭圆曲线正确的分类。

但是想要求解如图 2-2 中的椭圆曲线这种非线性分类的问题,相对来说难度较大。既然线性分类问题相对容易求解,那么该数据能否通过一定的非线性变化转化为一个线性分类的数据呢,答案是可以的。

如图 2-3 所示,将数据集进行非线性转换( Z = X ∗ X Z = X * X Z=X∗X),这时可以看到转换后的数据可以通过一条直线正确分类,原来图 2-2 中的椭圆曲线变换成了图 2-3 中的直线,原来非线性分类问题变换成了线性分类问题。
原始模型
先来回顾一下前面软间隔支持向量机的原始模型:
min w , b , ξ 1 2 w T w + C ∑ i = 1 N ξ i s.t. C > 0 ξ i ≥ 0 ξ i ≥ 1 − y i ( w T x i + b ) i = 1 , 2 , ⋯ , N \begin{array}{c} \underset{w, b, \xi}{\min} \frac{1}{2} w^{T} w+C \sum_{i=1}^{N} \xi_{i} \\ \text { s.t. } \quad C>0 \quad \xi_{i} \geq 0 \quad \xi_{i} \geq 1-y_{i}\left(w^{T} x_{i}+b\right) \quad i=1,2, \cdots, N \end{array} w,b,ξmin21wTw+C∑i=1Nξi s.t. C>0ξi≥0ξi≥1−yi(wTxi+b)i=1,2,⋯,N
假设存在一个 ϕ \phi ϕ 函数能对 x x x 进行变换,例如上面例子中的将 x x x 映射成 z z z,带入上面的软间隔支持向量机的原始模型中得:
min w , b , ξ 1 2 w T w + C ∑ i = 1 N ξ i s.t. C > 0 ξ i ≥ 0 ξ i ≥ 1 − y i ( w T ϕ ( x i ) + b ) i = 1 , 2 , ⋯ , N \begin{array}{c} \underset{w, b, \xi}{\min} \frac{1}{2} w^{T} w+C \sum_{i=1}^{N} \xi_{i} \\ \text { s.t. } \quad C>0 \quad \xi_{i} \geq 0 \quad \xi_{i} \geq 1-y_{i}\left(w^{T} \phi(x_{i})+b\right) \quad i=1,2, \cdots, N \end{array} w,b,ξmin21wTw+C∑i=1Nξi s.t. C>0ξi≥0ξi≥1−yi(wTϕ(xi)+b)i=1,2,⋯,N
上式 2-2 就是非线性支持向量机的原始模型。
对偶模型
同前面两节中所求解的对偶模型,可以得到非线性支持向量机的对偶模型:
max λ ∑ i = 1 N λ i − 1 2 ∑ i = 1 N ∑ j = 1 N λ i λ j y i y j ϕ ( x i ) T ϕ ( x j ) s.t. ∑ i = 1 N λ i y i = 0 0 ≤ λ i ≤ C i = 1 , 2 , ⋯ , N \begin{array}{c} \underset{\lambda}{\max} \sum_{i=1}^{N} \lambda_{i}-\frac{1}{2} \sum_{i=1}^{N} \sum_{j=1}^{N} \lambda_{i} \lambda_{j} y_{i} y_{j} \phi(x_{i})^{T} \phi(x_{j}) \\ \text { s.t. } \quad \sum_{i=1}^{N} \lambda_{i} y_{i}=0 \quad 0 \leq \lambda_{i} \leq C \quad i=1,2, \cdots, N \end{array} λmax∑i=1Nλi−21

本文介绍了非线性支持向量机的基本概念,包括模型的非线性转换、核技巧的应用、对偶模型和SMO算法。通过实例和Python代码演示了如何使用线性、多项式和径向基核函数。最后,与Scikit-learn库实现和实际应用案例相结合,探讨了不同核函数对分类效果的影响。
最低0.47元/天 解锁文章
4918

被折叠的 条评论
为什么被折叠?



