欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

支持向量机SVM知识梳理和在sklearn库中的应用

程序员文章站 2022-07-10 20:58:39
线性SVM=线性分类器+最大间隔间隔的形式化描述SVM通过最大化`M`来求解参数`W`和`b`的,目标函数如下拉格朗日乘数法,软间隔:加入容错量非线性SVM:特征空间。常用的核函数 ......

svm发展史

支持向量机SVM知识梳理和在sklearn库中的应用

线性svm=线性分类器+最大间隔

间隔(margin):边界的活动范围。the margin of a linear classifier is defined as the width that the boundary could be increased by before hitting a data point.

预备知识

  • 线性分类器的分割平面(超平面):wx+b=0
  • 点到超平面的距离:\(m=\frac{ \vert g(x) \vert }{\left\|w\right\| }\),其中\(g(x)=wx+b\)
  • svm中正样本定义为g(x)>=1,负样本定义为g(x)<=-1
  • svm中wx+b=1或者wx+b=-1的点称为支持向量

间隔的形式化描述

\(m=\frac{2}{\left\|w\right\| }\)
支持向量机SVM知识梳理和在sklearn库中的应用

svm通过最大化m来求解参数wb的,目标函数如下:

支持向量机SVM知识梳理和在sklearn库中的应用

求解 :拉格朗日乘数法,偏导为0后回带

支持向量机SVM知识梳理和在sklearn库中的应用

在svm中,原问题和对偶问题具有相同的解,w已经求出:\(w=\sum_{i=1}^{l}{\alpha_iy_ix_i}\), 不等式约束,还需要满足kkt条件。\(\alpha_i>0\),则必有xi为支持向量,即:训练完毕后,最终模型仅和支持向量有关。

支持向量机SVM知识梳理和在sklearn库中的应用

b的求解过程如下

支持向量机SVM知识梳理和在sklearn库中的应用

一个实例

支持向量机SVM知识梳理和在sklearn库中的应用

软间隔:加入容错量

支持向量机SVM知识梳理和在sklearn库中的应用

同样采用拉格朗日乘数法求解

ld的区别仅仅体现为\(\alpha_i\)的约束不同。

支持向量机SVM知识梳理和在sklearn库中的应用

非线性svm:特征空间

通过映射到高维空间来将线性不可分的问题转换为线性可分的问题。

支持向量机SVM知识梳理和在sklearn库中的应用

高维空间向量内积运算复杂度高。以二次型为例,直接计算

\(x_i⋅x_j⇒φ(x_i)⋅φ(x_j)\),直接计算的话,复杂度会成倍增加。

支持向量机SVM知识梳理和在sklearn库中的应用

以二次型为例,理解核技巧

通过在低维空间的计算o(m),得到高维空间的结果不需要知道变换是什么,更不需要变换结果的内积,只需要知道核函数,就可以达到相同的目标。(变换结果的内积)

支持向量机SVM知识梳理和在sklearn库中的应用

请看实例,二维空间

支持向量机SVM知识梳理和在sklearn库中的应用

常用的核函数

多项式变换中,当d=2时,就是二次型变换。

支持向量机SVM知识梳理和在sklearn库中的应用

此时w和b的结果如下:

\(x_i\)换为\(\phi(x_i)\),将\(\phi(x_i)\cdot \phi(x_j)\)换为\(k(x_i,x_j)\),其余都不变,真的很简洁。

支持向量机SVM知识梳理和在sklearn库中的应用

svm在scikit-learn中的应用

  • linear svm:\(min\frac{1}{2}\left\|w\right\|^2+c\sum{\zeta^2}\)
linearsvc(
    penalty='l2',
    c=1.0,#就是目标函数的c,c越大(eg:1e9),容错空间越小,越接近硬边界的svm(最初的svm,基本不用),c越小(eg:c=0.01),容错空间越大,越接近soft magin.
)
  • 核函数 svm:from sklearn.svm import svc
svc(
    c=1.0,
    kernel='rbf',
    degree=3,#多项式核函数的指数d
    gamma='scale',#高斯基函数中的参数gamma,越大,函数分布越狭窄; gamma越小,决策边界越松弛,当很小时,可以认为趋于无穷大成一条直线了,这时就欠拟合了。gamma取值越大,决策边界越收紧,当很小时,会无限包紧样本点,这时就过拟合了。
)