目录
一、支持向量机原理
1. SVM目标
SVM可以用于二分类或多分类,此处以二分类为例。SVM的目标是寻找一个最优化超平面可以在空间中分割两类数据,这个最优化超平面需要满足的条件是:离其最近的点到其的距离最大化。
一句话解释:最大化离超平面最近点(支持向量)到该平面的距离。
2. 距离与数据定义
点x到空间直线的距离为:
(1)
就是标签,假设这里是二分类问题,其值是1和-1,其保证了不论样本属于哪一类,最终值都保证是正数,则有:
(2)
3. 目标函数推导
由1中的图可知,支持向量到达我们要优化的超平面 的距离就是 ,两侧的距离加起来就是
则目标函数为:
(3)
其中min 为找最近的支持向量,argmax为找到什么样的w,b到平面的距离越远越好
假设支持向量到超平面的函数距离设为1,自然其他非最近点的函数距离便是大于1,于是得到不等式约束优化问题:
(4)
4. 目标函数求解
由于最大值问题不好求解,因此将公式4转换为:
(5)
4.1 KKT条件
4.2 拉格朗日乘子法——强对偶性
将带约束的优化问题(公式5)转换为不带约束的
(6)
分两种情况对公式(6)考虑
(1) 时,为无穷大,无意义