当前位置:文档之家› (完整版)支持向量机(SVM)原理及应用概述

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

支持向量机(SVM )原理及应用一、SVM 的产生与发展自1995年Vapnik(瓦普尼克)在统计学习理论的基础上提出SVM 作为模式识别的新方法之后,SVM 一直倍受关注。

同年,Vapnik 和Cortes 提出软间隔(soft margin)SVM ,通过引进松弛变量i ξ度量数据i x 的误分类(分类出现错误时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)。

LIBSVM 是一个通用的SVM 软件包,可以解决分类、回归以及分布估计等问题。

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

支持向量机的基本思想:首先,在线性可分情况下,在原空间寻找两类样本的最优分类超平面。

在线性不可分的情况下,加入了松弛变量进行分析,通过使用非线性映射将低维输入空间的样本映射到高维属性空间使其变为线性情况,从而使得在高维属性空间采用线性算法对样本的非线性进行分析成为可能,并在该特征空间中寻找最优分类超平面。

其次,它通过使用结构风险最小化原理在属性空间构建最优分类超平面,使得分类器得到全局最优,并在整个样本空间的期望风险以某个概率满足一定上界。

其突出的优点表现在:(1)基于统计学习理论中结构风险最小化原则(注:所谓的结构风险最小化就是在保证分类精度(经验风险)的同时,降低学习机器的VC 维,可以使学习机器在整个样本集上的期望风险得到控制。

)和VC维理论(注:VC维(Vapnik-Chervonenkis Dimension)的概念是为了研究学习过程一致收敛的速度和推广性,由统计学理论定义的有关函数集学习性能的一个重要指标。

),具有良好的泛化能力,即由有限的训练样本得到的小的误差能够保证使独立的测试集仍保持小的误差。

(2)支持向量机的求解问题对应的是一个凸优化问题,因此局部最优解一定是全局最优解。

(3)核函数的成功应用,将非线性问题转化为线性问题求解。

(4)分类间隔的最大化,使得支持向量机算法具有较好的鲁棒性。

由于SVM自身的突出优势,因此被越来越多的研究人员作为强有力的学习工具,以解决模式识别、回归估计等领域的难题。

1.最优分类面和广义最优分类面SVM是从线性可分情况下的最优分类面发展而来的,基本思想可用图1来说明。

对于一维空间中的点,二维空间中的直线,三维空间中的平面,以及高维空间中的超平面,图中实心点和空心点代表两类样本,H为它们之间的分类超平面,H1,H2分别为过各类中离分类面最近的样本且平行于分类面的超平面,它们之间的距离△叫做分类间隔(margin)。

图1 最优分类面示意图W所谓最优分类面要求分类面不但能将两类正确分开,而且使分类间隔最大。

将两类正确分开是为了保证训练错误率为0,也就是经验风险最小(为O)。

使分类空隙最大实际上就是使推广性的界中的置信范围最小?,从而使真实风险最小。

推广到高维空间,最优分类线就成为最优分类面。

