支持向量机(SVM)是一种二分类模型,基本模型是定义在特征空间上间隔最大化的线性分类器。当训练可分时候通过硬间隔最大化学习一个线性分类器,训练数据近似线性可分时候,通过软间隔最大化学习一个线性分类器,训练数据不可分时候通过核技巧(低维空间映射到高维空间)和软间隔最大化学习线性分类器。下面主要借鉴李航SVM章节总结。
下面主要介绍SMO算法:SMO算法的目的是找到一个h函数f(x),这个函数能够让我们对输入的数据X进行分类。
SMO算法主要包括两个部分:1:求解两个变量二次规划解析方法。2:选择变量的启发式方法。
1:首先怎样选择两个变量a1,a2。因为a是不能一个一个更新,因为他是有约束条件的,单独更新一个约束条件就不满足了,SMO算法是一对一对更新。
每次当更新完a1,a1变成a1new,a2new时候再求b的值。
最终就可以对X进行分类了。
具体推导见博客:http://www.tuicool.com/articles/RRZvYb
总结SVM算法步骤: