支持向量机中的函数距离和几何距离

作者:Jason Gu
链接:https://www.zhihu.com/question/20466147/answer/28469993
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

SVM是通过超平面将样本分为两类。
在超平面w\cdot x+b=0确定的情况下,|w\cdot x+b|可以相对地表示点x距离超平面的远近。对于两类分类问题,如果w\cdot x+b>0,则x

的类别被判定为1;否则判定为-1。

所以如果y(w\cdot x+b)>0,则认为x的分类结果是正确的,否则是错误的。且y(w\cdot x+b)的值越大,分类结果的确信度越大。反之亦然。

所以样本点(x_{i}, y_{i})与超平面(w, b)之间的函数间隔定义为
\gamma_{i} = y_{i} (w\cdot x_{i} + b)

但是该定义存在问题:即wb同时缩小或放大M倍后,超平面并没有变化,但是函数间隔却变化了。所以,需要将w的大小固定,如||w||=1,使得函数间隔固定。这时的间隔也就是几何间隔 。

几何间隔的定义如下
\gamma_{i} = y_{i} (\frac{w}{||w||}\cdot x_{i} + \frac{b}{||w||})

实际上,几何间隔就是点到超平面的距离。想像下中学学习的点(x_i, y_i)到直线ax+by+c=0的距离公式
d(x_i, y_i) = \frac{|ax_i+by_i+c|}{\sqrt{a^2+b^2}}
所以在二维空间中,几何间隔就是点到直线的距离。在三维及以上空间中,就是点到超平面的距离。而函数距离,就是上述距离公式中的分子,即未归一化的距离。

定义训练集到超平面的最小几何间隔是
\gamma = min_{i=1,...,n} \gamma_{i}

SVM训练分类器的方法是寻找到超平面,使正负样本在超平面的两侧,且样本到超平面的几何间隔最大。
所以SVM可以表述为求解下列优化问题
\underset{w, b}{max} \;\;\;\;\;\; \gamma
s.t. \;\;\; y_{i} (\frac{w}{||w||}\cdot x_{i} + \frac{b}{||w||})\geq \gamma

以上内容在《统计学习方法》中,均有详细的讲解。

posted @ 2017-09-24 21:05  imageSet  阅读(792)  评论(0编辑  收藏  举报