设线性可分样本集为}1,1{,,,...,1),,(x _-+∈∈=y R x n i y d i i 是类别符号。

d 维空间中线性判别函数的一般形式为是类别符号。

d 维空间中线性判别函数的一般形式为b x w x g +⋅=)((主:w 代表Hilbert 空间中权向量;b 代表阈值。

),分类线方程为0=+⋅b x w ?。

将判别函数进行归一化,使两类所有样本都满足1|)(|=x g ,也就是使离分类面最近的样本的1|)(|=x g ,此时分类间隔等于||||/2w ?,因此使间隔最大等价于使||||w (或2||||w )最小。

要求分类线对所有样本正确分类,就是要求它满足n i b x w y i ,...,2,1,01])[(=≥-+⋅ (1-1)满足上述条件(1-1),并且使2||||w 最小的分类面就叫做最优分类面,过两类样本中离分类面最近的点且平行于最优分类面的超平面H 1,H 2上的训练样本点就称作支持向量(supportvector),因为它们“支持”了最优分类面。

利用Lagrange (拉格朗日)优化方法可以把上述最优分类面问题转化为如下这种较简单的对偶问题,即:在约束条件,01=∑=i n i iy α (1-2a )n i i ,...,2,1,0=≥α (1-2b)下面对i α(主:对偶变量即拉格朗日乘子)求解下列函数的最大值:∑∑==-=nj i j i j i j i ni x x y y 1,1i )(21Q αααα)( ?(1-3) 若*α为最优解,则∑==n i i y w 1**αα(1-4) 即最优分类面的权系数向量是训练样本向量的线性组合。

注释(1-3)式由来:利用Lagrange 函数计算如下,实例计算:图略,可参见PPTx1 =(0, 0), y1 = +1x2 =(1, 0), y2 = +1x3 =(2, 0), y3 = -1x4 =(0, 2), y4 = -1 2121(,,)((())1)li i i i L w b w y x w b αα==-⋅⋅+-∑(,,)0(,,)0L w b L w b b w αα∂∂==∂∂110l li i i i i i i a y w y x α====∑∑121,111()()0,1,...,,0()sgn(())l li i j i j i j i i j li i i i li i i i W y y x x i l and y f x y x x b ααααααα=====-⋅≥===⋅⋅+∑∑∑∑可调用Matlab 中的二次规划程序,求得α1, α2, α3, α4的值,进而求得w 和b 的值。

这是一个不等式约束下的二次函数极值问题,存在唯一解。

根据k ühn-Tucker 条件,解中将只有一部分(通常是很少一部分)i α不为零,这些不为0解所对应的样本就是支持向量。

求解上述问题后得到的最优分类函数是:})(sgn{})sgn{()(1****∑=+⋅=+⋅=ni i i i b x x y b x w x f α (1-5) 根据前面的分析,非支持向量对应的i α均为0,因此上式中的求和实际上只对支持向量进行。

*b 是分类阈值,可以由任意一个支持向量通过式(1-1)求得(只有支持向量才满足其中的等号条件),或通过两类中任意一对支持向量取中值求得。

从前面的分析可以看出,最优分类面是在线性可分的前提下讨论的,在线性不可分的情况下,就是某些训练样本不能满足式(1-1)的条件,因此可以在条件中增加一个松弛项参数0i ≥ε,变成:n i b x w y i i i ,...,2,1,01])[(=≥+-+⋅ε (1-6)对于足够小的s>0,只要使∑==ni i F 1)(σσεε (1-7) 最小就可以使错分样本数最小。

对应线性可分情况下的使分类间隔最大,在线性不可分2221234223341()()(444)2Q αααααααααα=+++--++123412013/41/41120312002144231113,02224()3220w b g x x x αααα=⎧⎪=⎪⎨=⎪⎪=⎩⎡⎤-⎢⎥⎡⎤⎡⎤⎡⎤=--=⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦⎢⎥-⎢⎥⎣⎦⎡⎤⎡⎤=---=⎢⎥⎢⎥⎣⎦⎣⎦=--=情况下可引入约束:k c ≤2||w || (1-8)在约束条件(1-6)幂1(1-8)下对式(1-7)求极小,就得到了线性不可分情况下的最优分类面,称作广义最优分类面。

为方便计算,取s=1。

为使计算进一步简化,广义最优分类面问题可以迸一步演化成在条件(1-6)的约束条件下求下列函数的极小值:)(),(21,1∑=+=n i i C w w w εεφ)( (1-9) 其中C 为某个指定的常数,它实际上起控制对锩分样本惩罚的程度的作用,实现在错分样本的比例与算法复杂度之间的折衷。

求解这一优化问题的方法与求解最优分类面时的方法相同,都是转化为一个二次函数极值问题,其结果与可分情况下得到的(1-2)到(1-5)几乎完全相同,但是条件(1-2b)变为:n i C ,...,1,0i =≤≤α (1-10)2.SVM 的非线性映射对于非线性问题,可以通过非线性交换转化为某个高维空间中的线性问题,在变换空间求最优分类超平面。

这种变换可能比较复杂,因此这种思路在一般情况下不易实现。

但是我们可以看到,在上面对偶问题中,不论是寻优目标函数(1-3)还是分类函数(1-5)都只涉及训练样本之间的内积运算)(i x x ⋅。

设有非线性映射H R d →Φ:将输入空间的样本映射到高维(可能是无穷维)的特征空间H 中,当在特征空间H 中构造最优超平面时,训练算法仅使用空间中的点积,即)()(j i x x φφ⋅,而没有单独的)(i x φ出现。

相关主题