SVM--深入学习1

来源:互联网 发布:mac如何设置手机铃声 编辑:程序博客网 时间:2024/06/11 14:32

SVM–深入学习1

根据台湾大学林轩田老师机器学习技法课程整理。
SVM就是要找一条最胖的分类线,最胖的分类线如何确定呢?所有点到分类线都有一定距离,这条最胖的线就是最大的所有点中距离最小的那条线。(有点绕)
如下图所示,三幅图中三条线都分类正确,第一幅图中所有点中距离分类线最近的距离记为a1,第二幅图中记为a2,第三幅图记为a3,显然a3>a2>a1,所以a3的那条分类线就是我们所求的最胖的线(max margin)
这里写图片描述

下面我们来说明如何求每一点到分类线的距离distance(几何知识)。
(以分类面为例,和分类线同一道理,利用分类面更方便解释说明)
如下图所示, xx′′ 是分类面上的两个向量,W 是分类面的法向量,于是有WTx=bWTx′′=b。各个点到分类面的距离就可以利用学过的几何知识求得(图中最后一个公式),将WTx用-b替换,可得到最终的形式。
这里写图片描述

求得了distance,margin 就是min distance,我们的目标是求max margin,如下图所示。这里yn=sign(WTx),yn只能取1或-1,正确分类了所以两者乘积肯定为正,所以把上面公式中的绝对值换成了现在的形式。
这里写图片描述
再进一步转化(这个转化还没搞特别清楚,先不写缘由了),得到
这里写图片描述
一般比较方便求最小值,所以再把求最大值转化为求最小值,约束条件也做一下转化,得到
这里写图片描述

这个形式其实就是二次规划,我们用的工具里面都有现成的二次规划求解,所以就很容易求解了。
这里写图片描述
这里写图片描述
但是以上这些都是基于线性可分讨论的,如果线性不可分呢?

原创粉丝点击