1. 基本知识
二分类:通过分离超平面对数据点进行分类,训练分离超平面。
原理:最大化支持向量到分离超平面的距离。支持向量:离分离超平面最近的点。
2. 完全线性可分(硬间隔)
2.1 SVM基本型
分离超平面:。(训练中更新w和b,或alpha,使得分离超平面分类效果最佳)
某点到分离超平面的函数距离:
某点到分离超平面的几何距离:, ||w||为w的L2范数。
点集到分离超平面的几何距离 => 距离超平面最近的点到其的距离:
SVM的目标:
引入约束条件,假设所有点到超平面的距离都大于等于1,其中里分离超平面距离为1的点称为‘支持向量’(即等号成立时的点)。则问题转化为:
2.2 对偶问题
求解:,以求得分离超平面,为凸二次规划问题。
引入拉格朗日乘子,则拉格朗日函数为:
分别对w,b求偏导,使导数为零:
将w和b由alpha表示,并添加约束条件,最后使得问题转化为:
最后得到:
上述过程满足KKT条件:
上述KKT条件说明,当alpha为0时,对应的数据点不参与w的计算,而当alpha不为0时,为1,说明这些点到分离超平面距离为1,为支持向量。这说明:训练完成后,只需要保留支持向量的样本即可。
3. SMO算法
SMO:sequential minimal optimization 序列最小优化。优化求解alpha。
基本思路:固定