第5章 支持向量机和核函数

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

原因:选择了一个足够复杂的分类函数,能够精确的记住每 一个样本,但对样本之外的数据一律分类错误。 统计学习引入了泛化误差界的概念,就是指真实风险应该 由两部分内容刻画,一是经验风险,代表了分类器在给定样 本上的误差;二是置信风险,代表了我们在多大程度上可以 信任分类器在未知样本上分类的结果。很显然,第二部分是 没有办法精确计算的,因此只能给出一个估计的区间,也使 得整个误差只能计算上界,而无法计算准确的值。 置信风险与两个量有关,一是样本数量,显然给定的样本 数量越大,我们的学习结果越有可能正确,此时置信风险越 小;二是分类函数的VC维,VC维越大,推广能力越差,置信 风险会变大。
H1
H2
Class 2
H3
H W’
如何寻找最优面?
Class 1
•如图所示,假定划分直线的法方向已给定。直线H1 是一条以w’为法向量且能正确划分两类样本的直线。
这样的直线并不唯一。如果平行推移直线H1 ,
直到碰到某类训练点,就可得到两条极端直线H2和
H3 ,在直线H2和H3之间的平行直线都能正确分类。
VC维是目前为止对函数集学习性能的最好描 述指标。但遗憾的是目前尚没有通用的关于如何 计算任意函数集的VC维的理论。
•结构风险最小化的思想 Vapnik证明,期望风险与经验风险之间的关系满 足如下公式:
R(w) Remp (w) (n / h)
(n / h) 其中n表示样本数,h为学习机器的VC维, (n / h)是随n/h增大而减小的函数。 称为置信区间。
结构风险最小化(SRM)
结构风险最小就是根据函数集的性质将它划 分成一系列嵌套的子集,学习问题就是选择最好 的子集(根据推广能力)和在子集中选择最好的函 数(根据经验风险)
SVM是一种比较好地实现了结构风险最小化思想 的方法
•分类超平面的一些基本概念
g ( x) w x b 0
T
W是超平面H的法向量,决定超平面的方向;
VC维的引入
打散:若存在一个有h个样本的样本集,被一函数集里
的某个函数按照所有可能的2h种形式分为两类,则称
函数集能够把样本数为h的样本集打散(shattering)。
函数集的vc维: 用这个函数集中的函数所能够打散的最大样本集 的样本数目。也就是说,如果存在h个样本的样本集 能够被函数集打散,而不存在有h+1个样本的样本集
设两类线性可分训练样本集为 , y1, x1 ,, yN , xN
x R ,
d
其中y +1,-1 是类别标识。
d维空间,线性判别函数的一般形式为:
g( x) w,x b=w x+b,
T
w R
d
,b R
存在超平面为 :
w x b 0
T
决策面方程
(2)式是一个二次优化问题,存在唯一最优解。把 该式分别对w、b求偏导,并使其等于零,即:
L w, b, 0 w L w, b, 0 b
N
w i yi xi
i 1
N
y
i 1 i
N
i
0
将上面两式带入(2),可得到下式:
1 N N Q J (w, b, ) i i j yi y j xi , x j 2 i 1 j 1 i 1
2)经验非线性方法
如人工神经网络(ANN)
利用已知样本建立非线性模型。
缺点:缺乏一种统一的数学理论
统计学习理论
—针对小样本统计估计和预测的最佳理论
1.统计学习理论基本思想
由贝尔实验室Vapnik于1992年首次提出
•研究小样本下机器学习规律的理论。针对小样本 统计问题,建立了一套新的理论体系 基本思想:折衷考虑经验风险和推广的置信界限, 取得实际期望风险的最小化。即根据有 限样本信息在模型复杂性和学习能力之 间寻求最佳折中 两大核心概念: VC维和结构风险最小化。
第 5章
支持向量机和核函数
• “支持向量机方法是建立在统计学习理论的 VC 维理论和结构化风险最小原理基础上” • 结构化风险 • 结构化风险 = 经验风险 + 置信风险 • 经验风险 = 分类器在给定样本上的误差 • 置信风险 = 分类器在未知样本上分类的结 果的误差
一般模式识别方法的问题 1)传统统计方法 •基于经验风险最小化,经验风险最小不等于期望 风险最小,不能保证分类器的推广(泛化)能力。 •经验风险只有在样本数无穷大趋近于期望风险, 即在有限样本情况下,经验风险最小并不意味着 期望风险最小。 •需要已知样本的分布形式
(n / h) 越大,经验风险和期望风险之间的 VC维h越大, 偏差越大。这样即使在经验误差很小的情况下,其推 广误差会越大。
将函数集构造为一个函数子集序列S1 S2 Sk ,使各个子集按照VC维的大小排列(h1 h2 hk )。在每个子集中寻找的最小经验风 险,随子集复杂度增加而减小,在子集间折衷考虑经 验风险和置信界限,取得实际风险的最小 。
使得训练样本中的正类输入和负类输入分别位 于该超平面两侧。 存在参数(w,b),使得:
yi sgn wT x b , i 1,..., N
许多决策平面都可以将两类样本分开,应选择 哪一个呢?
Class 2
Class 1
目标:最优分类面
满足条件: 经验风险最小(错分最少) 推广能力最大(空白最大)
如何寻找w及b
分类平面应使两类之间的间隔最大。归一化后分类 面方程 g x w x b 应满足:
T
对于任意样本x有:
if if
yi 1 g ( xi ) w xi+b 1
T
yi 1 g ( xi ) w xi+b 1
T
即: yi ( wxi+b) 1
在这一理论基础上,发展了一种新的通用 模式识别方法——支持向量机(SVM) 发展迅速,已经在许多领域都取得了成功 的应用。 • VC维的概念: (VC是取Vapnik和Chervonenkis名字的首字而成) 描述函数集或学习机器的复杂性的指标,即描述 机器学习能力的重要指标
• 样本数量,给定的样本数量越大,学习结果越有 可能正确,此时置信风险越小; 分类函数的VC维,VC维越大,推广能力越差, 置信风险会变大。 提高样本数量,降低VC维,降低置信风险。 • 以前机器学习的目标是降低经验风险,要降低经 验风险,就要提高分类函数的复杂度,导致VC维 很高,VC维高,置信风险就高,所以,结构风险 也高。---- 这是SVM比其他机器学习具有优势的 地方
• 推广能力是指: 将学习机器(即预测函数, 或称学习函数、学习模型)对未来输出进行 正确预测的能力。 • “过学习问题”:某些情况下,当训练误 差过小反而会导致推广能力的下降。 例如:对一组训练样本(x,y),x分布在 实数范围内,y取值在[0,1]之间。无论这 些样本是由什么模型产生的,我们总可以 用y=sin(w*x)去拟合,使得训练误差为0.
H3可表示为 : 两边同除以k,令
T
w'T x b' k
w w, k
T '
b' b k
则H为:
H2为: H3为:
w xb 0
T
w x b 1
T
w x b 1
T
该过程称为分类直线的规范化过程(即判别函数归 一化)。
2 此时两条直线H2和H3之间的间隔为: w
如前所述,对于适当的法向量,会有两条极端的 直线,这两条直线之间有间隔。最优分类直线就应该 是两直线间隔最大的那个法向量所表示的直线。
Class 2
Class 1
m
2 图中分类间隔为 m w
g ( x) (利用式r ) || w ||
SVM基本思想:就是最大化分类间隔 2 w ,因此 等价于 w 2 最小化 。
2 1 即 max min || w ||2 || w || 2
因此,求取最优平面问题就转化为优化问题。 因对于所有样本
于是,对w和b求拉个朗日函数的极小值来求解最优分
类面问题,可转化为在如下约束条件下
y
i 1 i
b 决定超平面的位置。
两类问题:g(x)表示分类面
w g ( x) w ( x p r )b || w ||
T T w w T w xp b r r || w || || w ||
g ( x) r || w ||
2.支持向量机算法
目标: 找到一个超平面,使得它能够尽可能多的将两 类数据点正确的分开,同时使分开的两类数据点距 离分类面最远。 解决方法: 构造一个在约束条件下的优化问题。 SVM是利用核函数将输入向量映射到一个高维 特征空间,并在该空间内构造一个最优超平面来逼 近分类函数。最优分类超平面的构造最终可以归结 为二次寻优问题。
约束是什么?
yi w, xi b 1
在条件式(1)下,求函数
1 1 2 w w w, w 2 2
的最小值。
使式(1)等号成立的样本(即H2 和H3 上
的样本)就叫支持向量。
求极值:可用拉格朗日乘子法求解 引入拉格朗日乘子i0,设Lagrange函数为:
N (2) 1 T T L( w, b, ) w w i [ yi ( w xi b) 1] 2 i 1
显然在H2和H3中间的那条直线H为最好。
以上给出了在已知法向量w’情况下构造划分直 线的方法。这样就把问题归结为寻求法向量w及b。
要让H满足wTx+b=0
,则必须寻找最佳(w、b)
判别函数归一化:
T w 假如H可表示为: ' x b' 0
因为H在中间,显然H2可表示为:
w' x b' k
yi w, xi b 1
满足式(1),且使 w
最优分类面
2
(1)
最小的分类面就是
在条件式(1)下,求函数
1 1 2 w w w, w 2 2
的最小值。
使式(1)等号成立的样本(即H2 和H3 上
的样本)就叫支持向量。
由上节可知 我们的目标函数: 用另一个完全等价的目标函数来代替,那就是: 如果直接来解这个求最小值问题,很容易看出当||w||=0的时 候就得到了目标函数的最小值。反映在图中,就是H2与H3 两条直线间的距离无限大,这个时候,所有的样本点(无论 正样本还是负样本)都跑到了H2和H3中间,而我们原本的 意图是,H2右侧的 被分为正类,H3 左侧的被分为负类,位 于两类中间的样本则拒绝分类。这下可好,所有样本点都进 入了无法分类的灰色地带。造成这种结果的原因是在描述问 题的时候只考虑了目标,而没有加入约束条件, 体现在我们 的问题中就是样本点必须在H2或H3的某一侧(或者至少在 H2或H3上),而不能跑到两者中间。
由于SVM在解决小样本,非线性及高维模式识 别问题中表现出许多特有的优势,因此受到广泛 的关注。
最优分类面:
1)线性可分情况: 对于线性可分问题,是在经验风险为零时, 最小化置信范围。
使两类无错误的分开,且使两类的分类空隙最大,前 者是保证经验风险尽可能小, 后者是使真实风险最小。
SVM问题的数学表示(线性可分情况)
能被函数集打散,则函数集的VC维就是h。
若对于任意的样本数,总能找到一个样本集能够被这 个函数集打散,则函数集的VC维就是无穷大。
例如:3个样本被线性分类器打散的情况
有2h =23=8种分类形式
能打散 VC维为3
不能打散
பைடு நூலகம்
VC维是目前为止对函数集学习性能的最好描 述指标。但遗憾的是目前尚没有通用的关于如何 计算任意函数集的VC维的理论。
机器学习本质上就是一种对问题真实模型的逼近,但真实 模型一定是不知道的。那么我们选择的假设与问题真实解之 间究竟有多大差距,我们就没法得知。这个与问题真实解之 间的误差,就叫做风险。我们选择了一个假设后,真实误差 无从得知, 但我们可以用某些可以掌握的量来逼近它。最直 观的想法就是使用分类器在样本数据上的分类的结果与真实 结果(因为样本是已经标注过的数据,是准确的数据)之间 的差值来表示。这个差值叫做经验风险Remp(w)。以前的机 器学习方法都把经验风险最小化作为努力的目标,但后来发 现很多分类函数能够在样本集上轻易达到100%的正确率,在 真实分类时却一塌糊涂(即所谓的推广能力差,或泛化能力 差)。
相关文档
最新文档