支持向量机的缺陷及改进算法
来源:99网
计算机与现 L化 2012年第2期 JISUANJI YU XIANI)AIt Il A 总第198期 文章编号:1006.2475(2012)02-0005-03 支持向量机的缺陷及改进算法 郭光绪 (南京航空航天大学计算机科学与技术学院,江苏南京210016) 摘要:传统支持向量机通常关注于数据分布的边缘样本,支持向量通常在这些边缘样本中产生。本文提出一个新的支持 向量算法,该算法的支持向量从全局的数据分布中产生,其稀疏性能在大部分数据集上远远优于经典支持向量机算法。 该算法在多类问题上的时间复杂度仅等价于原支持向量机算法的二值问题,解决了设计多类算法时变量数目庞大或者 二值子分类器数目过多的问题。 关键词:支持向量机;稀疏性;多类问题;推广性能 中图分类号:TP301.6 文献标识码:A doi:10.3969/j.issn.1006-2475.2012.02.002 Deficiencies of Support Vector Machines and Its Improved Algorithm GUO Guang—XU (CoHege of Computer Science&Technology,Nanjing University ofAeronautics&Astronautics,Nanjing 210016,China) Abstract:Traditionary support vector machines(SVMs)usually focus on edge patterns of data distirbution,and support vectors (SVs)usually generates from these patterns.This paper proposes an altenrative lagorithm,which generates SVs from all training patterns.The sparsity of the algorithm is validated on most data sets far better than typical SVMs.The complexity of the algorithm in multi-class problems is merely equivalent to two class SVMs,which greatly solves the problems of too many variables or too many binary classiifers in multi—class SVMs. Key words:support vector machines;sparsity;multi—class problems;generalization 0 引 言 本,这种方法通常需要求解一个k×n个变量的二次 规划问题,当训练样本较多时,实现较为困难。 支持向量(SVs)的数目是评价支持向量机 本文提出一个新颖的SVM算法,该算法从全局 (SVMs)¨刮算法的重要指标。少的支持向量数目能 数据分布中选择支持向量,大大减少了支持向量的数 够提高分类器的分类速度,因此一些稀疏算法如l— 目。并且在多类问题的应用上,仅需要一个分类器, norln SVM 、Lp・SVM 、自适应Lp—SVM 等被相继 且算法的时间复杂度仅等价于SVM的两类问题。 提出。然而这些算法所获得的支持向量仍然倾向于 数据分布的边缘样本,为了刻画出数据的分布,所需 1 改进算法 的支持向量数目仍然很多。 给定训练集合S={(X ,Y )….,(x ,y )},其 对于多类问题,SVM通常有两类解决方法:(1) 中有113个训练样本。首先考虑两类问题,即yi=±1。 通过构造多个二值子分类器,如“one—against—all”、 本文使用文献[13]中的无偏置(unbiased)分类器 “one—against,one’’ 引、DAGSVM E 和ECOC SVM E 引。 框架: 如果有k类样本,“one.against-all”需要训练k个二值 f(x): iy.K(xi,x) (1) 子分类器,而“one—against.one”则需训练k(k.1)/2个 其中K(・,・)为核函数,也可以看作是x 与x间的相 二值子分类器。(2)在一个目标函数中同时考虑所 似性度量;仅i为第i个训练样本xi的权重,令向量 有子分类器的优化参数¨。。”]。如果有n个训练样 =[仅 .OL ] ,Y=[Y .Y ] 。优化如下的目标 收稿日期:2011.10-26 作者简介:郭光绪(1987-),男,江苏如皋人,南京航空航天大学计算机科学与技术学院硕士研究生,研究方向:模式识别,人 工智能。 6 计算机与现代化 2012年第2期 函数: min (y f(xj)~1) s.t.1Tot D,类思想,优化如下目标函数: (2) (3) min i ; (xj)一fo(xj)一1] ,(14) (15) 0【 0 s.t.1Tct D0【≥0 其中参数D用来调节 的稀疏性 H],通过交叉验证 式(14)写成矩阵的形式为: 来确定。 定义矩阵K=[K(Xi,xi)]为m X nl的核矩阵,定 义向量f=[f(x,)…f(x )] ,则f=K diag(Y) , 且式(2)可以写成矩阵的形式: min otTdiag(Y)KK diag(y) 一2ct diag(y)Ky (4) 约束条件仍为式(3)。最终算法需要求解一个 m阶的线性约束二次规划问题。算法的时间复杂度 等同于SVM。 2算法的多类问题应用 不同于两类问题,在k类问题中Y ∈{1,…,k}。 定义 (x)=∑OtiK(x ,x) (5) f一 (x)=∑oliK(x;,x) (6) 则fc(x)可看做样本x属于C类的置信度度量, f(x)为样本不属于c类的置信度度量。因此,如果 一个样本X属于C类,希望 (X)越大越好,而f一 (x) 越小越好。定义m阶对角矩阵矩阵I 和I~ : i,i = 三 ㈩ 则 ( j)= I K:j (8) f一 (Xi)=仅 I一 K:i (9) 首先使用类似“one—against.all”的多类分类处理 策略,将一类训练样本看作正类样本,其余训练样本 都看作负类。优化下面的目标函数: arin∑.∑[ (xi)一f一。(xi)一1] (10) S.t.1Tot D,0【 O (11) 将式(8)和式(9)代人式(10),得到: min塞仪 (I ..一 )KI K (I 一I_o) 一2量仅 (I 一I_o) KI 1 (12) 输出的分类器形式为: =arg ma)【‘(x) (13) 因为目标函数中仅有in个变量,变量的数目与 类别数目无关,优化仅需求解一个m阶的二次规划 问题,它的时间复杂度等价于二值SVM分类器求解。 而通常的多类SVM算法至少需要求解k×in个变量 (k个子分类器)。 同样也可以采用类似“one.against.one”的多类分 mi嘱 善;0【T(I 一I )K KjT (Iyj—Io)_j曼q (2I I)K:j (16) 不同于“one—against—one”的SVM,该问题同样仅 仅需要求解In个变量。 3 实验 在下面的实验中K(・,・)采用RBF核函数,即: K(xI, j)=exp(一.Y II xi一 j II ), >0 (17) 验证参数 的范围是{2 。,2~….,2m},参数D的 范围选择{2’,2 ….,2加},-y和D通过five—fold交叉 验证确定。 首先在人工数据集上比较本文的算法和SVM支 持向量选择的不同、 一 图1人工数据集的实验结果(左边为本文 算法,右边为SVM。圈表示支持向量) 从图l可以看出,本文算法选择的支持向量数日 明显少于SVM的支持向量。在图1上面的数据集 上,本文算法的支持向量数目为13个,SVM为47个; 在图l下面的数据集上,本文算法的支持向量数为5 个,而SVM为254个。并且可以看出支持向量的分 布也明显不同,SVM的支持向量主要出现在数据分 布的边缘或者说是数据分布的重叠区域,本文算法主 要出现在数据分布的中心。 第二个实验,笔者选择UCI数据库中的8个数据 集(后4个为多类),来观察算法在真实数据机上的 分类情况。对于多类数据,本文算法选择优化式 2012年第2期 郭光绪:支持向量机的缺陷及改进算法 7 (10)、(11),SVM采用“one—against-all”策略。实验重 复l0次,实验结果如表l所示。 表1 UCI数据集上的实验结果 本文算法 测试误差 l3.8±4.8 30.9±2.6 l6.7±2.6 23.1±1.6 4.2±1.7 49.0±5.3 5.9±2.0 41.6±1.1 chines[C]//Advances in Neurla Information Processing Systems.2004:49・57. l I4 Bradley P S,Mangasarian 0 L.Massive data discrimination via linear suppo ̄vector machines[J].Optimization Meth— 数据集 Automobile Bupa Heart Pima lris Tae Thvroid Yeast SVM 测试误差 l6.7±4.O 3O.1±2.9 17.4±2.1 24.2±1.3 4.7±1.7 49.9±5.7 5.2±1.9 40.8±1.7 ods Software,2000,13(1):1・10. SV数目 43 21 25 24 23 48 39 149 SV数目 50 118 65 208 77 168 45 1601 [5] Liu Y,Zhang H H,Park C,et a1.Support vector machines with adaptive Lq penalty[J].Computational Statistics and Data Anualysis,2007,51(12):6380-6394. n K K.Support Vector Machines Applied to Speech Pat・ [6] Chitern Classiifcation[D].Univ.Cambridge,Cambridge,U K,1998. att J C,Cristianini N,Shawe—Taylor J.Large ̄rsin DAG’ [7] Pls orf multiclass classiifcation[C]//Advances in Neurla In. formation Processing Systems.Cambridge,MA:MIT Press, 2OOO:547-553. 从表l可以看出,本文算法就测试误差而言与 SVM相当。而本文算法的支持向量数目在这8个数 [8] Pujol 0,Escalera S,et a1.An incremental node embedding 据集中都少于SVM,并且本文算法在其中6个数据 集中的支持向量数目都小于SVM的一半,甚至在一 些数据集(如Pima,Yeast)上,本文算法的支持向量 数大约只有SVM的十分之一。 technique for error correcting output code[J].Pattern Rec- ognition,2008,41(2):713-725. [9] Pujol 0,Radeva P,et a1.Diseriminant ECOC:A heuristic method for application dependent design of error correcting output codes[J].IEEE Trans.on Pattern Analysis and Ma— chine InteHigence,2006,28(6):1007・1012. 4 结束语 本文提出一个新颖的支持向量机算法,算法的支 持向量从全局数据分布中产生。本文算法能够简单 地推广到多类问题中,且相应的多类问题的时间复杂 度仅仅等价于SVM的二值问题,所要求解的变量数 [103 Vapnik V.Statistical Learning Theory[M].New York:Wi— ley,1998. on J,Watkins C.Multi・class Support Vector Machines [11] West[R].Technical Report CSD TR.98-04,Department of Computer Science,Royal HoUoway,University of 目等于训练样本数目,与类别数无关。实验结果表 明,本文算法的推广性能和SVM相当,而所获得的支 持向量数目却远远小于SVM。 参考文献: London,1998. Crammer K,Singer Y.On the learnability and design of out・ [12] put codes for multiclass problems[J].Machine Learing, 2002,47(2-3):201-233. nger Y.On the algorithmic implementation of [13] Crammer K.Si[1] Cortes C,Vapnik V.Support-vector networks[J].Machine Learning,1995,20(3):273-297. multiclass kernel—based vector machines[J].Joumal of Ma. chine Learning Research,2002,2(2):265-292. bshirani R.Regression shrinkage and selection via the [14] Ti[2]Vapnik V.The Natural of Statistical Learning heorTy[M]. New York:Springer.1995. lssao[J].J.Royal Statisitcal Soc.B,1996,58(1):267-288. [3]Zhu J,Rosset S,Hastie T,et a1.1-Bonn support vector ms- .‘屯.1‘J . L. L.‘IL. .‘‘.S .‘止 J ..址.‘也 .址.址.‘-L.‘止. 上..j止.‘IL. .‘t.址.;-L (上接第4页) Advances in Natural Processing Research on Computing Science,2006,18:151—162. [1 1]徐凤亚,罗振生.文本自动分类中特征权重算法的改进研 究[J].计算机工程与应用,2005,41(1):181.184,220. [12]James Auen.Natural Language Understndiang[M].The Benjamin/Cummings Publishing Company,I991. [9]骆正清,陈增武,王泽兵,等.汉语自动分词研究综述fJ]. 浙江大学学报:自然科学版,1997,31(3):306.312. [13]胡鑫.中文文本分类的特征选取研究[J].甘肃科技, 2006,22(5):119-120. [10]Salton G,Wang A,Yang C S.A vector space model for au. tomatic inde ̄ng[J].Communications of the ACM,1975, 18(11):613-620. [14]宋枫溪,高林.文本分类器性能评估指标[J].计算机工 程,30(13):107.109,127.