支持向量机之——线性可分支持向量机

线性可分支持向量机

  • 这个系列的博客可视为读李航老师的《统计学习方法》支持向量机一节的读后感,目标是由浅到深,清楚的复述描述支持向量机相关内容

目录:

基本概念

下面引用书本的原话:

支持向量机(support vector machines)是一种二类分类模型,它的基本模型是定义在特征空间上的间隔最大的线性分类器,间隔最大化使其有别于感知机。支持向量机还包括核技巧,这使它成为本质上的非线性分类器。支持向量机的学习策略就是间隔最大化,可形式化为一个求解凸二次规划的问题(convex quadratic programming),也等价于正则化的合页损失函数最小化问题。支持向量机的学习算法是求解凸二次规划的最优化算法。

名词简单介绍:
特征空间:在机器学习中,指的是数据被特征化以后形成的多维空间。例如,训练一个拥有100个维度的数据集,则特征空间就是100维的
线性分类器:模型是参数的线性函数,这样,模型可以表示为 y=wx ,线性空间的特点是可训练的,这为机器学习提供了方便。
感知机:根据线性条件,将空间一分为二的超平面
凸二次规划:组合优化科学的基本方法,有较为复杂的定义

线性可分支持向量机

线性可分支持向量机(liner support vector machine in linearly separable case)是支持向量机中最简单的一类,也是最特殊的一类,更多的SVM是其特殊情况。

线性可分支持向量机指的是训练数据线性可分,这个时候,我们使其硬间隔最大化(hard margin maximization),来进行学习。因此线性可分支持向量机又称硬间隔支持向量机

线性可分的定义

给定一个数据集:

T={(x1,y1),(x2y2),,(xNyN)}

其中, xiχ=Rn , yiY={+1,1},  i=1,2,,N , 如果存在某个超平面S
wx+b=0

能够将数据集的正实例点和负实例点完全正确地划分到超平面两侧,即对所有 yi=+1 的实例 i ,有wxi+b>0, 对所有 yi=1 的实例 i ,有wxi<0,则称数据集 T 为线性可分数据集(linearly separable data set);否则,称数据集 T线性不可分

对于一个训练集是线性可分的情况, xi i 的第i个特征向量,也称实例, yi xi 的类标记, yi=1 xi 为负例, (xi,yi) 为样本点。

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

线性可分支持向量机利用间隔最大化的方法,求得每个点到超平面的距离之和最大的唯一分离超平面。对于测试数据,即可由分离超平面来进行分类。

线性可分支持向量机的数学定义

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

wx+b=0

以及相应的分类决策函数
f(x)=sign(wx+b)

称为线性可分支持向量机

考虑如图所示分类问题
这里写图片描述

我们认为,离分离平面越远,则越确信其分类是正确的。如图,A的确信度最差,C的最高,而B介于A和C之间。

一般来说,一个点距离分离超平面的远近可以表示预测的确信程度。在超平面 wx+b=0 确定的情况下, |wx+b| 能够相对地表示点 x 距离超平面的远近,而wx+b的符号与类标记 y 的符号是否一致能够表示分类是否正确。所以可用y(wx+b)来表示分类的正确性及确信度,这就是函数间隔(functional margin)的概念。

函数间隔的定义

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

γi^=yi(wxi+b)

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

函数间隔可以表示预测的正确性及确信度。但是选择分离超平面时,只有函数间隔还不够。因为只要成比例地改变 w b,例如将它们改为 2w 2b ,超平面并没有改变,但函数间隔却成为原来的2倍,这一事实启示我们,可以对分离超平面的法向量 w 加某些约束,如规范化,||w||=1,使得间隔是确定的,这是函数间隔成为几何间隔(geometric margin)。

下图给出了超平面 (w,b) 及其法向量 w ,点A表示某一实例 xi ,其类标记为 yi=+1 。点 A 与超平面(w,b)的距离由线段 AB 给出,记作 γi

γi=w||w||xi+b||w||

这里写图片描述

其中 ||w|| w L2范数。这是点 A 在超平面正的一侧的情形。如果点A在超平面负的一侧,即 yi=1 ,那么点与超平面的距离为

γi=(w||w||xi+b||w||)

