支持向量机SVM

支持向量机SVM

分类的基本思想在给定的样本空间中寻找一个超平面将训练样本进行分割,而且能够对新样本也进行正确的分类。如下图中,这样的超平面有许多个,如何选择才能使得效果较好。更直观的观察就是在两个类别之间,存在一定的间隔,如果这个间隔越大,是不是意味着两个类别能更好的区分?!根据这个观察,那么如何来描绘这个间隔就是接下来的问题。就一个二维或者或者三维空间而言,间隔就是意味着距离,这是发生在亮点、平行线、平行面之间。那么在下图中,我们很容易去选择两个平行线或者平行面来来描绘这个间隔,一个简单的办法就是将我们所要寻找的超平面进行平移,得到一组平行的平面,这是就会产生我们所说的间隔。

基于以上分析,那我们可以定义所求的超平面为:

用这个超平面去逼近两个类别,与超平面最近的两个类别的点分别构成了我们所描述的那对平行面。假设平行面到超平面的距离相等,我们不妨假设这个距离为1(也可以)理解为其样本的标签),那么两条 平行线可以表述为:
对于所有的训练样本,那么根据定义,可以得知其满足:

这样,我们就找到了这样的一个超平面来对样本进行分类,在我们寻找的那对平行面过程中,所处于临界点(刚好在平行面上的样本)称之为 支持向量(support vector)
根据距离的定义,可以得知两个平行面的间隔距离为:

那么基于之前的描述,我们就有了下图:


So,现在的问题转化为,如何使得这个间隔最大,基于我们的假设,间隔最大,分类效果越好。问题从此转化为一个优化问题:

该问题等价于:


上述问题是一个凸二次规划问题,解决方法有很多种。首先看到带约束的优化问题,很容易想到lagrange乘子法。


那么问题转化为求原问题的对偶问题:



利用SMO算法求解该问题。参考 支持向量机(五)SMO算法


Reference:
周志华:《机器学习 》



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值