《《支持向量机》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《支持向量机》PPT课件.ppt(30页珍藏版)》请在三一办公上搜索。
1、9.3 支持向量机,支持向量机,一种线性和非线性数据有前途的新划分类方法。巧妙利用向量内积的回旋,通过将非线性核函数将问题变为高维特征空间与低维输入空间的相互转换,解决了数据挖掘中的维数灾难。由于计算问题最终转化为凸二次规划问题,因此挖掘算法是无解或有全局最优解。,支持向量机定义,所谓支持向量机,顾名思义,分为两个部分了解:一,什么是支持向量(简单来说,就是支持或支撑平面上把两类类别划分开来的超平面的向量点)二,这里的“机(machine,机器)”便是一个算法。在机器学习领域,常把一些算法看做是一个机器,如分类机(当然,也叫做分类器),而支持向量机本身便是一种监督式学习的方法,它广泛的应用于统
2、计分类以及回归分析中。,SVM的描述,目标:找到一个超平面,使得它能够尽可能多的将两类数据点正确的分开,同时使分开的两类数据点距离分类面最远。解决方法:构造一个在约束条件下的优化问题,具体的说是一个约束二次规划问题(constrained quadratic programing),求解该问题,得到分类器。,概 述,1.线性可分情形,线性可分情形,最大边缘超平面(MMH)边缘:从超平面到其边缘的侧面的最短距离等于到其边缘的另一个侧面的最短距离,边缘侧面平行于超平面,分类面与边界距离(margin)的数学表示:,分类超平面表示为:,数学语言描述,一、线性可分的支持向量(分类)机,首先考虑线性可分
3、情况。设有如下两类样本的训练集:,线性可分情况意味着存在超平面使训练点中的正类和负类样本分别位于该超平面的两侧。,如果能确定这样的参数对(w,b)的话,就可以构造决策函数来进行识别新样本。,线性可分的支持向量(分类)机,问题是:这样的参数对(w,b)有许多。解决的方法是采用最大间隔原则。,最大间隔原则:选择使得训练集D对于线性函数(wx)+b的几何间隔取最大值的参数对(w,b),并由此构造决策函数。,在规范化下,超平面的几何间隔为于是,找最大几何间隔的超平面表述成如下的最优化问题:,(1),线性可分的支持向量(分类)机,为求解问题(1),使用Lagrange乘子法将其转化为对偶问题。于是引入L
4、agrange函数:,其中,称为Lagrange乘子。,首先求Lagrange函数关于w,b的极小值。由极值条件有:,得到:,(2),(3),(4),线性可分的支持向量(分类)机,将(3)式代入Lagrange函数,并利用(4)式,则原始的优化问题转化为如下的对偶问题(使用极小形式):,这是一个凸二次规划问题有唯一的最优解,(5),求解问题(5),得。则参数对(w,b)可由下式计算:,线性可分的支持向量(分类)机,支持向量:称训练集D中的样本xi为支持向量,如 果它对应的i*0。,根据原始最优化问题的KKT条件,有,于是,支持向量正好在间隔边界上,于是,得到如下的决策函数:,几何意义:超平面法
5、向量是支持向量的线性组合。,几何意义,对于线性不可分的样本怎么办?,非线性可分情形,如何找到正确的分类曲线和正确的超平面对此类情况分类?,非线性可分情形,关键点:把 xi 变换到高维的特征空间为什么要变换?通过加入一个新的特征xi,使得样本变成线性可分的,此时特征空间维数变高Transform x(x),例子,a x12+b x22=1 w1 z1+w2z2+w3 z3+b=0,设训练集,其中假定可以用 平面上的二次曲线来划分:,现考虑把2维空间 映射到6维空间的变换,上式可将2维空间上二次曲线映射为6维空间上的一个超平面:,非线性分类,可见,只要利用变换,把 x 所在的2维空间的两类输入点映
6、射x 所在的6维空间,然后在这个6维空间中,使用线性学习机求出分划超平面:,最后得出原空间中的二次曲线:,非线性分类,如何选择到较高维空间的非线性映射?给定的检验元组,必须计算与每个支持向量的点积,出现形如 可以引入核函数(内积的回旋)来替代,需要求解的最优化问题,非线性分类,最后得到决策函数,或,为此,引进函数,实现非线性分类的思想,给定训练集后,决策函数仅依赖于而不需要再考虑非线性变换,如果想用其它的非线性分划办法,则可以考虑选择其它形式的函数,一旦选定了函数,就可以求解最优化问题,实现非线性分类的思想,其中,解得,而决策函数,目前研究最多的核函数主要有三类:,核函数的选择,几个典型的核函
7、数,核的比较,现有5个一维数据x1=1,x2=2,x3=4,x4=5,x5=6,其中 1,2,6 为 class 1,4,5 为class 2 y1=1,y2=1,y3=-1,y4=-1,y5=1选择 polynomial kernel of degree 2K(x,y)=(xy+1)2C=100求解 ai(i=1,5),例子,例子,通过二次规划求解,得到支持向量为 x2=2,x4=5,x5=6判别函数为b 满足 f(2)=1,f(5)=-1,f(6)=1,得到 b=9,结果,判别函数,1,2,4,5,6,class 2,class 1,class 1,SVM 应用,分类、回归、密度估计手写字符识别文本自动分类人脸识别时间序列预测蛋白质识别DNA 排列分析,