支持向量机(二)——线性可分支持向量机求解

〇、说明

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

如有错误疏漏,烦请指正。如要转载,请联系笔者,[email protected]

一、问题描述

如此系列笔记的上一篇《支持向量机(一)——线性可分支持向量机导出》[3]所述,给定线性可分训练数据集,其中,,。

求解如下优化问题的最优解

优化问题一:

可得最大间隔分离超平面

和对应的分类决策函数

二、朗格朗日对偶算法

优化问题一(式)是一个凸二次规划问题,可以通过求解拉格朗日对偶问题来求解。关于凸优化内容可以参见笔者相关笔记。

构建拉格朗日函数

其中,为拉格朗日乘子组成的向量。

原问题是凸优化问题,则拉格朗日强对偶性成立,所以如下优化问题和原优化问题等价,具体请参见[4]

优化问题二:

也就是说,优化问题二的最优解,即是优化问题一的最优解。

三、求解拉格朗日对偶问题

第一步,先求解

对拉格朗日函数分别对和求偏导,并令其等于0。

可得

将式和式代入拉格朗日函数(式)

\begin{align}L(w,b;\alpha) =& \frac{1}{2} ||w||^2 + \sum_{i=1}^N \alpha_{i}y_{i}(1-(w \cdot x_{i}+b)) \\=& \frac{1}{2} \sum_{i=1}^N\sum_{j=1}^N \alpha_{i} \alpha_{j} y_{i} y_{j}(x_{i} \cdot x_{j}) + \sum_{i=1}^N \alpha_{i} y_{i} - \sum_{i}^N \alpha_{i} y_{i}((\sum_{j=1}^N \alpha_{j} y_{j} x_{j}) \cdot x_{i}) - b \sum_{i=1}^N \alpha_{i} y_{i} + \sum_{i=1}^N \alpha_{i} \\=& -\frac{1}{2} \sum_{i=1}^N\sum_{j=1}^N \alpha_{i} \alpha_{j} y_{i} y_{j}(x_{i} \cdot x_{j}) + \sum_{i=1}^N \alpha_{i} \end{align}

也即

第二步,求解对偶问题

由式和式,可得

优化问题三:

\begin{split}&\mathop{min}\limits_{\alpha} \ &\frac{1}{2} \sum_{i=1}^N\sum_{j=1}^N \alpha_{i} \alpha_{j} y_{i} y_{j}(x_{i} \cdot x_{j}) - \sum_{i=1}^N \alpha_{i} \\& s.t. & \sum_{i=1}^N \alpha_{i} y_{i}=0 \\&& \alpha_{i} \geq 0, \ \ i=1,2,\dots,N\end{split} \tag{11}

这就是线性可分支持向量机的对偶优化问题。求解此优化问题请参见此系列笔记的后续篇章(敬请期待)。

第三步,求解分类超平面和分类模型

当求解优化问题三(式)的最优解为,根据式可得

接下来求解截距的最优解。

根据凸优化问题的KTT条件:优化问题一(式)是凸优化问题,则满足KKT条件的点是原问题和对偶问题的最优解(具体请参见[4])。

\begin{align}& y_{i}(w^*\cdot x_{i}+b^*) \geq 1,\ \ i=1,2,\dots,N \tag{13a} \\& \alpha^*_{i}(1-y_{i}(w^* \cdot x_{i}+b^*))=0,\ \ i=1,2,\dots,N \tag{13b} \\& \alpha^*_{i} \geq 0 ,\ \ i=1,2,\dots,N \tag{13c}\\& \frac{\partial}{\partial w} L(w^*,b^*;\alpha^*)=w^*-\sum_{i=1}^N \alpha^*_{i}y_{i}x_{i}=0 \tag{13d} \\& \frac{\partial}{\partial b} L(w^*,b^*;\alpha^*)=-\sum_{i=1}^N \alpha^*_{i}y_{i}=0 \tag{13e}\end{align}

由式也可得出式。

将式单独拿出来,在中选择一个(支持向量),则有

将式代入式,对于任一,有

到此,对于已经求出优化问题的朗格朗日乘子的最优解,则线性可分支持向量机的最优超平面为的参数为

此时,分类模型为式。

四、支持向量

将上面KKT条件的式单独拿出来

当时,则有

对应的样本都在间隔边界上,如下图

图1[2]

再观察式,当时,对应的样本是不参与参数计算的。

综上,线性可分支持向量机是强依赖于离分类超平面最近的样本点的,这和基于概率统计的分类方法是不同的。

五、附录

A、参考

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

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

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

[4]、《凸优化(八)——Lagrange对偶问题》

B、相关目录

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

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

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

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

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

C、时间线

2020-06-01 第一次发布

2020-06-02 添加《支持向量》部分

2020-06-06 修改图片来源

你可能感兴趣的:(支持向量机(二)——线性可分支持向量机求解)