第4章-支持向量机及其学习算法.ppt
- 文档编号:9750030
- 上传时间:2023-05-21
- 格式:PPT
- 页数:70
- 大小:712.50KB
第4章-支持向量机及其学习算法.ppt
《第4章-支持向量机及其学习算法.ppt》由会员分享,可在线阅读,更多相关《第4章-支持向量机及其学习算法.ppt(70页珍藏版)》请在冰点文库上搜索。
支持向量机及其学习算法,合肥工业大学图像信息处理研究室http:
/,协同形成结构竞争促进发展,主要内容,一、历史背景二、统计学习理论三、支持向量机四、支持向量机的分类学习算法五、用于函数拟合的支持向量机六、支持向量机算法的研究与应用七、仿真实例,传统统计学是一种渐进理论,研究的是样本数目趋于无穷大时的极限特性。
现有的学习方法多基于传统统计学理论,但在实际应用中,样本往往是有限的,因此一些理论上很优秀的学习方法在实际中的表现却不尽人意,存在着一些难以克服的问题,比如说如何确定网络结构的问题、过学习问题、局部极小值问题等,从本质上来说就是因为理论上需要无穷样本与实际中样本有限的矛盾造成的。
与传统统计学的方向不同,Vapnik等人提出了一个较完善的基于有限样本的理论体系统计学习理论。
统计学习理论是一种专门研究小样本情况下机器学习规律的理论,它从更本质上研究机器学习问题,为解决有限样本学习问题提供了一个统一的框架。
支持向量机方法是在统计学习理论基础上发展起来的通用学习方法,它具有全局优化、适应性强、理论完备、泛化性能好等优点。
Return,统计学习理论(StatisticalLearningTheory,SLT),机器学习的基本问题统计学习理论,机器学习问题的表示,基于数据的机器学习是现有智能技术中的重要方面,其研究的实质是根据给定的训练样本求出对系统输入输出之间依赖关系的估计,使它能对未知样本的输出做出尽可能准确的预测。
定义期望风险:
预测函数集,广义参数,损失函数,联合概率分布,经验风险最小化(EmpiricalRiskMinimization,ERM),实际应用中,一般根据概率论中的大数定理,即采用下式的算术平均来逼近期望风险。
用对参数求经验风险的最小值代替求期望风险的最小值。
事实上,从期望风险最小化到经验风险最小化并没有可靠的理论依据,只是直观上合理的想当然做法。
经验风险最小化原则不成功的一个例子就是神经网络的过学习问题:
训练误差(经验风险)过小反而会导致推广能力的下降,即真实误差(期望风险)的增加。
出现过学习现象的原因主要是由于学习样本不充分和学习机器设计不合理。
当试图用一个复杂的模型去拟合有限的样本,必然会丧失推广能力。
由此可见,有限样本下学习机器的复杂性与推广性之间存在矛盾。
机器的复杂度高,必然会导致其推广性差;反之,一个推广性好的学习机器,其分类能力必然不够强。
设计一个好的学习机器的目标就变成如何在学习能力和推广性之间取得一个平衡,使得在满足给定学习能力的前提下,提高其推广性。
Return,统计学习理论(SLT),统计学习理论被认为是目前针对小样本统计估计和预测学习的最佳理论。
它从理论上较为系统的研究了经验风险最小化原则成立的条件、有限样本下经验风险与期望风险的关系以及如何利用这些理论找到新的学习原则和方法等问题。
其中,最有指导性的理论结果是推广性的界的结论,和与此相关的一个核心概念是函数集的VC维。
函数集的VC维(VapnikChervonenkisDimension),模式识别方法中VC维的直观定义是:
对于一个指标函数集,如果存在n个样本能够被函数集中的函数按所有可能的种形式分开,则称函数集能够把n个样本打散;函数集的VC维就是它能打散的最大样本数目h。
有界实函数的VC维可以通过用一定的阈值将其转化为指示函数来定义。
VC维反映了函数集的学习能力,VC维越大则学习机器越复杂(学习能力越强)。
推广性的界,统计学习理论系统地研究了各种类型函数集的经验风险(即训练误差)和实际风险(即期望风险)之间的关系,即推广性的界。
关于两类分类问题有如下结论:
对指示函数集中的所有函数,经验风险和实际风险之间至少以概率满足如下关系:
其中h是函数集的VC维,l是样本数。
置信范围,实际风险,学习机器的实际风险由两部分组成:
经验风险,即训练误差;置信范围(ConfidenceInterval)可以简单的表示为:
它表明在有限样本训练下,学习机VC维越高(机器的复杂性越高),则置信范围越大,导致真实风险与经验风险之间可能的差别越大。
这就是为什么出现过学习现象的原因。
结构风险最小化(StructuralRiskMinimization,SRM),经验风险最小化原则在样本有限(即较大)时是不合理的,此时一个小的经验风险值并不能保证小的实际风险值。
为解决此问题,就需要在保证分类精度(即减小经验风险)的同时,降低学习机器的VC维,从而使得学习机器在整个样本集上的期望风险得到控制,这就是结构风险最小化(SRM)原则的基本思想。
结构风险最小化为我们提供了一种不同于经验风险最小化的更科学的学习机器设计原则,显然,利用结构风险最小化原则的思想,就可以完美解决神经网络中的过学习问题。
支持向量机方法实际上就是这种思想的具体实现。
函数集子集:
VC维:
结构风险最小化示意图,支持向量机(SupportVectorMachine,SVM),90年代中期,在统计学习理论的基础上发展出了一种通用的学习方法支持向量机。
它根据有限的样本信息在模型的复杂性和学习能力之间寻求最佳折衷,以获得最好的泛化能力。
支持向量机在很多机器学习问题的应用中已初步表现出很多优于已有方法的性能。
小样本非线性,支持向量机的理论最初来自于对数据分类问题的处理。
对于线性可分数据的二值分类,如果采用多层前向网络来实现,其机理可以简单描述为:
系统随机的产生一个超平面并移动它,直到训练集合中属于不同类别的点正好位于该超平面的不同侧面,就完成了对网络的设计要求。
但是这种机理决定了不能保证最终所获得的分割平面位于两个类别的中心,这对于分类问题的容错性是不利的。
保证最终所获得的分割平面位于两个类别的中心对于分类问题的实际应用是很重要的。
支持向量机方法很巧妙地解决了这一问题。
该方法的机理可以简单描述为:
寻找一个满足分类要求的最优分类超平面,使得该超平面在保证分类精度的同时,能够使超平面两侧的空白区域最大化;从理论上来说,支持向量机能够实现对线性可分数据的最优分类。
为了进一步解决非线性问题,Vapnik等人通过引入核映射方法转化为高维空间的线性可分问题来解决。
最优分类超平面(OptimalHyperplane),对于两类线性可分的情形,可以直接构造最优超平面,使得样本集中的所有样本满足如下条件:
(1)能被某一超平面正确划分;
(2)距该超平面最近的异类向量与超平面之间的距离最大,即分类间隔(margin)最大;以上两个条件体现了结构风险最小化(SRM)的原则。
保证经验风险最小,保证置信范围最小,设训练样本输入为,对应的期望输出为如果训练集中的所有向量均能被某超平面正确划分,并且距离平面最近的异类向量之间的距离最大(即边缘margin最大化),则该超平面为最优超平面(OptimalHyperplane)。
最优分类面示意图,支持向量SupportVector,其中距离超平面最近的异类向量被称为支持向量(SupportVector),一组支持向量可以唯一确定一个超平面。
SVM是从线性可分情况下的最优分类面发展而来,其超平面记为:
为使分类面对所有样本正确分类并且具备分类间隔,就要求它满足如下约束:
可以计算出分类间隔为,因此构造最优超平面的问题就转化为在约束式下求:
为了解决这个约束最优化问题,引入下式所示的Lagrange函数:
其中为Lagrange乘数。
约束最优化问题的解由Lagrange函数的鞍点决定。
利用Lagrange优化方法可以将上述二次规划问题转化为其对偶问题,即在约束条件:
下对求解下列函数的最大值:
如果为最优解,那么:
以上是在不等式约束下求二次函数极值问题,是一个二次规划问题(QuadraticProgramming,QP),存在唯一解。
根据最优性条件Karush-Khn-Tucker条件(KKT条件),这个优化问题的解必须满足:
对多数样本将为零,取值不为零的所对应的样本即为支持向量,它们通常只是全体样本中很少的一部分。
求解上述问题后得到的最优分类函数是:
在通过训练得到最优超平面后,对于给定的未知样本x,只需计算f(x)即可判断x所属的分类。
若训练样本集是线性不可分的,或事先不知道它是否线性可分,将允许存在一些误分类的点,此时引入一个非负松弛变量,约束条件变为:
目标函数改为在以上约束条件下求:
即折衷考虑最小错分样本和最大分类间隔。
其中,C0为惩罚因子,控制对错分样本的惩罚程度。
线性不可分情况和线性可分情况的差别就在于可分模式中的约束条件中的在不可分模式中换为了更严格的条件。
除了这一修正,线性不可分情况的约束最优化问题中权值和阈值的最优值的计算都和线性可分情况中的过程是相同的。
支持向量机(SupportVectorMachine,SVM),在现实世界中,很多分类问题都是线性不可分的,即在原来的样本空间中无法找到一个最优的线性分类函数,这就使得支持向量机的应用具有很大的局限性。
但是可以设法通过非线性变换将原样本空间的非线性问题转化为另一个空间中的线性问题。
SVM就是基于这一思想的。
首先将输入向量通过非线性映射变换到一个高维的特征向量空间,在该特征空间中构造最优分类超平面。
由于在上面的二次规划(QP)问题中,无论是目标函数还是分类函数都只涉及内积运算,如果采用核函数(KernelFunction)就可以避免在高维空间进行复杂运算,而通过原空间的函数来实现内积运算。
因此,选择合适的内积核函数就可以实现某一非线性变换后的线性分类,而计算复杂度却没有增加多少,从而巧妙地解决了高维空间中计算带来的“维数灾难”问题。
此时,相应的决策函数化为:
支持向量机求得的决策函数形式上类似于一个神经网络,其输出是若干中间层节点的线性组合,而每一个中间层节点对应于输入样本与一个支持向量的内积,因此也被称作是支持向量网络。
支持向量机示意图,选择不同的核函数可以生成不同的支持向量机,常有以下几种:
(1)线性核函数:
(2)多项式核函数:
(3)Gauss核函数:
(4)Sigmoid核函数:
一个具体核函数的例子,假设数据是位于中的向量,选择:
然后寻找满足下述条件的空间H:
使映射从映射到H且满足:
可以选择H=R3以及:
用图来表示该变换:
SVM用于二维样本分类,支持向量机与多层前向网络的比较,与径向基函数网络和多层感知器相比,支持向量机避免了在前者的设计中经常使用的启发式结构,它不依赖于设计者的经验知识;而且支持向量机的理论基础决定了它最终求得的是全局最优值而不是局部极小值,也保证了它对于未知样本的良好泛化能力而不会出现过学习现象。
支持向量机的分类学习算法,对于分类问题,用支持向量机方法进行求解的学习算法过程为:
第一步给定一组输入样本,及其对应的期望输出;第二步选择合适的核函数及相关参数;第三步在约束条件和下求解得到最优权值;,第四步计算:
;第五步对于待分类向量x,计算:
为1或1,决定x属于哪一类。
用于函数拟合的支持向量机,假定数据集。
首先考虑用线性回归函数拟合数据集X的问题。
所有训练数据在精度下无误差地用线性函数拟合,即:
考虑到允许拟合误差存在的情况:
优化目标函数为:
对偶问题为:
在约束条件下求下式的最大值。
回归函数为:
支持向量机算法的研究与应用,支持向量机算法改进核函数的改进错误惩罚参数的选择不敏感参数的选择支持向量机解决多类划分问题支持向量机的应用,支持向量机算法改进,传统的利用标准二次型优化技术解决对偶问题的方法可能是训练算法慢的主要原因。
首先,SVM方法需要计算和存储核函数矩阵,当样本点数目较大时,需要很大的内存,例如,当样本点数目超过4000时,存储核函数矩阵需要多达128MB内存;其次,SVM在二次型寻优过程中要进行大量的矩阵运算,多数情况下,寻优算法是占用算法时间的主要部分。
近年来人们针对方法本身的特点提出了许多算法来解决对偶寻优问题。
这些算法的一个共同的思想就是采用分而治之的原则将原始QP问题分解为规模较小的子问题,通过循环解决一系列子问题来求得原问题的解。
现有的训练算法分为三类:
“块算法”(chunkingalgorithm)“Osuna分解算法”“SMO算法”,核函数的改进,核函数的形式及其参数决定了分类器的类型和复杂程度。
在不同的问题领域,核函数应当具有不同的形式和参数,应将领域知识引入进来,从数据依赖的角度选择核函数。
初步尝试的方法有:
Amari利用黎曼几何结构方法来修改核函数;Barzilay通过改进邻近核来改进核函数;Brailovsky局部核函数方法;G.F.Smits多个核函数组合起来使用;,错误惩罚参数的选择,错分样本惩罚参数C实现在错分样本的比例和算法复杂度之间的折衷。
C值的确定一般是用户根据经验给定的,随意性很大,也很难知道所取C值的好坏性。
如何消除C值选取的随意性,而采用某种方法自动地选择一个最佳的C值,这个问题目前尚未解决。
不敏感参数的选择,SVM通过参数控制回归估计的精度,但取多少才能达到所期望的估计精度是不明确的,为此出现了许多新的SVM方法。
Schlkoph和Smola-SVM方法LinC-F加权支持向量机,通过对每个样本数据点采用不同的,来获得更准确的回归估计。
支持向量机解决多类划分问题,“多类支持向量机”(Multi-categorySupportVectorMachines,M-SVMs)。
它们可以大致分为两大类:
(1)通过某种方式构造一系列的两类分类器并将它们组合在一起来实现多类分类;
(2)直接在目标函数上进行改进,建立K分类支持向量机。
一对多方法(l-against-rest,1-a-r),此算法是对于K类问题构造K个两类分类器。
第i个SVM用第i类中的训练样本作为正的训练样本,而将其它的样本作为负的训练样本,即每个SVM分别将某一类的数据从其他类别中分离出来。
测试时将未知样本划分到具有最大分类函数值的那类。
缺点:
泛化能力较差,且训练样本数目大,训练困难。
此外,该方法还有可能存在测试样本同时属于多类或不属于任何一类的情况。
一对一方法(l-against-1,1-a-1),该算法在K类训练样本中构造所有可能的两类分类器,每类仅仅在K类中的两类训练样本之间训练,结果共构造K(K-1)/2个分类器。
组合这些两类分类器很自然地用到了投票法,得票最多(MaxWins)的类为新点所属的类。
缺点:
推广误差无界,分类器的数目K(K-1)/2随类数K的增加急剧增加,导致在决策时速度很慢。
此外,还可能存在一个样本同时属于多个类的情况。
决策导向非循环图SVM方法(DecisionDirectedAcyclicGraph,DDAG),在训练阶段,其与1-a-1方法相同,对于K类问题,DDAG含有K(K-1)/2个两类分类器。
然而在决策阶段,使用从根节点开始的导向非循环图(DAG),具有K(K-1)/2个内部节点以及K个叶子节点,每个内部节点都是一个两类分类器,叶子节点为最终的类值。
缺点:
根节点的选择直接影响着分类的结果,不同的分类器作为根节点,其分类结果可能会不同,从而产生分类结果的不确定性。
基于二叉树的多类SVM分类方法,对于K类的训练样本,训练K-1个支持向量机。
第1个支持向量机以第1类样本为正的训练样本,将第2,3,K类训练样本作为负的训练样本训练SVM1,第i个支持向量机以第i类样本为正的训练样本,将第i+l,i+2,K类训练样本作为负的训练样本训练SVMi,直到第K-1个支持向量机将以第K-1类样本作为正样本,以第K类样本为负样本训练SVM(K-1)。
优点:
所需要训练的两类支持向量机的数量少;消除了决策时存在同时属于多类或不属于任何一类的情况;总共需要训练的样本和前两种方法相比减少了许多。
缺点:
若在某个节点上发生分类错误,将会把错误延续下去,该节点后续下一级节点上的分类就失去意义。
最小最大模块化支持向量机(Min-Max-Modular-SVM,M3-SVM),该方法充分利用分布式并行计算系统,将一个K类问题分解成K(K-1)/2个二类问题,然后把一个二类问题分解成一系列指定规模的小的二类子问题。
优点:
这些二类子问题的特点是在训练过程中完全相互独立,因此可以容易地在集群计算机和网格上实现超并行学习。
在保证推广能力的前提下,能够明显提高训练速度,是一种解决大规模模式分类问题的有效方法。
支持向量机的应用,随着对SVM研究的进展和深入,其应用也越来越广泛,基于SVM思想的一些模型和方法被广泛应用于各个领域,包括模式识别,如人脸识别、字符识别、笔迹鉴别、文本分类、语音鉴别、图像识别、图像分类、图像检索等等;回归估计,如非线性系统估计、预测预报、建模与控制等等;以及网络入侵检测、邮件分类、数据挖掘和知识发现、信号处理、金融预测、生物信息等新领域。
仿真实例,【例4-1】用支持向量机解决异或问题,为了阐述支持向量机的设计过程,这里以XOR(异或)问题为例进行说明。
表1中列出了输入向量以及四个可能状态的期望响应。
该问题在二维输入空间不是线性可分的,为此利用核映射方法映射到高维空间来解决。
表1异或(XOR)问题,令:
并且,把内积核表示为单项式的不同阶数的展开式如下:
可以推断出在特征空间中由输入向量x产生的映射为:
类似的,可以得到:
将看作是的对称矩阵K的第ij项元素(其中l表示训练样本数目),则可得到:
因此对偶问题的目标函数为:
关于Lagrange乘子最优化即可得到如下同时存在的四个方程:
因此,Lagrange乘子的最优值为:
这一结果表明在该例子中的四个输入向量都是支持向量。
的最优值为:
相应的,可以得到:
则最优权值即为:
最优分类面为:
即:
可以推导出:
即为分类面方程。
该分类面在特征空间中是一个超平面,如下图所示。
图中实心圆点和实心方框分别代表两个类别,可以被图中所示的线性分类面分开。
在原始二维输入空间中,分类函数则是双曲线,如图2所示。
图中的“”和“”分别代表两个不同的类别,“+”表示支持向量。
在图2中可以看出,这两类样本点可以被图中所示的分类曲线分开,而且这四个样本点均为支持向量。
训练样本图像,部分测试样本图像,【例4-4】三类形状交通标志识别,本例为三类形状识别,在此使用基于二叉树的多类SVM分类方法进行分类识别,因此需要构造两个支持向量机分类器。
在训练过程中,首先将训练图像二值化,再用离散Hough变换对各类形状样本进行特征提取,分别得到1*32的特征向量,作为支持向量机的输入。
第1个支持向量机以三角形标志作为正的训练样本,将四边形和圆形作为负的训练样本训练SVM1,第2个支持向量机以四边形为正的训练样本,将圆形作为负的训练样本训练SVM2。
使用支持向量机相应的分类函数svc,svcoutput进行仿真实验。
实验中,采用RBF核函数,核宽度为1,惩罚因子C取100。
【例4-5】用不同类型的支持向量机实现函数拟合。
试设计支持向量机实现下面这对数组的函数拟合:
P=-1:
0.1:
1;T=-0.96-0.577-0.07290.3770.6410.660.4610.1336-0.201-0.434-0.5-0.393-0.16470.09880.30720.3960.34490.1816-0.03120.2183-0.3201,本例使用支持向量机相应的回归函数svr,svrplot,svroutput进行函数拟合的仿真。
实验中,采用RBF核函数,惩罚因子C取100,控制回归估计精度的不敏感参数取0.02。
考虑到即使针对同一问题,使用不同的核函数也会得到不同的拟合效果,分别使用核宽度为0.1,1,0.01的RBF核函数进行拟合。
由此可见,核函数的选择对于函数的拟合效果有着至关重要的影响。
就此例而言,若使用的核宽度相对来说比较大,会得到较为平缓的高斯函数曲线,这样得到的拟合效果不好,对应的泛化能力必然很差。
相反,若使用的核宽度过小,会得到较为尖锐的高斯函数曲线,使得每个样本点都成为高斯函数的峰值,对应的泛化能力也很差。
因此,应该根据不同问题,针对性地选择合适的核函数形式和及其参数。
谢谢!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 支持 向量 及其 学习 算法
![提示](https://static.bingdoc.com/images/bang_tan.gif)