机器学习之支持向量机

一、支持向量机的概念

支持向量机(Support Vector Machine)是一类按监督学习方式对数据进行二元分类的广义线性分类器(generalized linear classifier),其决策边界是对学习样本求解的最大边距超平面(maximum-margin hyperplane)。
SVM有三宝:间隔、对偶、核技巧
SVM有三种:hard-margin SVM、soft-margin、kernel SVM
给定训练样本集 D = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x m , y m ) , } , y i ∈ { − 1 , + 1 } D=\{(x_1,y_1),(x_2,y_2),...,(x_m,y_m),\},y_i\in\{-1,+1\} D={(x1,y1),(x2,y2),...,(xm,ym),},yi{1,+1},在样本空间中找到一个超平面,尽可能将不同类别的样本分开,使得这个划分超平面所产生的分类结果是最鲁棒的,如下图中的粗线部分。
在这里插入图片描述

划分超平面可通过如下线性方程来描述:
w T x + b = 0 w^Tx+b=0 wTx+b=0
其中 w = ( w 1 ; w 2 ; . . . w d ) w=(w_1;w_2;...w_d) w=(w1;w2;...wd)为法向量,决定了超平面的方向;b为位移项,决定了超平面与原点之间的距离,划分超平面被法向量w和位移b确定。
支持向量机 f ( x ) = s i g n ( w T x + b ) f(x)=sign(w^Tx+b) f(x)=sign(wTx+b)是一个经典判别模型。

二、SVM基本型推导

SVM也叫最大间隔分类器,定义模型为:

m a x   m a r g i n ( w , b ) = m a x   d i s t a n c e ( w , b , x i ) ( 1 ) s . t . { w T x i + b ≥ 0 , y i = + 1 w T x i + b ≤ 0 , y i = − 1 ,   i = 1 , 2 , . . . , m ( 2 ) max\ margin(w,b)=max\ distance(w,b,x_i) \qquad (1) \\ s.t.\left\{ \begin{aligned} w^Tx_i+b\ge 0,y_i=+1 \\ w^Tx_i+b \le 0,y_i=-1 \end{aligned} \right.,\ i=1,2,...,m\qquad (2) max margin(w,b)=max distance(w,b,xi)(1)s.t.{wTxi+b0,yi=+1wTxi+b0,yi=1, i=1,2,...,m(2)
通过将(2)伸缩变换可得:
s . t . { w T x i + b ≥ 1 , y i = + 1 w T x i + b ≤ − 1 , y i = − 1 ( 3 ) s.t.\left\{ \begin{aligned} w^Tx_i+b\ge 1,y_i=+1 \\ w^Tx_i+b \le -1,y_i=-1 \end{aligned}\qquad (3) \right. s.t.{wTxi+b1,yi=+1wTxi+b1,yi=1(3)
设划分超平面上一点为x‘,则有 w T x ′ = − b ( 4 ) w^Tx'=-b\qquad (4) wTx=b(4)
距离公式:
r = ∣ w T ∣ ∣ w ∣ ∣ ( x − x ′ ) ∣ ( 投 影 ) = 1 ∣ ∣ w ∣ ∣ ∣ w T x + b ∣ ( 代 入 ( 4 ) 式 ) r=|\frac{w^T}{||w||}(x-x')|(投影)=\frac{1}{||w||}|w^Tx+b|(代入(4)式) r=wwT(xx)()=w1wTx+b((4))
在这里插入图片描述
如图所示,距离超平面最近的这几个训练样本点使得(3)式等号成立,所以对于最近的点有 ∣ w T + b ∣ = 1 |w^T+b|=1 wT+b=1,他们被称为”支持向量“,根据距离公式带入得:

r = 1 ∣ ∣ w ∣ ∣ ( 5 ) r=\frac1{||w||} \qquad(5) r=w1(5)
两个异类支持向量机到超平面的距离之和为:
γ = 2 ∣ ∣ w ∣ ∣ ( 6 ) \gamma =\frac2{||w||} \qquad(6) γ=w2(6)
它被称为间隔(margin).
想要找到最大间隔(maximum margin)的划分超平面,也就是找到满足(3)式种约束参数w和b,使得 γ \gamma γ最大,即
max ⁡ w , b = 2 ∣ ∣ w ∣ ∣ s . t .   y i ( w T x i + b ) ≥ 1 , i = 1 , 2 , . . . , m ( 7 ) \begin{aligned} &\max\limits_{w,b}=\frac2{||w||}\\ &s.t. \ y_i(w^Tx_i+b)\ge1,i=1,2,...,m \end{aligned}\qquad(7) w,bmax=w2s.t. yi(wTxi+b)1,i=1,2,...,m(7)
显然最大化间隔,仅需要最大化 ∣ ∣ w ∣ ∣ − 1 ||w||^{-1} w1,这等价于最小化 ∣ ∣ w ∣ ∣ 2 ||w||^{2} w2,于是(7)式重写为

min ⁡ w , b = 1 2 ∣ ∣ w ∣ ∣ 2 s . t .   y i ( w T x i + b ) ≥ 1 , i = 1 , 2 , . . . , m ( 8 ) \begin{aligned} &\min\limits_{w,b}=\frac1{2}{||w||}^2\\ &s.t. \ y_i(w^Tx_i+b)\ge1,i=1,2,...,m \end{aligned}\qquad(8) w,bmin=21w2s.t. yi(wTxi+b)1,i=1,2,...,m(8)
(8)式即为SVM的基本型

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值