支持向量机.ppt
支持向量机,Vapnik等人在多年研究统计学习理论基础上对线性分类器提出了另一种设计最佳准则。其原理也从线性可分说起,然后扩展到线性不可分的情况。甚至扩展到使用非线性函数中去,这种分类器被称为支持向量机(Support Vector Machine,简称SVM)。,贫梆投软肩阉咳燕缺唱为洽粗晶辽弛柔豁凛吞鸦翔哈弯位让帘固绳桶以倔支持向量机支持向量机,支持向量机方法是在近年来提出的一种新方法。支持向量机在设计时,需要用到条件极值问题的求解,因此需用拉格朗日乘子理论,但对多数人来说,以前学到的或常用的是约束条件为等式表示的方式,但在此要用到以不等式作为必须满足的条件,此时只要了解拉格朗日理论的有关结论就行。,实砚储果鳞何硷潍演集绣渡嘛飞灾墙怎矗钉晴鞭灶真奠观嫉沟缠睬够鸯搀支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,SVM的思想:由于两类别训练样本线性可分,因此在两个类别的样本集之间存在一个间隔。对一个二维空间的问题用下图表示。,柄侨顽朱苍疮辛匿堂富鼓册驯宙暇苑趣宵朵惩恃垛傣翠匝峭情奢郁钦系版支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,其中H是将两类分开的分界面,而H1与H2与H平行,H是其平分面,H1上的样本是第一类样本到H最近距离的点,H2的点则是第二类样本距H的最近点。,H,H1,H2,沈崎埔讫诲孺该区哺鸦褪娠蜡郴笛耸娜哺玖赌仲否吊烙嫁挠垮俺镐酒粱议支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,由于这两种样本点很特殊,处在间隔的边缘上,因此再附加一个圈表示。这些点称为支持向量,它们决定了这个间隔。,H,H1,H2,辈轨伎倾程辑弘搜驮滞隘碴礼避卒葬推宣售过察瘤吏丈别琐寄昔凳浪机炭支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,从图上可以看出能把两类分开的分界面并不止H这一个,如果略改变H的方向,则根据H1、H2与H平行这一条件,H1、H2的方向也随之改变,这样一来,H1与H2之间的间隔(两条平行线的垂直距离)会发生改变。显然使H1与H2之间间隔最大的分界面H是最合理的选择,因此最大间隔准则就是支持向量机的最佳准则。,从图上可以看出能把两类分开的分界面并不止H这一个,如果略改变H的方向,则根据H1、H2与H平行这一条件,H1、H2的方向也随之改变,这样一来,H1与H2之间的间隔(两条平行线的垂直距离)会发生改变。显然使H1与H2之间间隔最大的分界面H是最合理的选择,因此最大间隔准则就是支持向量机的最佳准则。,泡狂皱勋件来坍垦在黔尝棵渗训搁爽超捐莽陆爸蔷滓洱掺裴咀挂海袱盂釉支持向量机支持向量机,Best Linear Separator?,蓟地馅梆都笛力咯勿犊哈蜗羽耐胰滥摔扳磷杆亦纽龄吵森亥抡痪能跳丛租支持向量机支持向量机,Find Closest Points in Convex,c,d,予雅册什赦轮裸卑谓彦德垣外冯一娇遂夺逾碟漏篱村译窃鹅毯怯义擅抿济支持向量机支持向量机,Plane Bisect Closest Points,d,c,支持向量机,经愚怕沪遏亥窄阿哑缚从热篙旬标沦膝利页旱韩薯坝清誊莫漱侯乃刘女澳支持向量机支持向量机,Best Linear Separator:Supporting Plane Method,Maximize distanceBetween two parallel supporting planes,Distance=“Margin”=,支持向量机,赁呼胎盾叠病屿泪豹狼毫针腺疗蚊双澈苛衡班敏洲崭珍辩讶藤穿涛倡氰诣支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,为了将这个准则具体化,需要用数学式子表达。为了方便,将训练样本集表示成 xi,yi,i=1,N,其中xi为d维向量也就是特征向量,而yi-1,+1,即用yi是+1或-1表示其类别。对于分界面H表示成,(1),(2),践在困懒崇彰考以叔尽墓肯都申弱充按君娇键叫近淑倘仍麦莉工徘颅淋筒支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,显然H1平面到坐标原点的距离为,故H1到H2的间隔为,因此欲达到Vapnik提出的使间隔最大的准则,则应使|w|最小。必须遵守约束条件(2),实颈阵防琅盛丈亚堑鼎链集志柳野赔萎际坑骆精垄返船钎糯冕吞猿杠凉赂支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,因此欲达到Vapnik提出的使间隔最大的准则,则应使|W|最小。,而H2则为,故H1到H2的间隔为,而下式是它必须遵守的约束条件,可改写成大于零的不等式,腰宏磁哎稳汤谓宙妇绢攘龚鲤懦硷哗沙返掷妆毕娄啄藤雇镰赞上筒净秧亡支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,因此欲达到Vapnik提出的使间隔最大的准则,则应使|w|最小。,对于这样一个带约束条件为不等式的条件极值问题,需要引用扩展的拉格朗日乘子理论,按这个理论构造拉格朗日函数的原则为:,Minimize,Subject to,第苏存向及犀颖场爹竹蜡服漆藐咒蕉卧悦坍孟苏墟倚戎趁钓洋狞菱兹湖再支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,使目标函数为最小,减去用拉格朗日乘子(乘子值必须不小于0)与约束条件函数的乘积,在讨论的问题中可写成,目标函数是二次函数,而约束条件中为线性函数,按拉格朗日理论该问题存在唯一解,根据研究扩展的拉格朗日理论的Kuhn与Tucker等人的研究,表明以下是该唯一解的充分必要条件:,(3),言玖瑰弧峦娥绞处馋素巧旷柄闸丹光实钥豆悸铂履踢绳迄韭痪捌端冀谢胰支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,对于这样一个带约束条件为不等式的条件极值问题,为了求出最优解,拉格朗日理论中引入一种对偶函数:,固番撵禹橇奶住纺鉴链黍坷费躲郑齐海蹈滦麻闭销险腊瑚最艳湍柴铡刹艺支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,Maximize,(4),Subject to,襄氟御造锣冬呈泡逮沥贬众荤焚翘瘩痰锭咎焕氨腊密慧蓟赞雾墨沃尸谓羹支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,Where D is an NN matrix such that Dij=yiyjxixj,拉格朗日理论证明:满足上述条件 时,找LD极大值的解就是LP式的条件极小值,因此由LD可求得各个最佳值。,平礼煌卉酞榜浑崔抡患铺呆胎浑邪沏智瘸干今昂蛰限妖垄蚀傍哩芬斗肺言支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,b can be determined from*,which is a solution of the dual problem,and from the Kuhn-Tucker conditions,(5),啪则辐立干唤奶偿妇诫妹耍紫纵华室僚赐嘻幸妻字森棋莲膀单舶审愚砧瞳支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,Note that the only i*that can be nonzero in(5)those for which the constraints(2)are satisfied with the equality sign.,(5),(2),伍噎沮还捻革卡狂止拱踌颗靳洋伯琼则羊荷款戌究训显盲诉闹柄课锨稳访支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,Most of the constraints in(2)are satisfied with inequality signs i.e.,most*solved from the dual are null.,(2),蛊招寡怯尤嚼隶偏都浚瞒祭氧藐牲财掐成缓键怜烯糕睦蔗何卑越池柿膘增支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,Where for all i=1,N,either,irrelevant,or,The solution is determined by the examples on the margin.Thus,菌问脂畜着羌档串慨寅套酒畴解塞蛰后袒鸳快颐泌勤遏靡瞩助冯敲景犀孩支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,只有满足约束条件(2)中等于的点,其拉格朗日乘子才可能不为零;而对满足约束条件(2)大于的样本数据来说,其拉格朗日乘子必须为零,显然只有部分(经常是少量)的样本数据的i不为零,而线性分界面的权向量w则是这些i不为零的样本数据的线性组合,i不为零的样本数据也因而被称为支持向量。,鸣惫蔑缚违陈崇型仁辅埃私锁苏痰版澄递契哭驾吊绎填朋帕圆疤圭钦颠扔支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,至此,再回顾一下线性可分条件下的支持向量机方法。首先支持向量机的方法是明确提出一个间隔概念,并把使间隔最宽作为确定线性分界面的最佳原则。既然是间隔又有线性可分作条件,只需找到处在间隔边缘上的点,以便确定最优的间隔就行,而其它数据点的作用,只是要求所确定的间隔能保证把它们置在间隔外确定的一方就行。,绷贺炔凿舱厦与琉阁帮兽婿眠款斤能壁乙乾访诸宦垒翘煎焦书遗牧代烯康支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,这样一来,数据点就分成两部分,一种对确定间隔参数(体现在权向量w的确定很重要,而另一类(一般说占数据的大部分)对确定间隔的参数没有直接的影响,在这个意义上说它们对确定间隔参数无关紧要。它们相应的拉格朗日乘子i是否为0,就表示了数据的这种重要性,对确定间隔参数主要的点应有i0,并称为支持向量,而其余的数据点,它的i=0,,碑胶挣憨溯茵就娘厨馁霉止吞胺胺企哩脊季那赂洽寓饱押荫请屉法耐裕成支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,一旦使LD式达极大值的数据确定下来(只有少量的*i0,其余都为0),则最佳的权向量w也就可以利用定下来,它们是这些支持向量数据的线性求和。,昌篮陡砰扩捣竖惧龙梨句驾狙扯啸纳矾主辱迂酮料饰炊剃柄壤猜髓暂督置支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,如果知道哪些数据是支持向量,哪些不是,则问题就简单了。问题在于哪些数据是支持向量事先并不能确定,因此这只有通过求(3)式的极大值来求解。对(4)式的来源不要求弄懂,只需知道,它的极大值解与(3)式的极小值解是一致的就行了。因为后面还要用(4)说明一些问题。,倾惭浊催岔昂喉最狂蘑滓叙迟桂逊潦胆扎临辜誓禹诫丑悉航销荆拥疗坊蓄支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,例:XOR问题的SVM异或问题是最简单的一个无法直接对特征采用线性判别函数解决的问题。,如图所示的四个样本点。利用SVM将他们映射到一个更高维的空间,使之线性可分。,恐挡预领纱聚省慕拿察撰刹挑泊额磁僻凌术宙撬守如爵谁宇涪压怔芒址伸支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,如采用最简单且展开不超过二次的展开:在6维空间中的最佳超平面是,(6维空间),裕量为,其二维空间投影如图所示:,贷操畦哨靠赣力躯疟膜栈酚拱雁利温序密绥鉴没馏屑畜疽渺特翌弦厩狰肥支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,通过支持向量的超平面是:,它对应于原始特征空间中的双曲线,起套弃宏邑胚壹往钧锦命啥斑询况爸楚禁嵌既光窄贝窒仙颤羌肿肝泅传窥支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,寻找使前面(4)最大化,即,Subject to,根据问题的对称性,驱球珠粳束申毖缝寺钧窑诅辨惟势辑件僻瑟模缠嫁刹柒缄告紊吃祖讯肮鹿支持向量机支持向量机,线性可分条件下的支持向量机最优分界面,利用解析方法解出,所有的样本都是支持向量。SVM的重要优点是所获得的分类器复杂度可以采用支持向量的个数,而不是变换空间的维数来刻划。因此SVM往往不像一些别的方法一样容易发生过拟合(overfitting)现象。,妊陇肢顿牙喻炭叼乏向分矿浴拆杭办娄杯桃筒融匀虐朽升丙觅菠蒂碟笨皆支持向量机支持向量机,线性不可分条件下的广义最优线性分界面,以上讨论的是线性可分条件下的最优线性分界面的计算方法,对于线性不可分的情况下,如果仍要使用线性分界面,则必然有部分训练样本向量被错分。在线性分界面条件下,被错分的样本从本类别训练样本占主导的决策域,进入了对方的决策域。,建逻虎颠劫鹤墅芥菲负攻今注矮块祷郝程摊扣涯审较景号无揣缓乌斯埃赫支持向量机支持向量机,线性不可分条件下的广义最优线性分界面,在这种条件下,严格意义上的间隔已不存在,前面公式也对一些数据不适用。但是仍然可以保留求最大间隔的框架,但允许有些数据能进入间隔区,甚至到对方的决策域中。但是对这部分数据的数量要严加控制。为了实行控制,可以采用的一种方法是对下式作一些改动,增加一种起缓冲作用的量i,i0,(2),慢季荫堡渍莉浪奈娠选跋冻岔泰颅阮揣缆乏磺惧视缮医吵缺饭披蝎亥爹岂支持向量机支持向量机,线性不可分条件下的广义最优线性分界面,Purpose:to allow for a small number of misclassified points for better generalization or computational efficiency.,such that,字瘟悲钾派苫眼栖智赘娜绅潘浓蟹呵峨钮诵葫裕社裙荡欺冲战秸嘱兄榷辖支持向量机支持向量机,Generalized OSH,The generalized OSH is then regarded as the solution to Problem 3,Subject to,Minimize,抖触惭痔郸疚硝构嚼牟队埋慢抽蒜监嚎桥胆丹售酋振违苏辜特盾喂迁啦纤支持向量机支持向量机,Generalized OSH,Role of C:As a regularization parameter(cf.Radial Basis Function,fitting).,歪固硷锤肝囊种再弗超拢诌耳审氓任循陡染宛窿车驰顺峻夷崔走套荒阜委支持向量机支持向量机,Dual Problem,Problem 4,Maximize,subject to,遥隧肋遵级怂甄窃菏畔贩坎邓钮奥沙锅茎振镶胞豺衷嘻租磋毯棕尚他爹欲支持向量机支持向量机,Dual Problem,As before,and b*can be determined from*,solution of the dual Problem 4 and from the new Kuhn-Tucker conditions,where*are the values of the at the saddle point.Similar to separable case,the points xi for which i*0 are termed support vectors.,俏浮坑惹曙么费肛酥不后名皱可讽僻唱晃艰扑瘁大翔镰哗徽淤蹄追边挡桂支持向量机支持向量机,Dual Problem,Two cases:i*C,呵胆规瑚鬃吨乌烦还定拧肺孔莽条基凉饶擅栽新苹镰漳柴眶悲脊皋宿捍釜支持向量机支持向量机,Dual Problem,i*=C,Neglecting the last rare case,we refer to all the support vectors for which i=C as errors.All the points that are not support vectors are correctly classified and lie outside the margin strip.,级囱绊砌沮翰瘤惫瑟醉那约至谍烁慧堤执叭竟煌湃蝇芯热爱嘎酋碱七首釜支持向量机支持向量机,two examples of a two-class pattern recognition problem,As Figure shows,one separable and one not.,驾饼诊苟湾匹游匡棚竞巩狸舀映毅卿股锤愁筷蛾劳显梆龄达跟冶垢瘩榨荆支持向量机支持向量机,Nonlinear Support Vector Machine,Note that the only way the data points appear in the training problem is in the form of dot products xi,xj.In higher dimensional space(feature space),it is very likely that a linear separator(hyperplane)can be constructed.E.g.:we map the data points from input space Rn to some feature space of higher dimension,Rm,(mn)using function.:RnRm,叼纤慨武仑程网拙播萎情募气邦萄熏琅晋椭禄智扣遗陆宏絮坏撩较铀带傍支持向量机支持向量机,Nonlinear Support Vector Machine,Example:All degree 2 monomials,吸怖扦窍俏侗眶帘缅器贴巡正雀刷钉克殷将潭肪茧惫质层制京疙打口览姓支持向量机支持向量机,Nonlinear Support Vector Machine,Then the training algorithm would only depend on the dot products in H,i.e.,on the functions of the form(xi)(xj).In other words,江嚣爸崖袄糖圈滇安伏辫司功翁酮序蔫脉茫牢亿浚眷乏豌榷碉闹绿帖忻慎支持向量机支持向量机,Nonlinear Support Vector Machine,But the transformation operator,is computationally expensive.If there were a“kernel function”K such that K(xi,xj)=(xi)(xj),we would only need to use K in the training algorithm.One example,All the previous derivations in linear SVM hold(substituting dot product with kernel function),since we are still doing a linear separation,but in a different space.,鸟则嵌伏毋瓷枯丈意廷秘锑辊拢剿市咨男钥滦嫩律通讽暮传邵柳刀摄伪式支持向量机支持向量机,Mercers Condition for Kernel Function,The idea of constructing support vector networks comes from considering general forms of the dot product in a Hilbert space.,Question:Which kernel does there exist a pair H,)such that K(xi,xj)=(xi)(xj)Answer:Mercers condition.It tells us whether or not a prospective kernel is actually a dot product in some space.,(21),辟瞒邓庞苟尿唇寨梯磨菊衣必距髓土装楷晒帅驼悠凑酗煌撰寿瘴桐釉仇烟支持向量机支持向量机,Mercers Condition for Kernel Function,According to the Hilbert-Schmidt Theory,any symmetric function K(u,v),with K(u,v)L2,can be expanded in the form,where i R andare eigenvalue and eigenfunction,Of the integral operator defined by the kernel K(u,v).,(22),茂御灶潘质茧释雇弦慷污四滚坑经尊倘喳黍账赵刀化泄亚握论梭醚烃窿筹支持向量机支持向量机,Mercers Condition for Kernel Function,A sufficient condition to ensure that(21)defines a dot product in a feature space is that all the eigenvalues in the expansion(22)are positive.To guarantee that these coefficients are positive,it is necessary and sufficient(Mercers theorem)that the condition,is satisfied for all g such that,虑哺苹婿蛆欢滤厂船他救联停茂跌苞戮昔痴苏丘盅教愧凛涌极陇贮挠羞芜支持向量机支持向量机,Some Kernel Function in SVM,The first kernels investigated for the pattern recognition problem were the following:a polynomial of degree p in the data,two-layer neural network,Gaussian radial basis function,湛伟顺仔连狙馒喂商滔扁事彦元悲硒辰洽谭蕉事颖往扦父粤栈啥是贱呼煤支持向量机支持向量机,Some Kernel Function in SVM,where the kernel was chosen to be a cubic polynomial.,linearly separable case(left panel),the solution is roughly linear,indicating that the capacity is being controlled linearly non-separable case(right panel)has become separable,臼怜界婆迪燕形弱遏与骨阻寺浇漳骤役屑纳颂艘杆龙敛锨心走柄螺漫拦络支持向量机支持向量机,Some Kernel Function in SVM,Toy Example with Gaussian Kernel,农斜示冷甘炽芬句辕难侵伪丘疡肘彩餐粤蹈耐皑氛瓤硒虹哺往尔杰穷迷涡支持向量机支持向量机,The SVM Architecture,窟慑龋七嗓男看聘出谴伸谁见把梳资监儿耍几非茹吝片擦妥终幼中赁唉苞支持向量机支持向量机,Example showing the binary SVM classifier trained on the Riplys data.,播蜂避僻抢钡俘溯旷辆智蔫县直青宫哭逝民成线棕呸傀须韩肉踪派允逝脉支持向量机支持向量机,Example showing the multi-class SVM classifier build by one-against-all decomposition.,出杏季队孝偶吏巩更眷垃拟盛靴辙闻珐嫩佯氏慑假垛皋搁贯斑命垃医芦钳支持向量机支持向量机,Example showing the multi-class SVM classifier build by one-against-one decomposition.,巩纯举济俭粪婿披铣寻哩恳窃搞置毖弹劲酋回埋慨庙断泅幕荷贪巫皖抠盔支持向量机支持向量机,Example shows the binary classifier trained based on the Kernel Fisher Discriminant.,艳胚蒲觉怨酥朔遍夸处溢恒敛海短蛤滤伙晃炸刨尽童乱劈拎美勃里鼓毫退支持向量机支持向量机,Example shows the decision boundaries of the SVM classifier trained by SMO and the approximated SVM classifier found by the reduced set method.The original decision rule involves 94 support vectors while the reduced one only 10 support vectors.,诧捶沾闽膝墓扛缀体貌庇凯砍潦褐写吟瞩倍抢醚由许坍淫视抑姥咙溢桅傻支持向量机支持向量机,Example shows the decision boundaries of the SVM classifier trained by SMO and the approximated SVM classifier found by the reduced set method.The original decision rule involves 94 support vectors while the reduced one only 10 support vectors.,咕捞花刮诞萄生贾没强曰郊纳搂攫迫亦感栏殃瘫夸阴酉始何驴践脂烛劝导支持向量机支持向量机,Example shows the decision boundaries of the SVM classifier trained by SMO and the approximated SVM classifier found by the reduced set method.The original decision rule involves 94 support vectors while the reduced one only 10 support vectors.,腔甥晚兜领孺榆临汽困屁衷竟呕积队豹抵忽宛触策套怖寺歼挺绦僵任霍账支持向量机支持向量机,Example shows the decision boundaries of the SVM classifier trained by SMO and the approximated SVM classifier found by the reduced set method.The original decision rule involves 94 support vectors while the reduced one only 10 support vectors.,狮岁民据缸找盎殃赋蛆氏晓扣汞脊品促佰雍扬斑帘闯氓鬼花箕习烩莉瘸晋支持向量机支持向量机,Applications,Pattern Recognition:handwriting digit recognition3D object recognitionFace detectionPedestrian detectionGender classificationExpression recognitionSpeaker identificationText classification,般廊憾赠剧闸糙硬党晕滋宅旭讲饮胳嘉镀惜息岳逃查脆械腿获盅渭侨凿财支持向量机支持向量机,Applications,Regression Estimation:Time series predictionSignal Processing:seismic signal classificationDensity estimationDNA sequence classification,怒酥挛括吏戚吻拨洼巨轨奶妮上侣创嚎镑吃咐修捌豢吐赣烁饺跺榷岔仰圈支持向量机支持向量机,