机器学习之SMO算法

1、SMO算法

说明:本文内容基于李航《统计学习方法》一书。
SMO算法用于支持向量机学习的实现,求解如下的凸二次规划问题:
clipboard.png

变量是拉格朗日乘子,一个变量αi对应一个样本点(xi,yi);变量总数等于训练样本容量N。
SMO算法的基本思路:选择两个变量,固定其他变量,针对这两个变量构建一个二次规划问题。(书Page125)

2、两个变量二次规划的求解方法

假设选择两个变量α1、α2,其他变量αi(i=3,4,....,N)是固定的。于是,前面的优化问题1.1~1.3可以简化为:
clipboard.png(Page126)
z是常数,Kij=K(xi,xj),因为不含α1、α2的常数项不影响式1.4的最小值,故省略。
clipboard.png
,在式1.5等号两边同时乘以y2得:
clipboard.png
将式1.7代入式1.4得到求解最小值关于α1的函数:
clipboard.png
对式1.8求W(α1 )关于α1的偏导数:
clipboard.png
clipboard.png得到不考虑约束1.5,1.6的解:clipboard.png,再由1.5求得:clipboard.png
因为yi只等于1或-1。当clipboard.png时,可以假设y1=1,y2=-1。则在α2为纵轴α1为横轴的坐标系上:
clipboard.png是斜率为1,且横纵坐标都属于区间[0,C]的线段。
如下图:(Page126)
clipboard.png
联立:
clipboard.png
得到:
clipboard.png
又:
clipboard.png
所以:
clipboard.pngclipboard.png
故而,在考虑约束条件的情况下,α可以取得最小值和最大值分别为:
clipboard.png
同理,当y1=y2时,假设y1=y2=1,则:
clipboard.png
所以:
clipboard.png
最终得到满足约束条件的优化过后的α1,α2解:
clipboard.png
clipboard.png

3、变量的选择方法

。。。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值