美文网首页
支持向量机(一)——线性可分支持向量机导出

支持向量机(一)——线性可分支持向量机导出

作者: Herbert002 | 来源:发表于2020-05-27 15:54 被阅读0次

    〇、说明

    支持向量机(Support Vector Machine,SVM)是监督学习中非常经典的算法。笔者主要参考学习的是李航老师《统计学习方法(第二版)》[1]和周志华老师的西瓜书《机器学习》[2]。

    如有错误疏漏,烦请指正。如要转载,请联系笔者,hpfhepf@gmail.com。

    一、问题描述

    提前说明一下,为什么把看起来这么简单的东西,专门写一篇笔记,因为我觉得这个很重要,相当于理解支持向量机的一把钥匙,只有理解了支持向量机是怎么来的,才有可能理解后面更复杂的内容。

    考虑一个二类问题。给定一个特征空间上的训练数据集

     T=\{(x_{1},y_{1}),(x_{2},y_{2}),…(x_{N},y_{N})\}

    其中,x_{i}\in \mathcal X = \mathbb{R}^ny_{i}\in \mathcal{Y}=\{+1,-1\}i=1,2,\cdot \cdot \cdot ,Nx_{i}为第i个特征向量,也称为实例,y_{i}x_{i}的类标记。当y_{i}=+1时,称x_{i}为正例;当y_{i}=-1时,称x_{i}为负例。(x_{i},y_{i})称为样本点。

    假设训练数据集是线性可分的。

    学习的目标是在特征空间找到一个分类超平面,能将实例分到不同的类。分离超平面对应于方程w \cdot x+b=0,它由法向量w和截距b决定,可用(w,b)表示。分离超平面将特征空间划分为两部分,一部分是正类,一部分是负类。法向量指向的一侧为正类,另一侧为负类。

    对于线性可分的训练数据集,存在无穷多个符合条件的分类超平面,那到底哪一个是最好的呢?

    二、线性可分支持向量机

    对于无穷多个分类超平面,直观上来说,位于两类样本中间的那个超平面可能就是最好的超平面,如图1中粗线条表示的分类超平面。

    图1[2]

    样本点x_{i} 到分类超平面(w,b)的距离为r=\frac{1}{||w||} |w\cdot x_{i} +b|。因此可以定义求取此最优超平面的问题为如下的最优化问题

    优化问题一:

    \begin{split}&\mathop{max}\limits_{w,b}  \quad & \gamma \\&s.t. & \frac{1}{||w||}(w\cdot x_{i}+b) \geq \gamma ,\ \ i=1,2,\dots,N\end{split} \tag{1}

    这样的优化问题比较直观,但不容易求解。

    对于如上所述的训练数据集,我们可以构造分类超平面(w,b),使得

    \begin{cases}    w\cdot x_{i}+b> 0,       & \quad y_{i}=+1\\    w\cdot x_{i}+b</p><p>进一步,<img class=

    进一步,\exists \varsigma >0,使得

    \begin{cases}    w\cdot x_{i}+b\geq \varsigma ,       & \quad y_{i}=+1\\    w\cdot x_{i}+b\leq -\varsigma ,       & \quad y_{i}=-1  \end{cases}\tag{3}

    这是推导过程中的关键一步,在周志华老师《机器学习》[2]书中的侧边栏给出,但不够清晰。

    (3)式中,两个不等式两边同时除以\varsigma ,缩放后的系数仍然用w,b表示,则有

    \begin{cases}    w\cdot x_{i}+b\geq 1 ,       & \quad y_{i}=+1\\    w\cdot x_{i}+b\leq -1 ,       & \quad y_{i}=-1  \end{cases}\tag{4}

    如图2所示,距离超平面最近的几个训练样本使得(4)式中等号成立,这些样本被称为“支持向量”。两个不同类的支持向量到分类超平面的距离之和为\gamma =\frac{2}{||w||} ,称之为“间隔”。

    图2[2]

    此时,优化问题一(式(1))等价于

    优化问题二:

    \begin{split}&\mathop{max}\limits_{w,b}  \quad & \frac{2}{||w||} \\&s.t. & y_{i}(w\cdot x_{i}+b) \geq 1,\ \ i=1,2,\dots,N\end{split} \tag{5}

    等价于

    优化问题三:

    \begin{split}&\mathop{min}\limits_{w,b}  \quad & \frac{1}{2} ||w||^2 \\&s.t. & y_{i}(w\cdot x_{i}+b) \geq 1,\ \ i=1,2,\dots,N\end{split} \tag{6}

    这是支持向量机的基本型

    求得优化问题三(式(6))的最优解(w^*,b^* ),就得到最优分类超平面

    w^*\cdot x+b^* =0 \tag{7}

     对应的分类决策函数为

    f(x)=sign(w^* \cdot x +b^*) \tag{8}

    以上推导过程参考周志华老师《机器学习》的思路。李航老师《统计学习方法(第二版)》使用的是函数间隔和几何间隔的思路来推导的。

    三、附录

    A、参考

    [1]、《统计学习方法(第二版)》,李航著,清华大学出版社

    [2]、《机器学习》,周志华著,清华大学出版社

    B、相关目录

    [a]、支持向量机(一)——线性可分支持向量机导出

    [b]、支持向量机(二)——线性可分支持向量机求解

    [c]、支持向量机(三)——线性支持向量机

    [d]、支持向量机(四)——核方法

    [e]、支持向量机(五)——SMO算法

    C、时间线

    2020-05-27 第一次发布

    2020-06-06 修改问题描述和图片来源

    相关文章

      网友评论

          本文标题:支持向量机(一)——线性可分支持向量机导出

          本文链接:https://www.haomeiwen.com/subject/gkbyahtx.html