SVM 由浅入深的尝试(四) 软间隔最大化的理解
2018-06-28 本文已影响3人
在做算法的巨巨
这部分涉及到的内容会帮助理解SMO算法
-
概念介绍
软间隔(soft margin)和硬间隔(hard margin)。
所谓“硬间隔”,就是说,一组数据样本是可以实现线性可分,大白话就是存在分隔超平面完全将正负样本分开。
所谓“软间隔”,就是说,数据样本不是实际的线性可分,而是近似线性可分,我们称为软间隔。
线性支持向量机
对于线性不可分的数据样本,通过解凸二次规划问题,即软间隔最大问题,得到分隔超平面和分类决策函数称为“线性支持向量机”。
松弛变量\xi
线性不可分意味着某些样本点(xi,yi)不能满足函数间隔大于等于1的约束条件,因此对每个样本点引进一个松弛变量,降低实际的“函数间隔”。也就是松弛变量加上理论函数间隔大于等于1。
-
软间隔最大化问题的意义
在现实生活中,我们99%的数据样本都是有瑕疵的,很大几率我们的数据是没法实现完全线性可分。当然,如果碰巧是线性可分,这时候通过前边说的引入拉格朗日变量和解对偶问题,求目标函数的最优化,我们就可以解出最大间隔超平面的方程和支持向量。这是idealism。如果我们发现这个问题不是完美的线性可分,总有几个outlier妨碍我们的超平面,我们可以姑且近似这是一个线性问题,也就是将其看作是“软间隔最大化问题”,通过修正我们的目标函数来对其进行求解。
1. 软间隔的目标函数和约束条件
![](http://latex.codecogs.com/svg.latex?\min_{w,b,\xi}\,\,\,\,\frac{1}{2}||w||^2+C\sum_{i=1}^N\xi_i)
![](http://latex.codecogs.com/svg.latex?\\s.t.\;y_i(w\cdot\,x_i+b)\geq1-\xi_i,\\\xi_i\geq0,\,\,\\C>0,i=1,2,...N)
软间隔的支持向量xi或者间隔边界上,或者在间隔边界与分离超平面之间,或者在分离超平面误分一侧。
若alpha<C,则\xi=0,支持向量xi恰好落在间隔边界上;
若alpha=C,0<\xi<1,则分类正确,xi在间隔边界和分离超平面之间;
若alpha=C,\xi=1,则xi在分离超平面上;
若alpha=C,\xi>1,则分类错误,xi位于分离超平面误分一侧。
所以在算法里我们要尽力去找(0,alpha)的alpha,然后计算b,最终得到分割面方程。
接下来就到核函数的学习了,又是一块硬骨头,加油吧。