SVM的推导(2)
上一篇文章(1)我们讨论了硬间隔SVM的推导及其对偶形式,其对偶问题可以化简成以下形式:
该问题可以看作是一个以为优化变量的二阶规划问题,二阶规划问题有很多成熟的解法,针对SVM的优化有一种最为高效的SMO序列优化算法。
SMO序列优化算法
SMO序列优化算法先将的所有变量进行初始化,比如令再将的其中两个分量看作变量,比如(在选取两个分量的时候,通常先取违反上文中KKT条件最严重的为,然后选取离间隔最远的对应的为第二个变量),其余的固定住,则根据约束条件可以得到。上述问题即可以化为两个变量的二次规划问题(令):
在上述二次规划问题中,由于,那么可以得到,将该约束条件代入中即可以得到单变量的二次规划问题,如果先不考虑不等式约束条件,则可以直接得到解析解,不必利用数值计算的方式求解,这样可以大大提升计算速度。
令,则将代入可以得到:
直接令,那么可以得到的解析解为,其中,。此时得到的还没有考虑不等式约束,由与可以解不等式得到的上界与下界,即经过剪辑可以得到的解析解为:
另外根据则可以得到,这样便完成了SMO算法的一组变量的更新。重复进行变量选择,解析求解,变量剪辑的过程,直到的所有变量都能满足文章(1)中的KKT条件为止,然后再根据文章(1)中与的计算公式便可以得到训练好的超平面,这样便完成了硬间隔SVM的数学推导过程,后面的文章还会继续介绍软间隔SVM的推导与核方法的应用。To be continue…