线性SVM

时间:2021-09-07 21:43:06

(本文内容和图片来自林轩田老师《机器学习技法》)

1. 线性SVM的推导

1.1 形象理解为什么要使用间隔最大化

容忍更多的测量误差,更加的robust。间隔越大,噪声容忍度越大:

线性SVM

1.2 SVM的问题描述

线性SVM

表示为正式的形式,就是:

线性SVM

1.3 推导点到平面的距离

线性SVM

因此,由于约束条件1,距离里面的绝对值可以去掉,原来的最优化问题变为:

线性SVM

1.4 将SVM问题写成更容易解决的形式

由于w和b乘以同样的倍数得到的平面不变。因此我们做一个放缩,规定:

线性SVM

因此问题就变为了:

线性SVM

在这里,我们发现第二个约束条件其实已经包含了第一个约束条件,因此我们可以舍去第一个约束条件,问题进一步简化为:

线性SVM

然后,我们发现约束条件还是不够简单,因此我们把约束条件放宽:

线性SVM

这一步要说明,把约束条件放宽相当于解的备选区域变大了。我们在这里要说明,最优解仍然会落在原来的区域内。采用反证法:

线性SVM

所以说,落在外面区域的解不可能是最优解,因此把约束条件放松对求解是没有影响的。

然后,我们把目标函数求最大改为最小,根号去掉,加一个因子1/2,得到最终形式:

线性SVM

2. 求解SVM问题

上述最优化问题是一个标准的凸二次规划问题(QP),我们可以把它扔到专门解这类问题的程序中求解,只需要求出它对应到标准QP问题中的各个参数值是什么就好:

线性SVM

3. 为什么要使用large-margin?

(1)对噪声的有更大的鲁棒性

(2)降低了VC维