SVM(二)——宽松SVM

错分问题与离群点问题

之前的SVM(http://blog.csdn.net/ice110956/article/details/23436171)推导前提条件是样本线性可分,或者至少在高维空间中线性可分。但是许多情况下,并不是高维可分的。先考虑如下面这种情况:


由于一个小的离群点,整个分隔平面发生了很大的改变。于是我们寻求宽松的限制原则来改进之前的严格SVM,从而也能够处理高维不可分情况。

 

考虑加入正则化项,如下:


其中,也就是不是所有的样本的函数间隔都要大于1,这个条件弱化的离群点的影响。

时,函数间隔为负,也就是样本错分。这样也就是允许一定的错分。

在目标函数中加入惩罚项


其给离群的点,错分的点一定惩罚。

 

根据之前的对偶规划,我们也能得到:


对比之前的公式,两者唯一的不同是KKT互补条件由变为

之前论述过,alfa !=0的项是少数的几个支持向量。同样的,我们有类似结论:


 

SMO算法

之前的推导到以alfa为变量的最优化为最后形式。下面讨论如何解这个问题。

 

坐标上升法

考虑解下面的最优化问题:


其中alfa为m维的量。

我们直观地用逐一求解的方法,求解i时,固定其他所有的未知量,依次迭代求解,步骤如下:


称为坐标上升法,其二维上的求解图如下:


比较其他常见的下降法,如最速下降,牛顿法等。一般的方法以alfa向量为单位,根据矩阵求导的方法,每次更新整个向量。

相比而言,坐标上升法迭代步骤更多,但是每次求解是都把问题化简为一维的最优化问题。也就是虽然步骤增加,但是每次都更简单。这是坐标上升法的优势。接下来把这种方法运用到SVM的求解中。

 

SMO算法

考虑我们最后得到的SVM优化公式如下:


其中的最后一个约束项,使得我们不能简单运用坐标上升法。因为如果固定其他alfa,求解alfa(i)那么根据最后一个约束项


Alfa(i)也是不可改变的。

 

于是,我们一次改变两个变量。

每次根据一定的策略,如顺序,选择两个变量,固定其他变量,求解两个变量的最优化,步骤如下:


假设现在选取alfa1,alfa2两个变量,得到:


简化表示如下:


其约束在二维空间上表示如下:


Alfa1用alfa2表示:


带入原问题,得到:


上述可以化为以alfa2为变量的一元二次方程:


求解后,再考虑得到的解是否满足上面的alfa2定义域,如果不满足,则做一定的裁切,使得得到的结果在定义域内:


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值