SVM学习笔记

Support Vecot Mechine, SVM 学习笔记

SVM一般翻译为支持向量机,最初在文本分类领域展露头角,后成为机器学习的主流技术,其求解较神经网络一般要高效,最初只适用于二类划分。理论上来说,通过one-vs-all的思想,二类划分的方法都可以转化为多类划分。下面主要参考吴恩达的机器学习课程和周志华的“西瓜书”写的学习笔记,供大家参考、交流:


分类间隔和Magin

SVM方法被称为最大间隔分类,考虑一个两个feature的例子,如下图所示,所有的划分都是正确的,但显然红色的线是最好的划分,因为其抵抗扰动的能力更强,容错性更好,鲁棒性好。两类中最靠近分类界限的点沿分类线(平面)的距离最大,这个距离就是所谓的magin,中文应该是间隔的意思。
magin

support vector

如下图中的红色两个点,分别是离分类线(平面)最近的点。每个样本点都可以作为一个向量,两个红色点对应的向量称为support vector。一般将support vector议成支持向量,个人认为不太贴切。事实上support在结构力学中表示支座支承的意思,support vector像支座一样将两类样本撑开,可能翻译为支承向量更为贴切。machine的原意是指机器,但在机器学习中一般可以理解为算法的意思。事实上,svm方法的重点就在于使得support vector之间的magin最小。
support vector

SVM基本型(以二维线性可分的情况为例)

像上图中的样本分析情况,可以找到一个直线将两类样本点分开(显然大多数问题不一定能找到直线将样本正确地分开),其中 y=±1 。记分类的直线为 ωTx+b=0 ,二维情况下方程表示的是直线,三维是平面,更高维的情况是超平面了。 ω 是法向量, b 是位移项。
由解析几何的知识易知,空间中认为一点x到超平面的距离 d

d=ωTx+bω2

对于任一分类正确的样本 (xi,yi) 有不等式 (ωTxi+b)yi>0 。那么在这个不等式成立的基础上一定可以找到新的超平面参数 (ω,b) ,使得 (ωTxi+b)yi1 成立。当且仅当,样本为support vector的时候,不等式的等号成立。再结合距离公式,两个异类的support vector到超平面的法向距离之和  magin  为(为表述方便,记号换回原来的)

magin=2ω

SVM方法不仅要求样本分类正确,还希望分类的magin能够尽可能地大,由此可以得到svm方法的基本型
max2ωs.t.  (ωTxi+b)yi1,i=1,2m

上式可以等价为
min12ω2s.t.  (ωTxi+b)yi1,i=1,2m

可以证明,该规划问题可以转化为凸二次规划,因此svm方法不必担心收敛到局部最优点的问题。此外还可利用support vector的性质,对优化求解过程进行加速,因此svm方法求解较为高效。
此外,由svm的基本型可以看出,优化目标函数仅与support vector有关,最终得到的超平面也仅与support vector有关。

核方法(kernel tricks)

很多情况下,不同样本之间并不是线性可分的,如下图需要用一个非线性的方程将两个样本分块,那么此时svm方法是不是就失效了呢?
nonlinear svm
此时需要将样本空间映射到更高维的空间中,即 xϕ(x) ,使得在这个高维的空间中,样本时线性可分的 ϕ(x) 就称为核函数,这种思想就称为核方法(kernel tricks)。数学上,可以证明如原样本空间是有限维的,那么就一定存在一个高维空间使得样本线性可分。svm方法得基本型可以相应地改写为:

min12ω2s.t.  (ωTϕ(xi)+b)yi1,i=1,2m

在核函数满足某种数学条件得情况下,带核的svm方法同样具有凸性和计算效率较高的优点。


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值