支持向量机(三)——线性支持向量机

〇、说明

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

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

一、问题引出

一方面,线性可分支持向量机只适用于线性可分的训练数据集,对于线性不可分的训练数据集则是无能为力的。

另一方面,即使训练数据集线性可分,线性可分支持向量机强依赖于离分类超平面最近的样本[3],过拟合的风险很大。

这时候就需要有一定容错能力的分类模型,线性支持向量机,或者叫软间隔支持向量机,就可以做到这样的容错性。

二、模型描述

这里我采用周志华老师西瓜书[2]的思路来整理这部分。

对于线性可分支持向量机,要求所有样本满足以下约束

y_{i}(w\cdot x_{i}+b)\geq 1, \ i=1,2,\dots,N  \tag{1}

而软间隔则允许某些样本不满足这样的约束。

在最大化间隔的同时,不满足约束的样本要尽量少。此时,优化目标可以写为

\mathop{min}\limits_{w,b}  \quad \frac{1}{2} ||w||^2+C\sum_{i=1}^N L(y_{i}(w \cdot x_{i}+b)-1) \tag{2}

其中,L(z)是一般化的损失函数,C>0被称作惩罚参数,调节间隔最大化和参数惩罚这二者关系。

我们先看惩罚参数C。当C值较大时对误分类惩罚较大,特别地,当C取无穷大时,所有样本都要满足式(1)约束,模型等价于线性可分支持向量机[3];当C取有限值时,模型允许一些样本不满足约束。

接下来讨论损失函数L(z)。当L(z)使用不同的损失函数时的模型状态,周志华老师的西瓜书[2]有简单讨论。当L(z)是合页损失函数时,模型就是线性支持向量机。李航老师《统计学习方法(第二版)》[1]的相关章节证明了线性支持向量机和基于合页损失函数的优化问题的等价性。合页损失函数如下

图1[2]

L(z) = L_{hinge}(z)时,式(2)可重写为

\mathop{min}\limits_{w,b}  \quad \frac{1}{2} ||w||^2+C\sum_{i=1}^N max(0,1-y_{i}(w\cdot x_{i}+b)) \tag{4}

引入松弛变量\xi_{i} \geq 0,将上式再重写为

优化问题一:

\begin{split}&\mathop{min}\limits_{w,b} \  & \frac{1}{2} ||w||^2+C\sum_{i=1}^N \xi _{i} \\& s.t. & y_{i}(w\cdot x+b)\geq 1-\xi _{i} \\&& \xi_{i} \geq 0, \ i=1,2,\dots,N\end{split}\tag{5}

三、拉格朗日对偶问题推导

与线性可分支持向量机类似,线性支持向量机(式(5))的拉格朗日对偶函数如下

L(w,b,\xi;\alpha,\mu)=\frac{1}{2}||w||^2+C\sum_{i=1}^N\xi_{i} + \sum_{i=1}^N\alpha_{i}(1-\xi_{i}-y_{i}(w\cdot x_{i}+b))-\sum_{i=1}^N\mu_{i}\xi_{i} \tag{6}

原问题(式(5))是凸优化问题,则优化问题\mathop{max}\limits_{\alpha,\mu} \ \mathop{min}\limits_{w,b,\xi} \ L(w,b,\xi;\alpha,\mu)与原问题等价。

第一步,L(w,b,\xi;\alpha,\mu)w,b,\xi的极小值。

\frac{\partial}{\partial w} L(w,b,\xi;\alpha,\mu)=w-\sum_{i=1}^N \alpha_{i}y_{i}x_{i}=0 \tag{7}

\frac{\partial}{\partial b} L(w,b,\xi;\alpha,\mu)=-\sum_{i=1}^N \alpha_{i}y_{i}=0  \tag{8}

\frac{\partial}{\partial \xi_{i}} L(w,b,\xi;\alpha,\mu)=C-\alpha_{i}-\mu_{i}=0  \tag{9}

w=\sum_{i=1}^N \alpha_{i}y_{i}x_{i} \tag{10}

\sum_{i=1}^N \alpha_{i}y_{i}=0 \tag{11}

C-\alpha_{i}-\mu_{i}=0 \tag{12}

将式(10)-(12)代入式(6),可得

\mathop{min}\limits_{w,b,\xi} L(w,b,\xi;\alpha,\mu) = -\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}  \tag{13}

第二步,\mathop{min}\limits_{w,b,\xi} L(w,b,\xi;\alpha,\mu) \alpha,\mu的极大值,即得对偶问题。

这里需要注意,式(13)等号右边表达式没有\mu,直接求解对\alpha的极大值即可。对偶问题如下

