支持向量机资料
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
支持向量机
1基本情况
Vapnik等人在多年研究统计学习理论基础上对线性分类器提出了另一种设计最佳准则。
其原理也从线性可分说起,然后扩展到线性不可分的情况。甚至扩展到使用非线性函数中去,这种分类器被称为支持向量机(Support Vector Machine,简称SVM)。支持向量机的提出有很深的理论背景
支持向量机方法是在近年来提出的一种新方法。
SVM的主要思想可以概括为两点:
⑴它是针对线性可分情况进行分析,对于线性不可分的情况,通过使用非线性映射算法将低维输入空间线性不可分的样本转化为高维特征空间使其线性可分,从而使得高维特征空间采用线性算法对样本的非线性特征进行线性分析成为可能;
⑵它基于结构风险最小化理论之上在特征空间中建构最优分割超平面,
使得学习器得到全局最优化,并且在整个样本空间的期望风险以某个概率满足一定上
界。
例子
如图:
将1维的“线性不可分”上升到2维后就成为线性可分了。
在学习这种方法时,首先要弄清楚这种方法考虑问题的特点,这就要从线性可分的最简单情况讨论起,在没有弄懂其原理之前,不要急于学习线性不可分等较复杂的情况,支持向量机在设计时,需要用到条件极值问题的求解,因此需用拉格朗日乘子理论。
2一般特征
⑴SVM学习问题可以表示为凸优化问题,因此可以利用已知的有效算法发现目标函数
的全局最小值。而其他分类方法(如基于规则的分类器和人工神经网络)都采用一种基于贪心学习的策略来搜索假设空间,这种方法一般只能获得局部最优解。
⑵SVM通过最大化决策边界的边缘来控制模型的能力。尽管如此,用户必须提供其他
参数,如使用核函数类型和引入松弛变量等。
⑶通过对数据中每个分类属性引入一个哑变量,SVM可以应用于分类数据。
⑷SVM一般只能用在二类问题,对于多类问题效果不好。
3原理简介
SVM方法是通过一个非线性映射p,把样本空间映射到一个高维乃至无穷维的特征空
间中(Hilbert空间),使得在原来的样本空间中非线性可分的问题转化为在特征空间中的线
性可分的问题.简单地说,就是升维和线性化.升维,就是把样本向高维空间做映射,一般
情况下这会增加计算的复杂性,甚至会引起“维数灾难”,因而人们很少问津.但是作为分类、回归等问题来说,很可能在低维样本空间无法线性处理的样本集,在高维特征空间中却可以通过一个线性超平面实现线性划分(或回归).一般的升维都会带来计算的复杂化,SVM 方法巧妙地解决了这个难题:应用核函数的展开定理,就不需要知道非线性映射的显式表达式;由于是在高维特征空间中建立线性学习机,所以与线性模型相比,不但几乎不增加计算的复杂性,而且在某种程度上避免了“维数灾难”.这一切要归功于核函数的展开和计算理论.
选择不同的核函数,可以生成不同的SVM,常用的核函数有以下4种:
⑴线性核函数K(x,y)=x·y;
⑵多项式核函数K(x,y)=[(x·y)+1]^d;
⑶径向基函数K(x,y)=exp(-|x-y|^2/d^2)
⑷二层神经网络核函数K(x,y)=tanh(a(x·y)+b).
最优分类面:最优超平面
SVM是从线性可分情况下的最优分类面发展而来的,基本思想可用图2的两维情况说明。
如图:方形点和圆形点代表两类样本,H为分类线,H1,H2分别为过各类中离分类线最近的样本且平行于分类线的直线,他们之间的距离叫分类间隔。
最优分类线就是要求分类线不但能将两类正确分开(训练错误率为0),且使分类间隔最大。
推广到高维空间,最优分类线就变为最优分类面。
设线性可分的样本集(x i,y i),i=1,…,n,x∈R d,y∈{+1,-1}。d维空间中的线性判别函数:g(x)=wx-b,分类面方程为:wx-b=0。
我们可以对它进行归一化,使得所有样本都满足| g(x)|>=1,即分类面最近的样本满足g(x)=1,这样分类间隔就等于2/||W||,因此要求分类间隔最大,就是要求||W||或||W||2最小。而要求分类面对所有样本正确分类,就是要求满足:
y i[w x i+b]-1>=0, i=1,…,n,(1)
因此,满足上面公式且使||W||2最小的分类面就是最优分类面。过两类样本中离
分类面最近的点且平行于最优分类面的超平面H1,H2上的训练样本,就是使上式等号
成立的样本称作支持向量。
定义:
支持向量机(Support Vector Machine,SVM),是一种二类分类模型,其基本模型定义
为特征空间上的间隔最大的线性分类器,其学习策略便是间隔最大化,最终可转化为一个凸二次规划问题的求解。它在解决小样本、非线性及高维模式识别中表现出许多特有的优势,
并能够推广应用到函数拟合等其他机器学习问题中。在地球物理反演当中解决非线性反演也
有显著成效,例如(支持向量机在预测地下水涌水量问题等)。已知该算法被应用的主要有:石油测井中利用测井资料预测地层孔隙度及粘粒含量、天气预报工作等。
支持向量机方法建立在统计学习理论的VC维理论和结构风险最小原理基础上,根据有限的样本信息在模型的复杂性(即对特定训练样本的学习精度)和学习能力(即无错误地识别任意样本的能力)之间寻求最佳折中,以求获得最好的推广能力(或称泛化能力)。
所谓VC维是对函数类的一种度量,可以简单的理解为问题的复杂程度,VC维越高,一个问题就越复杂。正是因为SVM关注的是VC维,后面我们可以看到,SVM解决问题的时候,和样本的维数是无关的(甚至样本是上万维的都可以,这使得SVM很适合用来解决文本分
类的问题,当然,有这样的能力也因为引入了核函数)。
我们通常希望分类的过程是一个机器学习的过程。这些数据点是n维实空间中的点。我们
希望能够把这些点通过一个n-1维的超平面分开。通常这个被称为线性分类器。有很多分类器都符合这个要求。但是我们还希望找到分类最佳的平面,即使得属于两个不同类的数据点
间隔最大的那个面,该面亦称为最大间隔超平面。如果我们能够找到这个面,那么这个分类
器就称为最大间隔分类器。
支持向量机属于一般化线性分类器。他们也可以认为是提克洛夫规则化(Tikhonov Regularization)方法的一个特例。这种分类器的特点是他们能够同时最小化经验误差与最
大化几何边缘区。因此支持向量机也被称为最大边缘区分类器。
支持向量机将向量映射到一个更高维的空间里,在这个空间里建立有一个最大间隔超平面。在分开数据的超平面的两边建有两个互相平行的超平面。建立方向合适的分隔超平面使
两个与之平行的超平面间的距离最大化。其假定为,平行超平面间的距离或差距越大,分类器的总误差越小。一个极好的指南是 C.J.C Burges的《模式识别支持向量机指南》。
支持向量机特点
支持向量机中的一大亮点:在传统的最优化问题中提出了对偶理论,主要有最大最小