NLP学习笔记-支持向量机

 

  支持向量机(Support Vector Machine, SVM)算法也是一种处理二分类问题的线性分类器,是一种监督学习的方法,是用来解决样本求解的最大边距超平面的问题,是边界决策中常见的分类方法。

 

最大间隔

  SVM听上去高深且难以理解,不妨举个来了解SVM的思想。小学时,同桌之间经常会用铅笔在课桌的中间画一条先,俗称“三八线”,于是就通过这条线将课桌分成了两部分,每一部分属于不同的人,而画这条线时最大的特点就是公平,即两个人分配到的面积是均等的。“三八线”可以看作是二维空间中支持向量机的解释,SVM正是在特征空间中寻找一个间隔最大的超平面将两种样本分隔开来。

               

  正如在上面这张图中,想要把这两类样本区分开,有很多的线满足要求,即有很多的超平面,然而需要找到一个最优的超平面能最贴切的将两类样本分隔开,这就是支持向量机所求的超平面。

               

  如上面这张图中红线代表的超平面,其满足的要求是使两组样本中距离超平面最近的样本的距离最大。在上图中d1和d2是距离超平面最近的样本的,我们要想找到尽可能知识两类样本分隔开的最优超平面,就要让这两个最小距离的和最大,即最大间隔。

 

支持向量

  介绍完了支持向量机的作用,那么到底什么是支持向量呢?其定义为距离分类的超平面距离最近的样本点即为支持向量。

                 

  如上图,中间的红线为分类的超平面,旁边两条虚线上的三个橙色点和两个蓝色点即为支持向量。这些支持向量的样本点非常重要,以至于这些点之外的点都可以忽略不计。支持向量机正是通过这些点来计算出超平面,实现对样本数据一分为二的。

 

间隔计算

  支持向量机要找到使间隔最大的超平面,就是要计算该平面的函数表达式,在高维空间中,超平面的表达式可以写成wTx+b=0,其中w为超平面的法向量,决定超平面的方向。b为他的截距,决定超平面的位置。

       

  假设已经任意找到了一个可以分隔的超平面,为了方便计算,如图所示将两侧的数据的值取1或-1,通常称做是正负样本数据。假设正样本a中有点x1,负样本b中有点x2,计算原点到这两点的向量并求差,就可以计算出间隔d的长度如下。

               

  于是发现将问题从求最大的间距,简化为了求||w||的最小值,即求解w的二阶范数的最小值。

 

线性分类

      

  通过以上对支持向量机的描述不难发现,SVM解决的样本数据要求为线性可分的,如上图中在二维和三维空间中的两组数据,可以用一条分割线或分割超平面将样本分隔开。

      

  但实际情况往往并非如此,正如上面的左图,两组样本交叉混杂在一起,无法用一个超平面分隔开,那么必然也无法用支持向量机来解决此类问题。所以如何对样本进行一定的预处理,使之变为线性可分的呢?我们不妨将目光放的更开阔些,即将之前的样本,根据其某些特征,向更高的维度进行映射,将原先线性不可分的样本映射成支持向量机可以解决的线性可分的数据。

 

核函数

  核函数(Kernel Function)正是用来将线性不可分的样本映射成线性可分的,其作用为计算两个向量在隐式映射后空间的内积,通过对特征向量做内积,然后使用函数K转换。

     

  在实际应用中,通常会根据样本的特点决定使用哪种核函数,上图中的映射正是使用高斯核函数完成的。使用核函数可以很好的转化线性不可分的问题。在实际使用中,如果样本数据量过大,支持向量的个数会很多,在训练过程中可能耗时较长,速度较慢。

 

回归型支持向量机

  回归型支持向量机(Suport Vector Machine for Regression,SVR)是利用支持向量机来解决回归拟合方面的问题,其思想是寻找一个最优的超平面使得所有的样本距离该最优超平面的距离最小,达到回归的效果。

     

  如上图所示,SVR与传统回归方法不同的是,其可以容忍f(x)与y之间有 ϵ的偏差,即以超平面为中心,样本距离小于 ϵ 的均为预测正确。

                 

    

 

  求解方法是在SVM的基础上加一个不敏感损失函数,即用不敏感损害函数用来描述上图中可以接受的ϵ内的偏差。确定为SVR回归后,其后的推到过程与支持向量机相同。

 

参考文献:

  https://blog.csdn.net/qq_42363032/article/details/107210881

  https://blog.csdn.net/qq_42363032/article/details/121019360

  https://blog.csdn.net/weixin_46161549/article/details/118555035

  https://baijiahao.baidu.com/s?id=1671535528667762528&wfr=spider&for=pc&qq-pf-to=pcqq.c2c

  https://blog.csdn.net/weixin_44657251/article/details/123882018

  https://www.mstx.cn/support-vector-machine/distance-from-point-to-plane.html

  https://zhuanlan.zhihu.com/p/30596284

 

posted @ 2022-08-17 14:50  wisdom_jie  阅读(126)  评论(0编辑  收藏  举报