SVM函数间隔与几何间隔,函数间隔为什么可以取1

支持向量机中的函数距离和几何距离怎么理解?

作者:玩物丧志TAOLI
链接:https://www.zhihu.com/question/20466147/answer/95923480

个人对函数间隔与几何间隔这样理解。对同一个超平面,通过比例缩放w和b,函数间隔也会同比例变化。也就是说,对于一个成功划分正负实例的超平面(不一定最优),该平面固定,但是通过缩放w和b,可以使其function margin取任何正值。而我们的目标是找到具有最大margin的超平面。显然通过最大化函数间隔没有意义,因为任何成功划分训练实例的超平面都可以使函数间隔无限大。我们注意到,对一个超平面,函数间隔与∥w∥的比值保持不变,也就是说几何间隔与超平面关联。所以,我们目标是最大化几何间隔,而且我们可以令函数间隔为1然后最小化∥w∥达到最大化几何间隔目的。

机器学习SVM中关于函数间隔为什么可以设置为1?

1.

作者:低音mi 链接:https://www.zhihu.com/question/64568136/answer/338574697

   我换一种方式来说明这个问题:核心的想法是函数间隔的改变会引起w和b的成比例地改变,但是分离超平面并没有因此改变。所以我们取函数间隔为1来方便计算,这当然会引起w和b的成比例变化(w和b同时除以函数间隔),但变化后的w和b并没有改变由原来的w和b所表示的分离超平面。

2.

作者:六六六 链接:https://www.zhihu.com/question/64568136/answer/625968582

   个人理解是选取了满足 函数间隔为1的w,b的子集,再在这个子集上求最优解。那些用变量替换 w'=w/r的 ,我就问你 ||wx+b||和1/||w||在数学上等价吗? 我问你 为什么是w'=w/r而不是 w'=w/2r ? 为了让函数间隔为1是吧? 可我的问题就是这个啊! 另外替换后几何间隔为 1/||w'|| = 1/||w/r|| ,可这里 r并不是常数,而是函数间隔 y(wx+b),怎么能忽略掉呢?||wx+b||和1/||w||本身就不等价,再怎么变换也不会等价。只是选了个子集而已。同时由于可以缩放的缘故,这个子集包含了所有与原集合等价的解。

3.
对线性可分数据集,一定有无数个超平面可以划分数据集,那么SVM要做的是什么,就是找出一个最合适的超平面,如何定义最合适呢?那就要确定一个指标,我们选离这个超平面最近的一个点到超平面的距离,其他点到超平面的距离都比这个点大,假设这个距离叫做这个超平面关于这个数据集的’距离’,那么每个超平面都有一个’距离’,其中’距离’最大的就是我们要找的最合适的超平面,为什么呢?因为距离可以表示分类预测的确信程度,离的越远就表示有很大的确信度,越近就表示不那么确信,下面来详细定义:
公式

, [公式] 可以相对地表示点x距离超平面的远近,而 [公式]得符号,与类别标记y得符号是否一致,能够表示分类是否正确(此例中假设数据集线性可分,也就是说可以全部分类正确),所以可以用 [公式] 来表示分类的正确性及确信度( [公式] ),这个就是函数间隔的概念。

你可能感兴趣的:(传统机器学习)