好文档 - 专业文书写作范文服务资料分享网站

支持向量机(SVM)原理及应用概述

天下 分享 时间: 加入收藏 我要投稿 点赞

支持向量机(SVM)原理及应用

一、SVM的产生与发展

自1995年Vapnik在统计学习理论的基础上提出SVM作为模式识别的新方法之后,SVM一直倍受关注。同年,Vapnik和Cortes提出软间隔(soft margin)SVM,通过引进松弛变量?i度量数据xi的误分类(分类出现错误时?i大于0),同时在目标函数中增加一个分量用来惩罚非零松弛变量(即代价函数),SVM的寻优过程即是大的分隔间距和小的误差补偿之间的平衡过程;1996年,Vapnik等人又提出支持向量回归 (Support Vector Regression,SVR)的方法用于解决拟合问题。SVR同SVM的出发点都是寻找最优超平面,但SVR的目的不是找到两种数据的分割平面,而是找到能准确预测数据分布的平面,两者最终都转换为最优化问题的求解;1998年,Weston等人根据SVM原理提出了用于解决多类分类的SVM方法(Multi-Class Support Vector Machines,Multi-SVM),通过将多类分类转化成二类分类,将SVM应用于多分类问题的判断:此外,在SVM算法的基本框架下,研究者针对不同的方面提出了很多相关的改进算法。例如,Suykens提出的最小二乘支持向量机 (Least Square Support Vector Machine,LS—SVM)算法,Joachims等人提出的SVM-1ight,张学工提出的中心支持向量机 (Central Support Vector Machine,CSVM),Scholkoph和Smola基于二次规划提出的v-SVM等。此后,台湾大学林智仁(Lin Chih-Jen)教授等对SVM的典型应用进行总结,并设计开发出较为完善的SVM工具包,也就是LIBSVM(A Library for Support Vector Machines)。上述改进模型中,v-SVM是一种软间隔分类器模型,其原理是通过引进参数v,来调整支持向量数占输入数据比例的下限,以及参数代替通常依靠经验选取的软间隔分类惩罚参数,改善分类效果;LS-SVM?来度量超平面偏差,

则是用等式约束代替传统SVM中的不等式约束,将求解QP问题变成解一组等式方程来提高算法效率;LIBSVM是一个通用的SVM软件包,可以解决分类、回归以及分布估计等问题,它提供常用的几种核函数可由用户选择,并且具有不平衡样本加权和多类分类等功能,此外,交叉验证(cross validation)方法也是LIBSVM对核函数参数选取问题所做的一个突出贡献;SVM-1ight的特点则是通过引进缩水(shrinking)逐步简化QP问题,以及缓存(caching)技术降低迭代运算的计算代价来解决大规模样本条件下SVM学习的复杂性问题。

二、支持向量机相关理论

(一)统计学习理论基础

与传统统计学理论相比,统计学习理论(Statistical learning theory或SLT)是一种专门研究小样本条件下机器学习规律的理论。该理论是针对小样本统计问题建立起的一套新型理论体系,在该体系下的统计推理规则不仅考虑了对渐近性能的要求,而且追求在有限信息条件下得到最优结果。Vapnik等人从上世纪六、七十年代开始致力于该领域研究,直到九十年代中期,有限样本条件下的机器学习理论才逐渐成熟起来,形成了比较完善的理论体系——统计学习理论。

统计学习理论的主要核心内容包括:(1)经验风险最小化准则下统计学习一致性条件;(2)这些条件下关于统计学习方法推广性的界的结论;(3)这些界的基础上建立的小样本归纳推理准则;(4)发现新的准则的实际方法(算法)。

(二)SVM原理

SVM方法是20世纪90年代初Vapnik等人根据统计学习理论提出的一种新的机器学习方法,它以结构风险最小化原则为理论基础,通过适当地选择函数子集及该子集中的判别函数,使学习机器的实际风险达到最小,保证了通过有限训练样本得到的小误差分类器,对独立测试集的测试误差仍然较小。

支持向量机的基本思想是:首先,在线性可分情况下,在原空间寻找两类样本的最优分类超平面。在线性不可分的情况下,加入了松弛变量进行分析,通过使用非线性映射将低维输入空间的样本映射到高维属性空间使其变为线性情况,从而使得在高维属性空间采用线性算法对样本的非线性进行分析成为可能,并在该特征空间中寻找最优分类超平面。其次,它通过使用结构风险最小化原理在属性空间构建最优分类超平面,使得分类器得到全局最优,并在整个样本空间的期望风险以某个概率满足一定上界。

其突出的优点表现在:(1)基于统计学习理论中结构风险最小化原则和VC维理论,具有良好的泛化能力,即由有限的训练样本得到的小的误差能够保证使独立的测试集仍保持小的误差。(2)支持向量机的求解问题对应的是一个凸优化问题,因此局部最优解一定是全局最优解。(3)核函数的成功应用,将非线性问题转化为线性问题求解。(4)分类间隔的最大化,使得支持向量机算法具有较好的鲁棒性。由于SVM自身的突出优势,因此被越来越多的研究人员作为强有力的学习工具,以解决模式识别、回归估计等领域的难题。