\begin{split}&\mathop{max}\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 \\&& C-\alpha_{i}-\mu_{i}=0 \\&& \alpha_{i} \geq 0 \\&& \mu_{i} \geq 0, \ \ i=1,2,\dots,N\end{split} \tag{14}

上式中,因为\mu不在最优化表达式中,可以利用等式约束消去,简化约束。再把求极大转换成求极小,得到对偶问题如下

优化问题二:

\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 \\&& 0\leq \alpha_{i} \leq C \ \ i=1,2,\dots,N\end{split} \tag{15}

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

对于已求解出优化问题二(式(15))的最优解\alpha^*,则类似于线性可分支持向量机[3]的推导过程。

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

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

根据式(16f)可得

w^*=\sum_{i=1}^N \alpha^*_{i}y_{i}x_{i} \tag{17}

观察式(16d)(16e)(16h),先看式(16d),当0 <\alpha^*_{i}<C时,有

y_{i}(w^* \cdot x_{i}+b^*)=1-\xi^*_{i} \tag{18}

再看式(16h),当0 <\alpha^*_{i}<C时,有 \mu^*_{i}=C-\alpha^*_{i}>0 \tag{19}

此时再看式(16e),当\mu^*_{i} >0时,必有\xi^*_{i}=0,综上讨论,当0 <\alpha^*_{i}<C时,有

y_{i}(w^* \cdot x_{i}+b^*)=1 \tag{20}

再将式(17)代入上式,并于式(17)联立,可得线性支持向量机的最优分类超平面参数为

\begin{align}& w^*=\sum_{i=1}^N \alpha^*_{i}y_{i}x_{i} \\& b* =y^*_{j}-\sum_{i=1}^N \alpha^*_{i}y_{i}(x_{i} \cdot x_{j}) , \ 0 </p><p>这里需要注意,在李航老师《统计学习方法(第二版)》[1]相关章节中,和式<img class=

这里需要注意,在李航老师《统计学习方法(第二版)》[1]相关章节中,和式(16h)相同表达的式子是不严谨的,如果没看到这一段,这句话略过。

四、支持向量

线性支持向量机的支持向量会复杂一些。如下图

图1[1]

首先,定义\alpha^*_{i}>0的样本点(x_{i},y_{i})为支持向量。

其次,每个支持向量(x_{i},y_{i})到其对应的间隔边界的距离为\frac{\xi^*_{i}}{||w^*||}。推导过程如下。

点到超平面的距离公式为:r=\frac{|w\cdot x+b|}{||w||}

先看正类,正类的间隔边界超平面为:w^*\cdot x+b^*=1,对应的点到间隔边界超平面的距离公式为:r=\frac{|w^*\cdot x_{i}+(b^*-1)|}{||w^*||}。对于正例的支持向量,有y_{i}=+1,根据式(18),有w^*\cdot x_{i} +b^*-1=\xi^*_{i},代入距离公式,即可到结论。

负类推导过程类似。

再次,根据以上结论,分析支持向量。

根据上面式(16e)(16h),消去\mu^*_{i},则有

(C-\alpha^*_{i})\xi^*_{i}=0, \ i=1,2,\dots,N \tag{22}

第一种情况,0<\alpha^*_{i}<C时,则\xi^*_{i}=0,则此支持向量到对应间隔边界的距离r=\frac{\xi^*_{i}}{||w^*||}=0,即此支持向量在间隔边界超平面上。

第二种情况,\alpha^*_{i}=C0<\xi^*_{i} <1时,此支持向量到对应间隔边界的距离r=\frac{\xi^*_{i}}{||w^*||}<\frac{1}{||w^*||},此支持向量分类正确,在间隔边界与分离超平面之间。

第三种情况,\alpha^*_{i}=C\xi^*_{i}=1时,此支持向量到对应间隔边界的距离r=\frac{\xi^*_{i}}{||w^*||}=\frac{1}{||w^*||},此支持向量在分离超平面上。

第四种情况,\alpha^*_{i}=C\xi^*_{i}>1时,此支持向量到对应间隔边界的距离r=\frac{\xi^*_{i}}{||w^*||}>\frac{1}{||w^*||},此支持向量分类错误。

这里需要注意,有没有\alpha^*_{i}=C\xi^*_{i}=0同时成立的点,这里没有找到确定或否定的证据。如果谁有这方面的资料,还烦请告知笔者,先行谢过,联系邮箱:hpfhepf@gmail.com。

五、附录

A、参考

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

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

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

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

B、相关目录

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

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

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

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

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,980评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,178评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,868评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,498评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,492评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,521评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,910评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,569评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,793评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,559评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,639评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,342评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,931评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,904评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,144评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,833评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,350评论 2 342