1. 什么是支持向量机
- 英文Support Vector Machines,简写SVM . 主要是基于支持向量来命名的,什么是支持向量后面会讲到…….最简单的SVM是用来二分类的,在深度学习崛起之前被誉为最好的现成分类器,”现成”指的是数据处理好,SVM可以直接拿来使用 …
2. 名词解释
2.1线性(不)可分 , 超平面
上图 线性可分(绿色荧光笔直线),即一条直线完美分类,虽然有不同的分割法,这条分割线就叫做”分割超平面”,二维中直线就是一个超平面,扩展到n维中n-1维也就是超平面
左面这张图很明显,所谓线性不可分,则是一条直线不能完美分类
左面这张图也是线性不可分 但是 有一个圆形区域很好的进行了分类
这时候就可以映射到高维,见下例
面 到 体 :
线 到 面 :
这个例子就比较好理解了,主要是怎么映射? 见下内容….
2.2 支持向量
支持向量在SVM中很重要,名字就看得出来, 在上例中红线为分割超平面,红色的*点就是支持向量点,即离分割超平面最近的点。
3. SVM理解
在二分类问题中,SVM需要的就是寻得一个分割超平面,使margin最大化,见下图,margin就是切割超平面离最近点的距离
最近的点就是支持向量点,这里的超平面可以定义为
w^X+b=0
假设2维特征向量
X=(x1,x2)
, 把b想象虚拟的
w0
,
那么超平面方程就变成了 :
w0+w1x1+w2x2=0
右上方点满足 :
w0+w1x1+w2x2>0
同理,左下点满足 :
w0+w1x1+w2x2<0
经过对weight参数的调整,使得
H1:w0+w1x1+w2x2>=1
for y = +1
H2:w0+w1x1+w2x2<=1
for y = - 1 (用y的+1代表一类,-1代表另一类)
综上两式
yi(w0+w1x1+w2x2)>=1,∀i
那么如果线行不可分呢,那就需要映射到高维,例如 X=(x1,x2,x3) 那么映射到6维Z函数就可以是 θ1(x)=x1,θ2(x)=x2,θ3(x)=x3θ4(x)=x21,θ5(x)=x1x2,θ6(x)=x1x3 ,取而代之的方程变为 Y=w1z1+w2z2+...+w6z6 那么怎么映射呢,(回答:用到的是内积)内积很耗时,所以使用核函数来计算这个内积,使得高维化时间变短,主要的核函数有
- linear : 线性核函数(linear kernel)
- poly : 多项式核函数(ploynomial kernel)
- rbf : 径向机核函数(radical basis function)
- sigmoid : 神经元的非线性作用函数核函数(Sigmoid tanh)
具体介绍还是看看文档吧…..
然后根据核函数就可以进行分类或者回归了…..
4. SVM优缺点
优点
- 支持向量决定时间复杂,而不是取决于数据集的大小
- 结果易于理解
缺点
- 对于参数以及核函数有依赖,原始算法不加修改只用于二分类
- 算法实现比较困难 (依赖sklearn库的话就算了,打脸)
5. sklearn库简单应用实例
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
6. 图像结果 以及 分析
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
红色为支持向量,红线为切割超平面,绿色虚线为边际超平面,用来’阻挡’两类的超平面
本文详细介绍了支持向量机(SVM)的基本概念、工作原理及其在分类问题中的应用。主要内容包括线性可分与不可分的概念、支持向量的作用、如何通过最大化间隔来寻找最优分类超平面,并探讨了在非线性情况下如何通过核技巧将数据映射到高维空间以解决分类问题。
625

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