1.最优分类面和广义最优分类面

SVM是从线性可分情况下的最优分类面发展而来的,基本思想可用图1来说明。对于一维空间中的点,二维空间中的直线,三维空间中的平面,以及高维空间中的超平面,图中实心点和空心点代表两类样本,H为它们之间的分类超平面,H1,H2分别为过各类中离分类面最近的样本且平行于分类面的超平面,它们之间的距离△叫做分类间隔(margin)。

图1 最优分类面示意图

所谓最优分类面要求分类面不但能将两类正确分开,而且使分类间隔最大。将两类正确分开是为了保证训练错误率为0,也就是经验风险最小(为O)。使分类空隙最大实际上就是使推广性的界中的置信范围最小,从而使真实风险最小。推广到高维空间,最优分类线就成为最优分类面。

设线性可分样本集为(xi,yi_),i?1,...,n,x?Rd,y?{?1,?1}是类别符号。d维空间中线性判别函数的一般形式为是类别符号。d维空间中线性判别函数的一般形式为g(x)?w?x?b,分类线方程为w?x?b?0。将判别函数进行归一化,使两类所有样本都满足|g(x)|?1,也就是使离分类面最近的样本的|g(x)|?1,此时分类间隔等于2/||w||,因此使间隔最大等价于使

||w|| (或||w||2)最小。要求分类线对所有样本正确分类,就是要求它满足

yi[(w?x)?b]?1?0,i?1,2,...,n (1-1)

满足上述条件(1-1),并且使||w||2最小的分类面就叫做最优分类面,过两类样本中离分

类面最近的点且平行于最优分类面的超平面H1,H2上的训练样本点就称作支持向量(support vector),因为它们“支持”了最优分类面。

利用Lagrange优化方法可以把上述最优分类面问题转化为如下这种较简单的对偶问题, 原问题中每个约束条件yi[(w?x)?b]?1?0,i?1,2,...,n,在对偶问题中都对应一个拉格朗日因子

即:在约束条件,

?y?ii?1ni?0 (1-2a)

?i?0,i?1,2,...,n (1-2b)

下面寻找?i使得下列函数求最大值:

1nQ(?)???i???i?jyiyj(xixj) (1-3)

2i,j?1i?1n

最后的求解结果是:

若?为最优解,则w???*yxi (1-4)

*

*i?1n即最优分类面的权系数向量是训练样本向量的线性组合。

上述结果中,大部分阿法都为0,每个非零的阿法所对应的x都是一个支持向量

这是一个不等式约束下的二次函数极值问题,存在唯一解。根据kühn-Tucker条件,解中将只有一部分(通常是很少一部分)?i不为零,这些不为0解所对应的样本就是支持向量。求解上述问题后得到的最优分类函数是:

f(x)?sgn{(w?x)?b}?sgn{??i*yi(xi?x)?b*} (1-5)

**i?1n

根据前面的分析,非支持向量对应的?i均为0,因此上式中的求和实际上只对支持向量进行。b*是分类阈值,可以由任意一个支持向量通过式(1-1)求得(只有支持向量才满足其中的等号条件),或通过两类中任意一对支持向量取中值求得。

从前面的分析可以看出,最优分类面是在线性可分的前提下讨论的,在线性不可分的情况下,就是某些训练样本不能满足式(1-1)的条件,

常规的做法是允许决策间隔犯一些错误。于是,我们要根据每个错分例子满足间隔的程度定义其惩罚代价。为了实现这个目的,我们引入了松弛因子,对应数据点

间隔的量(允许xi在未满足间隔需求下的惩罚量)

约束条件就变成了:

允许偏离的函数

(1-6)

同时为了使分错样本数最小。我们在原来的目标函数后面加上一项,使得这些的总和也要最小 。

其中 是一个参数,用于控制目标函数中两项(“寻找 margin 最大的超平面”和“保证数据点偏差量最小”)之间的权重。注意,其中 是需要优化的变量(之一),而 是一个事先确定好的常量。完整地写出来是这个样子:

求解这一优化问题的方法与求解最优分类面时的方法相同,都是转化为一个二次函数极值问题,其结果与可分情况下得到的(1-2)到(1-5)几乎完全相同,但是条件(1-2b)变为:

0??i?C,i?1,...,n (1-10)

支持向量机(SVM)原理及应用概述

支持向量机(SVM)原理及应用一、SVM的产生与发展自1995年Vapnik在统计学习理论的基础上提出SVM作为模式识别的新方法之后,SVM一直倍受关注。同年,Vapnik和Cortes提出软间隔(softmargin)SVM,通过引进松弛变量?i度量数据xi的误分类(分类出现错误时?i大于0),同时在目标函数中增加一个分量用来惩罚非零松弛变
推荐度:
点击下载文档文档为doc格式
5s53n3o1qw81m9s40mcz3j4le87mw200j81
领取福利

微信扫码领取福利

微信扫码分享