支持向量机(support vector machine,SVM)


写在前面

此blog是学习李航《统计学习方法》相关章节后的小结与推演过程,强化自身记忆


定义

支持向量机是一种二类分类模型。基本模型是定义在特征空间上的间隔最大的线性分类器。


线性可分支持向量机

 给定线性可分训练数据集,通过间隔最大化或等价地求解相应的凸二次规划问题学习得到的分离超平面为

wx+b=0 w ∗ ⋅ x + b ∗ = 0

以及相应的决策函数
f(x)=sign(wx+b) f ( x ) = s i g n ( w ∗ ⋅ x + b ∗ )

函数间隔

 对于给定的训练数据集 T T 和超平面 (w,b),定义超平面关于样本点 (xi,yi) ( x i , y i ) 的函数间隔为

γi^=yi(wxi+b) γ i ^ = y i ( w ⋅ x i + b )

定义超平面 (w,b) ( w , b ) 关于训练数据集 T T 的函数间隔为超平面 (w,b) 关于 T T 中所有样本点 (xi,yi) 的函数间隔最小值,即
γ^=mini=1,...,Nγi^ γ ^ = m i n i = 1 , . . . , N ⁡ γ i ^

由于函数间隔 γ γ 随着 w,b w , b 按比例改变,但是超平面未改变,而函数间隔却按比例改变,因此对超平面的法向量 w w 增加约束,规范化后使 ||w||=1,这使得 (xi,yi) ( x i , y i ) 关于同一个超平面的距离是确定的,即此距离为几何距离

几何间隔

 对于给定的训练数据集 T T 和超平面 (w,b),定义超平面 (w,b) ( w , b ) 关于样本点 (xi,yi) ( x i , y i ) 的几何间隔最小,即

γi=yi(w||w||xi+b||w||) γ i = y i ( w | | w | | ⋅ x i + b | | w | | )

同样,有几何间隔之最小值
γ=mini=1,...,Nγi γ = m i n i = 1 , . . . , N ⁡ γ i

故而,二者有如下关系:
γi=γ=γi^||w||γ^||w|| γ i = γ i ^ | | w | | γ = γ ^ | | w | |

间隔最大化

 支持向量机学习的基本思想是求解能够正确划分训练数据集并且几何间隔最大的分离超平面
1. 最大间隔分离超平面
求得几何间隔最大的分离超平面,即最大间隔分离超平面,可表示为如下约束最优化问题

maxw,bγs.t.yi(w||w||xi+b||w||)γ,i=1,2,...,N m a x w , b γ s . t . y i ( w | | w | | ⋅ x i + b | | w | | ) ≥ γ , i = 1 , 2 , . . . , N

由上述几何间隔与函数间隔的关系,上述约束最优化问题可转化为
maxw,bγ^||w||s.t.yi(wxi+b)γ^,i=1,2,...,N m a x w , b γ ^ | | w | | s . t . y i ( w ⋅ x i + b ) ≥ γ ^ , i = 1 , 2 , . . . , N

由于 γ^ γ ^ w,b w , b 按比例变化,因此可直接将 γ^||w|| γ ^ | | w | | 等价为 1||w|| 1 | | w | | ,同时又有最大化 1||w|| 1 | | w | | 与最小化 12||w||2 1 2 | | w | | 2 等价,故而约束最优化问题为:
minw,b12||w||2s.t.yi(wxi+b)10,i=1,2,...,N m i n w , b 1 2 | | w | | 2 s . t . y i ( w ⋅ x i + b ) − 1 ≥ 0 , i = 1 , 2 , . . . , N

此时,这是一个凸二次规划问题
2.最大间隔分离超平面的存在唯一性
 若训练数据集 T T 线性可分,则可将训练数据集中的样本点完全正确的分开的最大间隔分离超平面存在且唯一
3. 支持向量和间隔边界
 在线性可分的情况下,训练数据集的样本点中与分离超平面距离最近的样本点的实例称为支持向量(support vector)。支持向量约束条件式
yi(wxi+b)1=0

间隔边界为 2||w|| 2 | | w | |

对偶算法

 为了求解线性可分支持向量机的最优化问题,将它最为原始问题,应用拉格朗日对偶性,通过求解对偶问题得到原始问题的最优解。
定义拉格朗日函数

L(w,b,α)=12||w||2i=1Nαiyi(wxi+b)+i=1Nαi L ( w , b , α ) = 1 2 | | w | | 2 − ∑ i = 1 N α i y i ( w ⋅ x i + b ) + ∑ i = 1 N α i

首先了解一下KKT条件:
* 令 L(x) L ( x ) x x 的偏导数均为 0,即L(x)x=0
* 等式约束 h(x)=0 h ( x ) = 0
* 不等式约束配合 KKT 乘子有 αg(x)=0 ∑ α g ( x ) = 0 ,其中 g(x)0,α0 g ( x ) ≤ 0 , α ≥ 0
原始问题为极小极大问题:
minw,bmaxαL(w,b,α) m i n w , b ⁡ m a x α ⁡ L ( w , b , α )

其对偶问题为极大极小问题:
maxαminw,bL(w,b,α) m a x α ⁡ m i n w , b ⁡ L ( w , b , α )

1. 先求对 lagrange l a g r a n g e 函数的极小问题,将 L(w,b,α) L ( w , b , α ) 分别对 w,b w , b 求偏导并令其等于 0
wL(w,b,α)bL(w,b,α)=0=0 ∇ w L ( w , b , α ) = 0 ∇ b L ( w , b , α ) = 0


w=i=1Nαiyixii=1Nαiyi=0 w = ∑ i = 1 N α i y i x i ∑ i = 1 N α i y i = 0

