支持向量机(SVM)--软间隔
Posted super-yb
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了支持向量机(SVM)--软间隔相关的知识,希望对你有一定的参考价值。
上一节讲线性SVM时,文末提到在线性可分的情况下,找到一个支持向量,可求得b
但是当出现下图实例时,无法找到一条线将实例分为两类,所谓线性不可分问题。
针对这种情况SVM提出了软间隔(soft margin),相对于硬间隔来说,简单将线性SVM看做硬间隔。
回顾硬间隔时优化目标:
min $\\frac{1}{2}\\left \\| w_{2} \\right \\|_{2}^{2}$
$s.t y_{i}(w\\cdot x_{i}+b)≥1$
在软间隔中,我们给每个样本点的函数距离减去了一个松弛变量( slack variable):
$y_{i}(w\\cdot x_{i}+b)≥1-\\xi $
且$\\xi≥0$
Tips:
如何理解软间隔的几何含义?
原本我们希望有所的点到超平面的几何距离≥1,最后简化为函数距离。(这里不懂回顾线性SVM)
那么在超平面一侧的样本到超平面的函数距离最小为1,当减去$\\xi$时,表明允许部分样本跨越支持向量,向着另一侧出发。
$\\xi$还可以理解为离群点在另一侧时,该点到支持向量的函数距离。这样就引入了线性不可分问题。
文末有详细的讨论过程。
但是这个松弛变量的加入是有代价的,我们在优化目标中加入了惩罚项(这里惩罚项可以看做是正则化)
min $\\frac{1}{2}\\left \\| w_{2} \\right \\|_{2}^{2}+C\\sum \\xi _{i}$
$s.t y_{i}(w\\cdot x_{i}+b)≥1-\\xi$
$\\xi≥0$
这里C>0,C越大表示我们对误分类惩罚越大,C可以根据样本点中重要程度调整。
优化目标函数:
$L(w,b,\\xi ,\\alpha ,\\mu )=\\frac{1}{2}\\left \\| w \\right \\|_{2}^{2}+C\\sum \\xi _{i}-\\sum \\alpha _{i}\\left [ y_{i}(w\\cdot x_{i}+b)-1+\\xi _{i} \\right ]-\\sum\\mu _{i} \\xi _{i}$
其中$\\mu _{i}>0, \\alpha _{i}>0$.(此处为什么大于零不懂去看KKT条件)
优化目标变成:
和线性SVM一样,对$w,b,\\xi $求偏导
$\\frac{\\partial L}{\\partial w}=0\\Rightarrow w = \\sum a_{i}y_{i}x_{i}$
$\\frac{\\partial L}{\\partial b}=0\\Rightarrow b = \\sum a_{i}y_{i}$
$\\frac{\\partial L}{\\partial \\xi }=0\\Rightarrow C-\\alpha _{i}-\\mu _{i}\\Rightarrow C=\\alpha _{i}+\\mu _{i}$
带入L中,推导过程如下图(又是不知羞耻的盗图QAQ):
发现一件神奇的事情,这里最后的化解结果和线性SVM一模一样,当然总得有不一样的地方,就是约束条件
现在的优化目标如下:
$\\underset{a}{max}=-\\frac{1}{2}\\sum \\sum a_{i}a_{j}y_{i}y_{j}x_{i}\\cdot x_{j}+\\sum a_{i}$
$s.t \\sum a_{i}y_{i}=0 (1)$
$C=\\alpha _{i}+\\mu _{i} (2)$
$\\mu _{i}>0, \\alpha _{i}>0 (3)$
由约束条件2和3可以得到$0\\leqslant \\alpha _{i}\\leqslant C$
最后的优化目标成为:
$\\underset{a}{max}=\\frac{1}{2}\\sum \\sum a_{i}a_{j}y_{i}y_{j}x_{i}\\cdot x_{j}-\\sum a_{i}$
$s.t \\sum a_{i}y_{i}=0$
$0\\leqslant \\alpha _{i}\\leqslant C$
与线性SVM相比仅仅多了一个约束条件$0\\leqslant \\alpha _{i}\\leqslant C$,然后根据SMO算法得到$\\alpha _{i}$,最后求w,b。
对松弛变量的简单理解:
在$L(w,b,\\xi ,\\alpha ,\\mu )=\\frac{1}{2}\\left \\| w \\right \\|_{2}^{2}+C\\sum \\xi _{i}-\\sum \\alpha _{i}\\left [ y_{i}(w\\cdot x_{i}+b)-1+\\xi _{i} \\right ]-\\sum\\mu _{i} \\xi _{i}$中,
根据软间隔最大化时KKT条件的对偶互补条件
(下图与文中Tips中的图不一样的地方是这里用的是离群点的几何距离)
参考:
http://www.cnblogs.com/pinard/p/6100722.html
https://www.bilibili.com/video/av23933161/?p=26
以上是关于支持向量机(SVM)--软间隔的主要内容,如果未能解决你的问题,请参考以下文章