一般地,当样本点 (xi,yi) 被超平面 (w,b) 正确分类时,点 xi 与超平面 (w,b) 的距离是
γi=yi(w||w||xi+b||w||)

这就是样本点的 几何间隔,而超平面关于训练集的几何间隔即为所有样本点中的最小值,即
γi^=mini=1,,Nri^

超平面 (w,b) 关于样本点 (xi,yi) 的几何间隔一般是实例点到超平面的带符号的距离(signed distance),当样本点被超平面正确分类时就是实例点到超平面的距离。

从函数间隔和几何间隔的定义可知,函数间隔和几何间隔有下面的关系:

γi=γi^||w||

γ=γ^||w||

如果 ||w||=1 ,那么函数间隔和几何间隔相等,如果超平面参数 w b成比例地改变(超平面没有改变),函数间隔也按此比例改变,而几何间隔不变。

间隔最大化

支持向量机学习的基本想法是求解能够正确划分训练数据集并且几何间隔最大的分离超平面。对线性可分的训练数据集而言,线性可分分离超平面有无穷多个(等价于感知机),但是几何间隔最大的分离超平面是唯一的。这里的间隔最大化又称为硬间隔最大化(与将要讨论的训练数据集近似线性可分时的软间隔最大化相对应)。

间隔最大化的直观解释是:对训练数据集找到几何间隔最大的超平面意味着以充分大的确信度对训练数据进行分类。也就是说,不进将正负实例点分开,而且对最难分的实例点(离超平面最近的点)也有足够大的确信度将他们分开。这样的超平面应该对未知的新实例有很好的分类预测能力。

最大间隔分离超平面

下面考虑如何求得一个几何间隔最大的分离超平面,即最大间隔分离超平面,具体地,这个问题可以表示为下面的约束最优化问题:

maxw,b γ

s.t.  yi(w||w||xi+b||w||)γ,  i=1,2,,N

即我们希望最大化超平面 (w,b) 关于训练数据集的几何间隔 γ ,约束条件表示的是超平面 (w,b) 关于每个训练样本点的几何间隔至少是 γ

考虑几何间隔和函数间隔的关系式,可将这个问题改写为

maxw,bγ^||w||

s.t.  yi(wxi+b)γ,  i=1,2,,N

函数间隔 γ^ 的取值并不影响最优化问题的解,事实上,假设将 w b按比例改编为 λw λb ,这时函数间隔成为 λγ^ 。函数间隔的这一改变对上面最优化问题的不等式约束没有影响,对目标函数的优化也没有影响,也就是说,它产生一个等价的最优化问题。这样, 就可以取 γ^=1 ,将 γ^=1 代入上面的最优化问题,注意到最大化 1||w|| 和最小化 12||w||2 是等价的,于是就得到下面的线性可分支持向量机学习的最优化问题。
minw,b12||w||2(1)

s.t.  yi(wxi+b)10,  i=1,2,,N(2)

这是一个凸二次规划问题(convex quadratic programming)。

凸二次规划

凸二次规划问题是指约束最优化问题

minwf(w)

s.t.  gi(w)0,  i=1,2,,k

      hl(w)=0,  i=1,2,,l

其中,目标函数 f(w) 和约束函数 gi(w) 都是 Rn 上的连续可微的凸函数,约束函数 hl(w) Rn 上的仿射函数仿射函数。

仿射函数
f(x) 称为仿射函数,如果它满足 f(x)=ax+b, aRm, bR, xRm 它表达了一种从m维到一维的空间变换,类似的也可以变化到m到n维

当目标函数 f(w) 是二次函数且约束函数 gi(w) 是仿射函数时,上述凸最优化问题成为凸二次规划问题。

如果求出了约束最优化问题(1) ~ (2)的解 w,b ,那么就可以得到最大间隔分离超平面 wx+b=0 及分类决策函数 f(x)=sign(wx+b) ,即线性可分支持向量机模型。

综上所述,就有下面的线性可分支持向量机的学习算法——最大间隔法(maximum margin method)。

线性可分支持向量机的学习算法——最大间隔法

输入:线性可分训练数据集 T={(x1,y1),(x2y2),,(xNyN)} ,其中, xiχ=Rn , yiY={+1,1},  i=1,2,,N

输出:最大间隔分离超平面和分类决策函数。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值