带入 Lagrange L a g r a n g e 函数,得
minw,bL(w,b,α)=12i=1Nj=1Nαiαjyiyj(xixj)+i=1Nαi m i n w , b ⁡ L ( w , b , α ) = − 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j ( x i ⋅ x j ) + ∑ i = 1 N α i

2. 求 lagrange l a g r a n g e 函数的极大问题
maxαs.t.12i=1Nj=1Nαiαjyiyj(xixj)+i=1Nαii=1Nαiyi=0αi0,i=1,2,...,N m a x α − 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j ( x i ⋅ x j ) + ∑ i = 1 N α i s . t . ∑ i = 1 N α i y i = 0 α i ≥ 0 , i = 1 , 2 , . . . , N

与之等价的对偶最小化问题即为
minαs.t.12i=1Nj=1Nαiαjyiyj(xixj)i=1Nαii=1Nαiyi=0αi0,i=1,2,...,N m i n α 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j ( x i ⋅ x j ) − ∑ i = 1 N α i s . t . ∑ i = 1 N α i y i = 0 α i ≥ 0 , i = 1 , 2 , . . . , N


线性支持向量机与软间隔最大化

 由于线性可分支持向量机对线性不可分数据是不适用的,因此修改硬间隔最大化为软间隔最大化
线性不可分意味着某些样本点 (xi,yi) ( x i , y i ) 无法满足函数间隔大于等于1的约束条件。因此引入松弛变量 ξi0 ξ i ≥ 0 ,是函数间隔加上松弛变量大于等于1,因此,约束条件转为如下:

yi(wxi+b)1ξi y i ( w ⋅ x i + b ) ≥ 1 − ξ i

对于每个松弛变量 ξi ξ i 支付一个代价 ξi ξ i ,目标函数则为:
12||w||2+Ci=1Nξi 1 2 | | w | | 2 + C ∑ i = 1 N ξ i

此处 C>0 C > 0 为惩罚参数,
此时线性不可分的线性支持向量机的学习问题变为凸二次规划问题:
minw,b,ξs.t.12||w||2+ci=1Nξiyi(wxi+b)1ξi,i=1,2,...,Nξi0,i=1,2,...,N m i n w , b , ξ 1 2 | | w | | 2 + c ∑ i = 1 N ξ i s . t . y i ( w ⋅ x i + b ) ≥ 1 − ξ i , i = 1 , 2 , . . . , N ξ i ≥ 0 , i = 1 , 2 , . . . , N

定义 lagrange l a g r a n g e 函数:
L(w,b,ξ,α,β)=12||w||2+Ci=1Nξi+i=1Nαi(1ξiyi(wxi+b))+i=1Nβi(ξi) L ( w , b , ξ , α , β ) = 1 2 | | w | | 2 + C ∑ i = 1 N ξ i + ∑ i = 1 N α i ( 1 − ξ i − y i ( w ⋅ x i + b ) ) + ∑ i = 1 N β i ( − ξ i )

将原始 lagrange l a g r a n g e 函数的极小极大问题转化为对偶问题的极大极小问题
maxα,βminw,b,ξL(w,b,ξ,α,β) m a x α , β ⁡ m i n w , b , ξ ⁡ L ( w , b , ξ , α , β )

同样,根据KKT约束,有条件如下
1.Lw=0,Lb=0,Lξi=02.i=1Nβi(ξi)=0,βi03.i=1Nαi(1ξiyi(wxi+b))=0,αi0 1. ∇ L ∇ w = 0 , ∇ L ∇ b = 0 , ∇ L ∇ ξ i = 0 2. ∑ i = 1 N β i ( − ξ i ) = 0 , β i ≥ 0 3. ∑ i = 1 N α i ( 1 − ξ i − y i ( w ⋅ x i + b ) ) = 0 , α i ≥ 0

求解 minw,b,ξL(w,b,ξ,α,β) m i n w , b , ξ ⁡ L ( w , b , ξ , α , β )
maxαs.t.12i=1Nj=1Nαiαjyiyj(xixj)+i=1NαiC=αi+βii=1Nαiyi=0 m a x α − 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j ( x i ⋅ x j ) + ∑ i = 1 N α i s . t . C = α i + β i ∑ i = 1 N α i y i = 0

由于 βi0 β i ≥ 0 ,故而 C=αi+βi C = α i + β i 转化为 0αiC 0 ≤ α i ≤ C
最终可求得判别式
f(x)=sign(i=1NαiyiK(xi,x)+b) f ( x ) = s i g n ( ∑ i = 1 N α i y i K ( x i , x ) + b )

分析此时点到分离超平面的集合距离
γi=γi^||w||=1ξi||w|| γ i = γ i ^ | | w | | = 1 − ξ i | | w | |

其中 ξi||w|| ξ i | | w | | 为点到间隔边界的距离。
分析最优解 α α ∗
1.αi=2.αi<3.αi=0CC=α+ββi>0,ξi=0Cβi=0,1ξiyi(wxi+b)=0ξi=00<ξi<1ξi=1ξi>1 1. α i ∗ = 0 , 此 时 点 位 于 函 数 间 隔 外 , 为 正 确 分 类 点 且 非 支 持 向 量 2. α i ∗ < C , 根 据 C = α + β , 有 β i > 0 , ξ i = 0 , 此 时 点 为 支 持 向 量 3. α i ∗ = C , 有 β i = 0 , 1 − ξ i − y i ( w ⋅ x i + b ) = 0 ξ i = 0 , 此 时 点 为 支 持 向 量 0 < ξ i < 1 , 点 位 于 间 隔 边 间 与 分 离 超 平 面 之 间 , 正 确 分 离 ξ i = 1 , 点 处 于 分 离 超 平 面 上 ξ i > 1 , 点 越 过 分 离 超 平 面 , 点 处 于 错 误 分 类 状 态

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值