支持向量机(SVM)

三大件:间隔,对偶,核技巧

支持向量机(SVM)的基本型(摘自西瓜书P123)

在这里插入图片描述
思想:SVM试图找出一个决策边界,让距离两个类别最近的样本最远,这个边界可以是线也可以是超平面

由此可知:支持向量("2."中介绍)到超平面的距离为 d,其他点到超平面的距离都要不小于 d(这句话要好好体会,有助于理解支持向量)

说明:
1.下边的所有公式实际应写成xi,yi比较好,(xi,yi)代表样本集中的所有样本点,大家理解即可
2.在写的时候的分析是基于样本集D={(x1,y1),(x2,y2),…,(xm,ym)},yi={-1,1}


分析基本型流程如下:

  1. 回顾样本空间中任意点x到超平面 (w,b) 的距离(不用管r,就是个符号表示距离),可以写为:
    在这里插入图片描述
    其中||w||是多维向量到原点的距离,是向量的范数,即模长
    在这里插入图片描述
    依据SVM原理,r>=d,解出约束条件(说明:yi=1,即wTx+b>0,反之则小于0):
    在这里插入图片描述
    经过转化得到:
    在这里插入图片描述
    为了方便推导和优化,且这样做对目标函数的优化没有影响,令||w||d为1,得到:
    在这里插入图片描述
    合并可以这样写:
    在这里插入图片描述

  2. 对下边两个超平面
    在这里插入图片描述
    如下图所示(摘自西瓜书P122)

在这里插入图片描述
求出距离,正是我们所说的间隔,上图圈起来的加号和减号的含义才代表支持向量因为它们到所求的超平面(红实线)的距
离才为d,即虚线所代表的两个超平面距离的一半
,这个距离怎么求呢?

回顾两平行直线间的距离公式(摘自百度文库,点击查看):

在这里插入图片描述
每个支持向量超平面的距离(不要管d,就是个符号代表距离)可以写为:
在这里插入图片描述
其中w的公式为:
在这里插入图片描述
和上边的条件约束中||w||d为1保持一致,||w||d即和|wTx+b|(所求超平面)相同为1,而根据间隔的定义,
所求的距离还要乘以2,于是引出关于间隔的公式。

  1. 西瓜书中对间隔 (margin) 的定义:两个异类支持向量到超平面的距离之和,即两超平面之间的距离,
    最终公式如下:
    在这里插入图片描述
    我们让这个间隔最大化,再让所求的超平面位于两超平面的正中间(所求的那个超平面正是上图红线的位置),即可实现最优的
    SVM分类
    ,可以对比上文我拍的西瓜书的那张图。
    为了最大化间隔(上面公式),也方便计算,让分母||w||最小,转化成求下边式子最小的问题:
    在这里插入图片描述
    加上约束条件,即得SVM基本型

之后此系列将继续更新如何优化求解的方案…,请关注后续更新,感谢大家阅读和支持

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