CN104751182A - 基于ddag的svm多类分类主动学习算法 - Google Patents
基于ddag的svm多类分类主动学习算法 Download PDFInfo
- Publication number
- CN104751182A CN104751182A CN201510155787.3A CN201510155787A CN104751182A CN 104751182 A CN104751182 A CN 104751182A CN 201510155787 A CN201510155787 A CN 201510155787A CN 104751182 A CN104751182 A CN 104751182A
- Authority
- CN
- China
- Prior art keywords
- sample
- class
- svm
- cos
- formula
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于DDAG的SVM多类分类主动学习算法,在多类SVM训练学习过程中引入主动学习思想,充分利用传统“一对多”或“一对一”多类分类方法在测试样本时存在大量的不可分点或决策盲区的缺点,提出了一种基于“o-v-o”分类决策盲区的主动学习算法,主动选择这些不可分或决策盲区中对当前学习器来说就是“最不确定性”的样本,针对主动学习中仅使用单一主动学习策略存在的局限性,在多类SVM训练学习中提出一种基于后验概率及相似度度量不确定性多策略融合的主动学习方法,并将这两种主动学习方法有效得进行了融合,减小了SVM训练学习中的样本标记规模,减少学习的样本标记代价,以尽可能少的标记样本训练获得性能尽可能高的SVM分类器。
Description
技术领域
本发明涉及一种算法,具体涉及一种基于DDAG的SVM多类分类主动学习算法,属于机器学习算法技术领域。
背景技术
SVM(Support Vector Machines,支持向量机)是在统计学习理论的VC维理论和结构风险最小化原则基础上发展起来的一种新的模式识别方法。它可根据有限的样本信息,在模型的复杂性(即对特定训练样本的学习精度)和学习能力(即无错误地识别任意样本的能力)之间寻求最佳折衷,以期获得最好的推广能力。它在很大程度上解决了传统模式识别技术存在的模型选择与过学习、非线性和维数灾难、局部极小点等问题,在解决小样本、非线性及高维模式识别问题中表现出了许多特有的优势,成为当前国内外机器学习领域新的研究热点。
SVM具有不依赖于经验、全局最优、以及良好的泛化性能等优点,吸引了众多领域的学者,对SVM的应用学者们也做了大量的研究。在模式识别领域,贝尔实验室率先对美国邮政手写数字库识别研究方面应用了SVM方法,取得了较大的成功。在随后的几年内,有关SVM的应用研究得到了很多的重视,在人脸检测、文本分类、目标识别、网络入侵检测、故障诊断、图像处理、语音识别、回归分析、以及函数估计等应用研究方面取得了大量的研究成果,从最初的简单模式输入的直接的SVM方法研究,进入到多种方法取长补短的联合应用研究,如将半监督学习、主动学习等应用于SVM训练学习,对SVM训练学习方法也有了很多改进。总之,SVM在多个领域的不俗表现使其已经成为一种被广泛使用的通用学习算法,正在和即将深入到机器学习的各个应用领域。
在机器学习领域,根据对学习样本处理方法的不同,可以将学习分为主动学习和被动学习两类。被动学习(Passive Learning)也称为从样本中学习,它是随机地选择训练样本(randomly sampling),被动地接受这些样本的信息,通过学习生成一个分类器或分类模型。主动学习算法由Lewis和Gale首先提出来。相对于被动学习,主动学习(Active Learning)是近年来机器学习领域新兴的学习方法。它与以往学习方法的不同之处在于,主动学习的研究目标是寻找某种途径来选择对于学习过程最有用的、最具有代表性(representative)或者说信息量最大的(informative)的样本,以在查询过程中得到尽可能多信息的同时,利用所得信息尽快终止搜索过程。所谓最有用或最有利的样本是指能够最大可能改善当前所得分类器性能的样本,以减少所需标记的样本数,同时最小化查询学习所需的迭代次数,及提高所学概念的准确性。
SVM主动学习就是将主动学习策略应用于SVM训练学习中,以解决经典SVM在训练学习中难以获得大量标记样本或对样本标记代价昂贵、枯燥乏味,甚至异常困难等局限性问题,即在SVM训练学习中应用主动学习方法,根据SVM学习进程,主动选择最有利于分类器的样本,然后交于领域专家对其标记,以此降低SVM训练学习中标记样本的规模,减少训练学习的代价,从而以尽可能少的标记样本训练获得分类正确率尽可能高的SVM分类器。
经典SVM最大的不足是训练速度比较慢,这是因为训练样本的数量决定了二次规划问题目标函数中矩阵的维数,而大规模的训练样本使得求解规划问题的速度与维数呈指数增长,同时,SVM训练和测试时所占用的计算机存储空间大,影响了SVM的性能。SVM主动学习不仅可以减小训练学习中的标记样本规模,而且可以减少算法所需的计算机存储空间,从而降低学习的空间复杂度。
主动学习及主动学习在SVM训练学习中的出色性能,已经受到国内外很多从事机器学习、统计学习的学者们的重视,并使得该领域成为了一个相当活跃的研究热点。如将SVM与主动学习方法相结合运用于入侵检测中的应用;文献1(高新波,田春娜,张娜.一种基于SVM主动学习的卡通视频检测方法[J].电子与信息学报,2007,29(6):1338-1342)中将主动学习的策略及相关反馈技术引入到SVM算法中,设计一种基于SVM主动学习的卡通视频检测分类方法,在检测性能上有较大的优势;针对实际应用中垃圾邮件种类繁多以及邮件发送者不断变化,即未知类别标记样本较多的情况,文献2(胡磊.基于内容的垃圾邮件过滤技术的研究[D].昆明:昆明理工大学,2005)、文献3(李笛,胡学钢,胡春玲.主动贝叶斯分类方法研究[J].计算机研究与发展,2007,44(suPtl.):44-51)、文献4(李笛,张玉红,胡学钢.一种基于主动贝叶斯分类技术的垃圾邮件过滤方法[J].合肥工业大学学报,2008,31(9):1443-1446)、文献5(李笛.基于内容的垃圾邮件过滤方法研究[D].合肥:合肥工业大学,2008)中将主动学习及SVM主动学习应用于垃圾邮件过滤,有效地减少了训练样本质量数量,提高了过滤器性能,在各项评价指标上具有优越性;文献6(贺慧.基于主动学习SVM的蒙文文本分类系统的设计与实现[D].内蒙古:内蒙古大学,2006)、文献7(刘里.中文文本分类中特征描述及分类器构造构造方法研究[D].重庆:重庆大学,2006)、文献8(孙国欣.基于主动学习的中文文本分类[D].兰州市:兰州大学,2006)中将SVM主动学习应用于文本分类中,减少了标记样本的工作量,同时又保证了分类精度;文献9(赵悦,穆志纯,董洁等.基于QBC主动学习方法建立电信客户信用风险等级评估模型[J].北京科技大学学报,2007,29(4):442-445)、文献10(梁爽,孙正兴.面向草图检索的小样本增量有偏学习算法[J].软件学报,2009,20(5):1301-1312)、文献11(周顺先,林亚平,王耀南.基于主动学习隐马尔可夫模型的文本信息抽取[J].湖南大学学报,2007,34(6):74-77)给出了SVM主动学习在图像检索、文本信息抽取、风险评估等方面的应用。
SVM主动学习综合了SVM算法优越性和主动学习的思想,所以对SVM主动学习的研究同时涵盖了SVM和主动学习的内容。SVM主动学习直接提出的课题是如何构建较好的主动学习样本选择策略,并将其与SVM增量学习、集成学习、多类分类、以及半监督学习学习结合起来,通过将主动学习策略应用于SVM训练学习,以减少SVM训练学习中的标记样本集规模,从而降低学习代价,期望以尽可能少的标记样本训练获得性能尽可能高的SVM分类器。
SVM主动学习在不同分类问题中的应用会带来更广泛的研究内容,由于SVM主动学习是个循环往复的过程,所以需要考虑主动学习何时停止学习即主动学习终止策略。这样一方面,可以减少样本选择的执行时间,避免标记了更多的样本,即浪费大量的样本标记劳动力而学习器的性能却没有明显提升的保证,另一方面可以减少所标记的“无用”样本加入训练后对学习器训练的负面影响,从而保证主动学习终止后,在所选择并标记的样本集上进行训练能获得相对最佳的学习效果。如文献12(Cohn D A,Ghahramani Z,Jordan M I.Active learningwith statistical models[J].Journal of Artificial Intelligence Research,1996,4(1/6):129-145)采用期望错误率小于某个阈值停止主动学习的策略;文献13(李洋,方滨兴,郭莉等.基于主动学习和TCM-KNN方法的有指导入侵检测技术[J].计算机学报,2007,30(8):1464-1472)采用最小均方预测误差(Mean Squared prediction Error,MSE)小于某个阈值主动学习终止策略;文献14(Andreas Vlachos.A stopping criterion for active learning[J].Computer Speech andLanguage,2008,22:295-312)、文献15(交互支持向量机学习算法及其应用[J].卢增祥,李衍达.清华大学学报自然科学版,1999,39(7):93-97)亦对主动学习的终止策略进行探讨,但具体如何将主动学习终止策略与SVM结合以及提出适合于SVM的主动学习终止策略还得进一步研究。
标准的SVM在样本训练时多采用被动学习方法,这种学习方法在训练学习过程中,需要外界对未标记样本进行标记形成训练样本集,而在很多的现实应用中,对样本集进行标注代价昂贵、枯燥乏味或是异常困难,同时所标注的样本大部分并不是支持向量,去掉这些非支持向量对SVM分类精度其实是没有影响的,SVM主动学习就是针对SVM存在的这类问题,在训练学习过程中,主动选择少量具有代表性的、分类不确定性的样本,即最有可能成为支持向量的样本,进行标记以形成训练样本。
现有的主动学习方法只适用于二类SVM分类问题,对于多类SVM分类问题,现有的方法多采用将多类分类转换为多个二分类问题,每个二分类器都有各自的分类器,这时常规的主动学习方法将不再适用,如基于熵的主动学习方法虽然可以较好地用于多类分类问题中,但是当类别数量较多时,熵往往不能很好地代表样本的分类不确定性,存在着分类速度慢、拒分、决策盲区、误差累积等问题,影响了分类器的分类精度和泛化性能。
因此,研究如何将SVM及SVM主动学习应用于多类问题,对拓展SVM主动学习的应用将具有非常重要的意义。多类SVM(Multi-class SVM,MSVM)是SVM在多类应用中的扩展。
下面分别介绍SVM多类分类方法和SVM多类分类主动学习。
一、SVM多类分类方法
针对两类SVM如何扩展到多类分类,学者们先后提出了多种SVM多类分类算法,通常采用的方法是将多类问题转化为一组二类分类问题的组合。
1、构造多类分类器的方法
(1)一对多方法(one versus all,o-v-a)
Vapnik提出的o-v-a(one versus all)多类分类方法,通过在每一类和其余类之间构建超平面,将一个K类问题转化为K个两类分类问题。在这种方式下,共需要构建K个SVM,对第k个SVM训练以第k类中的样本作为正的训练样本,而将其它K-1类的样本作为负的训练样本,每一个SVM分类器都将某一类与其它类分开。对一个未知样本x,第k个SVM的判决函数值为那么一对多SVM多类分类判决结果为i=argmaxk{f1(x),…,fk(x),…,fK(x)}。
一对多方法实现简单、有效,训练时间较短,可用于训练大规模数据,被大多数SVM分类工具箱所采用。但缺点在于:
1)当类别数较大时,某一类的训练样本数将大大少于其它类训练样本数的总和,训练样本分布不均衡将对分类精度产生影响;
2)当训练样本数n和类别数K较大时,训练和测试分类的速度很缓慢;
3)当测试样本x不属于K类中任何一类或具有最大决策函数值的类不止一个时,存在拒分或决策盲区问题。
(2)一对一方法(one versus one,o-v-o)
相比o-v-a多类分类方法需要构建K个SVM分类器,o-v-o方法通过在任意两个类之间构建分类超平面,将一个K类问题转化为K(K-1)/2个两类分类问题。训练将第i类与第j类样本分开的分类器fij(其中i<j),以第i类样本作为正类样本,以第j类样本作为负类样本,每个SVM训练中仅需要用到两个类别的训练样本,共需要训练K(K-1)/2个分类器。在测试时,对每个类别设定一个计数器ui,则对于任意样本x,若有fij(x)=1,则将第i类的计数器ui加一,否则将第j类计数器uj加一。对样本x的最终结果常采用投票法决定,得票最多(Max Wins)的类为测试样本所属的类,即i=argmaxk{u1,…,uk,…,uK}。
相比“o-v-a”方法,“o-v-o”方法算法的优点是各个SVM容易训练、决策边界简单以及分类精度较“o-v-a”高。缺点是:
1)如果单个两类分类器不规范化,则整个K类分类器将趋向于过学习;
2)推广误差无界;
3)分类器的数目随类数K急剧增加,导致分类决策速度慢;
4)在测试分类时,若出现某两类或两类以上所得的票数相同时,系统将无法判定属于哪一类,即该方法存在拒分或决策盲区问题。
2、构造多类分类器的其它方法
(1)误差修正输出编码(Error-Correcting Output Codes,ECOC)
ECOC是Bose和RayChaudhuri在1960年提出的一种分布式输出码,1963年,Duda,Machanik和Singleton就将其应用于模式识别领域中,1995年Dietterich和Bakiri提出用ECOC解决多类模式识别问题。ECOC是由1和0组成的一个码矩阵,记为MK×S,其中K为类别数,S为待训练的分类器数。这种方法中每个分类器将部分类别作为正类,其余类别作为负类,矩阵中的元素mks表示第k类样本在第s个分类器中的划分情形,编码矩阵中mks=1(mks=0)表示此时第s个分类器fs以第k类样本是作为正例(负例)训练训练样本。采用上述原则训练S个分类器这样对于每个类别k,对应一个S维类别编码向量Mk。
在ECOC的训练过程中,依上述原则训练分类器f(x)=(f1,…fs),在测试过程中,对于未知样本x,计算分类器的输出编码f(x)={f1(x),…,fS(x)}与各类别编码的距离,与其距离最小的类即为x所属的类,即k=arg mini d(Mi,f(x)),其中, 为汉明距。
ECOC的优点在于它能有效修正误差,用Hc是表示任意两类的类别编码之间的最小Hamming距离,那么一个ECOC分类系统的纠错能力是(Hc-1)/2。即如果在所有S个分类器中有不多于(Hc-1)/2个分类器产生错误,最终将得到正确的分类结果。
ECOC是通过一组将整个训练集合理划分的分类器组成,其中每个分类器以部分类别为正类,以其余类别为负类,对于K类分类问题,共有2K-1-1种划分,如何从中选取合理的划分确定码本,既保证ECOC的分类能力又使得整个分类系统规模不至于过于庞大仍然是个难题。
(2)决策树SVM(Decision Tree SVM,DTSVM)
SVM决策树将SVM和二叉决策树结合起来,是另一种有效的多类分类方法。该方法首先将所有类别分为两个子类别,再将每个子类划分,直到直到把每一类都单独区分开来。对于一个K值分类问题,需要构造K-1个SVM分类器。且构造每个SVM时,只需要将当前要划分的类别样本作为训练样本,这样提高了分类器的训练速度。
DTSVM方法的优点是,对于K类分类问题,在分类阶段,仅需要根据决策树的结构,计算所需要的分类决策函数值,理想情况下只需要判别log2K个分类器,而不必计算所有分类决策函数的值,因此分类速度较快。该方法不存在拒分区域,但若在中间任何一层分类出现错误,都将造成最终分类错误,即存在自上而下的“误差累积”现象。在设计该类分类系统时,需要研究如何降低误差累积现象对分类性能的影响。
(3)决策导向无环图(Decision Directed Acyclic Graph,DDAG)
DDAGSVMs是由Platt从有向无环图(Directed Acyclic Graph,DAG)导出的。对于K类分类问题,DDAGSVMs首先利用“o-v-o”分类方法的思想,构造K(K-1)/2个分类器,再结合Binary DAG,将K(K-1)/2个分类器,按照一定的次序构成一个有根的前向无环图(DAG)。
DDAGSVMs方法的优点体现在测试阶段上,对于一个K类分类问题,只需使用K-1个决策函数即可得出结果,而不必将所有K(K-1)/2决策函数的结果都引入最后的决策过程,较“o-v-o”方法提高了分类器的效率,解决了分类决策盲区问题。但该方法也存在一些缺点:
1)存在自上而下的“误差累积”现象;
2)分类器的数目随类数K急剧增加,存在计算量大以及训练时间长问题。
(4)一次性多类SVM(All at once SVM)
除了上述SVM多类分类的方法之外,一次性多类SVM也是一种解决方法,这种方法在构造决策函数的同时考虑所有的类,只需要解决一个大的二次优化问题。虽然这种方式看似简单,但是由于问题规模大,约束多,实际优化复杂度很高,很少用于解决实际问题。
二、SVM多类分类主动学习
SVM多类分类主动学习就是将SVM主动学习思想及其策略应用于SVM多类分类器训练中。现有的SVM主动学习方法一般都是针对两类分类问题,而针对SVM多类分类的主动学习研究则相对较少,并且有些现有针对SVM两类分类的主动学习方法在应用到多类分类时将失效。如对图1所示4类别o-v-o方法,若使用基于样本的距离来度量样本的不确定性,由于样本y对分类器f1/2与f1/3的距离以及样本x对分类器f2/4、f1/4的距离不具有可比性,则无法确定样本x及y对相应分类器的不确定性度,这是因为分类器的输出是一个相对距离,同一分类器的输出具有可比性,而不同分类器由于其相对的标准不同,根据式:d=|f(x)|/||ω||,其不仅与输出f(x)有关,还与||ω||有关,如何将主动学习拓展应用于SVM多类分类问题也是主动学习研究的一个重点。
现有SVM算法及已有的目标识别算法如神经网络法、模糊聚类分析法等都是在假设训练样本数目足够多的前提下进行研究的,现代攻防对抗环境复杂,训练样本获取的代价非常大。
主动学习在减小标记样本规模,即减少学习中样本标记代价方面具有出色的性能,国内外学者对主动学习及其已有的方法做了大量的拓展研究,但现有的主动学习方法还存在如下问题:
(1)计算量较大。
如基于误差减少的主动学习方法,其在选择样本之前需要搜索整个样本空间,对于大数据量的未带类标记样本集,这种样本选择策略直接计算加入样本后分类器在测试数据集上的分类误差,其计算的复杂度相当高,实际并不可行。
(2)易采到无意义的样本。
对于标签噪声以及数据分布不均衡等情况敏感,易采样到重复的、相似的、无意义的样本。如基于不确定性采样的主动学习有可能采样到孤立点,并且对信息量大的样本和异常的样本难以区分。
(3)误差传播影响。
在主动学习初始阶段训练的学习器如不准确,则主动学习过程中选择的样本可能并非是对学习器训练“最有利”的样本,这样将影响主动学习的性能。
(4)主动学习不具备增量学习能力。
主动学习是一个循环反复的过程,每次加入新的样本都要重新训练分类器,而一般的主动学习方法不具备增量学习能力,而且主动学习面临的一个问题是,重复的迭代运算带来很高的时间复杂度和空间复杂度。
(5)需较多的人工参与与反馈问题。
主动学习中存在对采样的样本需要较多的人工参与反馈问题。这可以通过提高学习器进一步利用未标记样本的能力,降低学习的样本标记代价。
(6)对早睡或野点敏感。
经典的主动学习一般采用单一的主动学习策略,而没有将多种主动学习策略有效地融合起来,以避免单一的主动学习方法在实际应用中可能存在对噪声或野点敏感、受误差传播影响等问题。
1、SVM多类分类主动学习算法框架模型
根据上述分析可知,现有针对SVM两类分类的主动学习方法一般不能直接应用于多类分类问题。那么如何在SVM多类分类训练学习中应用主动学习策略以降低学习的样本标记代价,并提高SVM多类分类器的泛化推广性能是众多学者研究的问题。
由SVM主动学习的原理分析可知,针对SVM的主动学习方法就是在训练学习中选择那些“最不确定性”、“最富有信息性”或“最具有代表性”的样本,即“最有可能”或“就是”支持向量的样本进行标记以训练SVM,而根据SVM的机理可知,SVM最优分类超平面的确定只与支持向量有关,故针对SVM多类分类问题,应用主动学习策略归根结底也是选择那些“最有可能”或“就是”支持向量的样本作为候选样本进行标记以训练SVM多类分类器。那么如何选择这些样本就是SVM多类分类主动学习策略的关键内容。
针对SVM多类分类问题的主动学习算法性能不仅与采用的主动学习方法有关,而且与具体的SVM多类分类方法紧密相关。对不同的SVM多类分类方法,由前面叙述可知,各多类分类方法都有自己的优缺点,这些方法的“缺点”不仅仅是研究新的多类分类方法时所必须克服的,同时也为研究针对多类分类的主动学习方法提供了思路。
如“一对多”或“一对一”多类分类方法在测试样本时,存在大量的不可分点或决策盲区的缺点,即图2和图3中所示阴影区域中,而根据SVM主动学习原理,这些不可分或决策盲区中的样本对当前学习器来说就是“最不确定性”的样本,其所包含信息将有助于SVM训练,未标记样本中的这类样本应当被选择为候选样本进行标记;同时对有些不属于K类中任何一类的类似野点噪音的样本,应该避免选择这些样本,选择这些样本除了增加学习的样本标记代价外,而且有可能造成分类超平面的偏移,影响SVM分类器的性能。
由上述分析可知,多类分类方法存在的“缺点”或“缺陷”特性可以被应用于主动学习中,做为选择对SVM训练“最有利”或“最有用”的样本采样选择策略。由此,结合SVM主动学习原理,图4给出了一个通用的SVM多类分类主动学习框架模型。
图4所示SVM多类分类主动学习框架中,过程P1是针对SVM的多类分类算法MCSVM的设计;过程P2、P3以及P4是SVM多类分类器训练过程中的主动学习环节,其中过程P2是利用多类分类算法MCSVM本身的“缺点”特性进行主动学习的过程,过程P3是根据一般针对SVM多类分类的主动学习方法QASVM进行进一步主动学习的过程,其与前面讨论的SVM主动学习方法类似;过程P4则是首先对过程P2、P3选择的对SVM训练“最有利”的样本进行标记,然后重新训练算法中相应的SVM基分类器。
框架模型中不同的多类分类方法MCSVM、主动学习方法QMC、QASVM以及主动学习过程P2、P3处理顺序的不同都将产生不同的SVM多类分类主动学习算法。如过程P2和P3采用并行算法并行进行,或者在过程P2后首先进行过程P4,将所选择的“最有利”的样本加入训练样本集以更新SVM基分类器,然后再进行主动学习过程P3,这样可以加速SVM的训练进程并减少标记样本的代价。
2、现有SVM多类分类主动学习算法
对于如何将两类的SVM主动学习扩展到多类,学者们现在也提出了一些不同的方法。
Tong Simon以全局变型空间的容量减少情况作为主动学习的样本选择策略,首先将多类分类分解为两类问题,然后选择这些两类分类器中变型空间容量减少最多的那个分类器所对应的样本给用户进行标记;文献16(Active Learning for Large Multi-class Problems[A].Prateek Jain,Ashish Kapoor.2009IEEE Conference on Computer Vision and Pattern Recognition(CVPR)[C].Minmi,FL,USA.,2009.762~769)中多类分类主动学习策略采用了类似K-最临近法(K-Nearest Neighbor)以相似度为度量选择与已标记样本中某类样本相似度最大的未标记样本作为候选样本;文献17(Rong.Yan,Jie Yang,Alexander Hauptmann.Automatically LabelingVideo Data Using Multi-Class Active Learning[A].Proceedings of the Ninth IEEE InternationalConference on Computer Vision(ICCV 2003)[C].Washington:IEEE Comp uter Society,2003.516~523.)、文献18(Bishan Yang,Jian-Tao Sun,Tengjiao Wang,et al.Effective multi-labelactive learning for text classification[A].Proceedings of the 15th ACM SIGKDD internationalconference on Knowledge discovery and data mining[C].ACM New York,NY,USA,2009.917~926)、文献19(Rong Yan,Alexander Hauptmann.Multi-Class Active Learning for VideoSemantic Feature Extraction[A].IEEE International Conference On Mutimedia and Expo(ICME),specela session On“Active Learning on Multimedia Retrieval”[C].Taipei,TaiWan.2004.27~30)中将基于误差减少的主动学习方法拓展到多类分类应用中,即考虑针对多类分类问题的损失函数,样本采样策略选择能够最小化经验损失的未标记样本作为候选样本进行标记;文献20(Alex Holub,Pietro Perona,Michael C.Burl.Entropy-based active learning for objectrecognition[A].IEEE Computer Society Conference on Computer Vision and Pattern RecognitionWorkshops(CVPRW)[C].Anchorage,AK,2008.1~8)中采用能最小化期望熵的未标记样本做为候样本;文献21(Guo-Jun Qi,Xian-Sheng Hua,Yong Rui,et al.Two-Dimensional MultilabelActive Learning with an Efficient Online Adaptation Model for Image Classification[J].IEEETransactions on Pattern Analysis and Machine Intelligence,2008,31(10):1880~1897)等对多类分类问题也提出了类似上述将两类的主动学习拓展到了多类的方法,并在图像标记及识别、图像分类、文本分类、视频检索等实际应用中降低了学习的样本标记代价,取得了较好的学习效果。
由前面叙述的SVM多类分类主动学习框架可知,所使用的多类分类方法对图4所示过程P2及P3中主动学习方法QMC与QASVM的性能有重要影响,即影响“最有用”或“最富有信息”主动学习样本选择策略的设计。
然而当前上述这些方法只是简单的将主动学习策略应用于多类分类问题,并没有考虑算法中具体多类分类方法本身“缺点”特性在主动学习中的作用,即图4中过程P2在主动学习中的作用,同时这些算法存在一定应用局限性,如度量“最有利”或“最有用”的查询函数存在难以确定、计算复杂等,且一般在主动学习过程P3中仅采用单一主动学习方法,而没有利用各主动学习策略融合互补的作用以最大限度降低学习的样本标记代价,同时提高分类器的性能。
发明内容
为解决现有技术的不足,本发明的目的在于提供一种计算相对简单、能够最大限度降低学习的样本标记代价、同时能够提高分类器的性能、基于DDAG的SVM多类分类主动学习算法。
为了实现上述目标,本发明采用如下的技术方案:
一种基于DDAG的SVM多类分类主动学习算法,其特征在于,包括以下步骤:
步骤1:在样本集上训练K(K-1)/2个二类SVM分类器记所有SVM二分类器组成的多分类器为其中,i=1,2,…,K,j=1,2,…,K,i≠j,L为已标记样本集,K为类别数,t=1;
步骤2:判断SVM多分类器是否满足学习的终止条件Sstop,若满足则输出并结束训练,否则转到步骤3;
步骤3:判断未标记或候选样本集U是否为空,若是,输出并结束训练;否则,先对未标记或候选样本用进行预先标记,然后根据基于o-v-o分类决策盲区的主动学习算法,从未标记或候选样本集U中选择出对SVM训练最有利的未标记样本集并令
步骤4:将样本集人工进行正确标记,并将其加入标记样本集,有在更新的训练样本集L上使用SVM主动增量学习算法AlISVM仅对对应类样本发生变化的分类器重新训练,并更新分离性测度矩阵SMH中训练样本发生变化的类所对应的分离性测度;判断分类器是否达到终止条件Sstop,若满足则输出并结束训练,否则转到步骤5;
步骤5:对未标记样本x,x∈U,分别计算样本x的不确定性度UnM(x)、样本x与Lx的相似度dcos(x,Lx)、样本x与Ux的相似度dcos(x,Ux),前述Lx为与x同类的标记样本集,前述Ux为与x同类的未标记样本集,选择m个满足UnM(x)≤UnMth、dcos(x,Lx)≤dmax及dcos(x,Ux)≥dmin的样本,并记为 其中,m为每次采样的样本数,UnMth为不确定性阈值,dmax和dmin为样本相似度阈值;
步骤6:将样本集人工进行正确标记,并将其加入标记样本集,有在更新的训练样本集L上使用SVM主动增量学习算法AlISVM仅对对应类样本发生变化的分类器重新训练,并更新分离性测度矩阵SMH中训练样本发生变化的类对应的分离性测度;令t=t+1,并转到步骤2,直至训练结束。
前述的基于DDAG的SVM多类分类主动学习算法,其特征在于,在步骤1中,在样本集上训练K(K-1)/2个二类SVM分类器的过程为:
输入:已标记样本集L、未标记或候选样本集U、每次采样的样本数m、边界阈值rx、距离阈值dth和终止条件Sstop,前述已标记样本集L中含有正负样本至少各一个;
输出:分类器fsvm和预标记样本;
Initialization:用样本集训练初始SVM分类器k=1;
Step1:当进行第k次训练时,k=1,2,…,判断SVM分类器是否达到终止条件Sstop,若满足则输出并结束训练,否则转Step2;
Step2:判断U是否为空,若是,输出并结束训练;否则,先对未标记样本用进行预先标记,然后据选择m个离分类边界距离小于阈值dth的样本作为下一次增量训练样本
Step3:检验中的样本是否违背的广义KKT条件,根据检验结果,被分为和
Step4:将合并得根据标示符将集合分为正例样本集A+和负例样本集A-,并分别根据及阈值rx进行处理,保留仅大于rx的样本,得到剩余正例样本集和剩余负例样本集合并二者得
Step5:将合并得到从U中删除所选择的未标记样本,并对中的未标记样本人工进行正确标记,然后在其上训练得到新的分类器并生成和k=k+1,转Step1。
前述的基于DDAG的SVM多类分类主动学习算法,其特征在于,在步骤3中,使用对样本进行预先标记的过程为:
Initialization:根据式计算分离性测度矩阵SMH,并根据式找到最易分的两类记为i0,j0,并将作为根节点;
Step1:取待标记样本x,复制分离性测度矩阵SMH,设定计数器t=1;
Step2:计算若t<k-1,则转Step3,若t=k-1,则转Step4;
Step3:若则表示x不属于类j0,将分离性测度矩阵SMH中j0列、j0行置0,从i0行中选择可分离性测度值最大的单元,取其列号代替j0,计数器t=t+1,返回Step2;若则表示x不属于类i0,将分离性测度矩阵SMH中i0行、i0列置0,从j0列中选择可分离性测度值最大的单元,取其行号代替i0,计数器t=t+1,返回Step2;
Step4:若则x属于类i0;若则x属于类j0。
前述的基于DDAG的SVM多类分类主动学习算法,其特征在于,在步骤3中,基于o-v-o分类决策盲区的主动学习算法的流程为:
输入:未标记样本集合U、类别数K、样本选择阈值δth、类间分离性阈值smth和基分类器fSVM ij,i=1,2,…,K,j=1,2,…,K,i≠j;
输出:对SVM训练最有利的未标记样本集
Step1:令k=1,若样本则退出;否则,对每个决策函数计算基分类器fSVM ij(xk),若fSVM ij(xk)=1则给第i类的计数器ui(xk)加1,否则给第j类的计数器uj(xk)加1;
Step2:令ui(xk)=maxuθ(xk),uj(xk)=maxuθ(xk),其中i≠j,θ=1,…,K;
Step3:若ui(xk)=uk(xk),则令否则,转到Step4;
Step4:若ui(xk)-uk(xk)≤δth,并且smik≤smth,则令其中,δth为样本选择阈值,smth为类间分离性阈值;否则,令k=k+1,并转到step1。
前述的基于DDAG的SVM多类分类主动学习算法,其特征在于,在步骤4中,根据式(5)更新训练样本发生变化的类所对应的分离性测度:
为在特征空间H中类i和类j间的分离性测度,mΦ为样本向量组{x1,x2,…,xn}的中心,对于非线性可分的模式采用非线性映射Φ把输入空间映射到高维特征空间H,特征空间H的中心σH为类在特征空间中的方差,为特征空间H中类i和类j中心间的距离,
其中,类在特征空间H中的方差σH根据式(2)计算得到:
dH(xi,mΦ)为样本xi到类中心mΦ的距离,根据下式计算得到:
其中,K(·,·)是核函数。
前述的基于DDAG的SVM多类分类主动学习算法,其特征在于,在步骤5中,计算UnM(x)、dcos(x,Lx)、dcos(x,Ux)的过程分别为:
(1)、计算UnM(x)的过程为:
样本x的不确定性度其中Pi为多类问题中样本x的后验概率,记Pmax=max Pi,则对于一个K类的分类问题,样本x对应于第i类的后验概率Pi=P(y=i|x)通过求解以下优化问题获得:
Pi≥0,i=1,…,K 式(5)
其中,1≤i≤K,rji=P(y=j|y=i or j,x),rij=P(y=i|y=i o jr,x),对两类问题的SVM输出概率估计使用式(6)计算:
其中,f(x)为SVM分类判别函数;
(2)、计算dcos(x,Lx)的过程为:
首先,在仅考虑样本x与样本集Lx的关系、而不考虑样本x与SVM分类超平面间距离的关系的情况下,根据式(7)计算样本x与样本集Lx的相似度d′cos(x,Lx):
式中,n表示样本集Lx的样本数,dcos(x,xj)为样本x与xj的相似性,根据式(8)来度量:
式中,Φ(x)和Φ(xj)分别为样本x与xj经过非线性映射Φ映射到特征空间H后对应的坐标,K(·,·)是SVM核函数;
然后,考虑样本x与SVM分类超平面间距离的关系,根据式(7’)计算样本x与样本集Lx的相似度dcos(x,Lx):
dcos(x,Lx)=λcosd+(1-λcos)d′cos(x,Lx) 式(7’)
式中,λcos为平衡因子,d为样本x到分类超平面的距离,
(3)、计算dcos(x,Ux)的过程为:
首先,在仅考虑样本x与样本集Ux的关系、而不考虑样本x与SVM分类超平面间距离的关系的情况下,根据式(9)计算样本x与样本集Ux的相似度d′cos(x,Ux):
式中,n表示样本集Ux的样本数,dcos(x,xj)为样本x与xj的相似性,根据式(8)来度量:
式中,Φ(x)和Φ(xj)分别为样本x与xj经过非线性映射Φ映射到特征空间H后对应的坐标,K(·,·)是SVM核函数;
然后,考虑样本x与SVM分类超平面间距离的关系,根据式(9’)计算样本x与样本集Ux的相似度dcos(x,Ux):
dcos(x,Ux)=λcosd+(1-λcos)d′cos(x,Ux) 式(9’)
式中,λcos为平衡因子,d为样本x到分类超平面的距离,
本发明的有益之处在于:
在多类SVM训练学习过程中引入主动学习思想,充分利用传统多类分类方法“一对多”或“一对一”多类分类方法在测试样本时存在大量的不可分点或决策盲区的缺点,给出了一种SVM多类分类主动学习通用框架模型,在此框架下提出了一种基于DDAG的SVM多类分类主动学习算法,算法中提出一种基于“o-v-o”分类决策盲区的主动学习算法主动选择这些不可分或决策盲区中对当前学习器来说就是“最不确定性”的样本,而避免选择类似野点噪音的样本,针对主动学习中仅使用单一主动学习策略存在的局限性,在多类SVM训练学习中提出一种基于后验概率及相似度度量不确定性多策略融合的主动学习方法,在通用框架模型下将这两种主动学习方法有效得进行了融合,减小了SVM训练学习中的样本标记规模,减少学习的样本标记代价,即以尽可能少的标记样本训练获得性能尽可能高的SVM分类器。
附图说明
图1是4类o-v-o分类示意图;
图2是o-v-a可能存在的不可分区域示意图;
图3是o-v-o可能存在的不可分区域示意图;
图4是SVM多类分类主动学习框架模型;
图5是一个小规模分类问题的DDAG;
图6是类中心间距离相等类间易分性示意图。
具体实施方式
针对背景技术部分提到的多类分类主动学习存在的问题,并根据图4中给出的SVM多类分类主动学习框架模型,本发明给出了一种基于DDAG的SVM多类分类主动学习方法,其中,框架模型中的过程P1采用了一种基于改进的DDAG多类分类方法,主动学习过程P2及P3采用了多种主动学习方法融合互补策略,为了加快训练学习进程,过程P4采用了SVM增量学习算法,为了文中叙述方便,称这种方法为DDAGB-MASVM算法(DecisionDirected Acyclic Graph Based—Multi-class Active SVM,DDAGB-MASVM)。
以下结合附图和具体实施例对本发明作具体的介绍。
根据前面关于SVM多类分类主动学习方法的分析可知,不同的多类分类构造方法不仅影响SVM多类分类器的性能,而且也影响SVM主动学习的性能,故多类分类构造方法也是DDAGB-MASVM算法中的一个关键。
由前面对多类分类方法的讨论分析可知,DDAGSVMs是一种实用的MSVM方法,图5给出一个小规模分类问题的DDAG,它与o-v-o的分类精度相当,而且相比o-v-o,解决了“一对一”方法的决策盲区,分类速度更快。然而DDAGSVMs使用一个有根的前向无环图(DAG)作为分类决策的依据,如根节点或者中间节点的分类器较弱,存在自上而下的“误差累积”现象,这将严重影响DDAGSVMs多类分类的性能。
对于DDAG存在的误差积累问题,是否可以通过某种指标确定DDAG结构,从而有效降低误差积累是我们要研究的内容。
在构造多类分类器时,现有的方法是采用类间可分性作为参考指标,例如:文献22(Takahashi F,Shigeo A.Decision-tree-based multi-class support vector machines[A].Proc.ICONIP Proceedings of the Annual Conference of the Institute of Systems,Control andInformation Engineers[C].Japan,2002.483-484)采用欧式距离作为类别间的可分性度量,文献23(厉小润,赵光宙,赵辽英.决策树支持向量机多分类器设计的向量投影法[J].控制与决策,2008,23(7):745-750)采用向量投影方法计算类别之间的可分性,而文献24(FaraounK M,Boukelif A.Genetic Programming Approach for Multi-Category Pattern ClassificationApplied to Network Intrusions Detection[J].International Journal of Computational Intelligence,2007,3(1):79-90)在解决多类分类问题时,用分类误差度量类间可分性,类似的还有文献25(袁莉.基于高分辨距离像的雷达目标识别方法研究[D].西安:西安电子科技大学,2007)则采用LDA方法寻找使得两类问题可分性最好的投影方向,以LDA分类误差可以作为一种有效的类间线性可分性度量。
采用类间可分性作为DDAGSVMs中各节点分类器选择的依据,即将最易分的两类对应的分类器作为有根的前向无环图(DAG)根节点或较顶层节点,在一定程度上降低了“误差累积”的影响。然而这些方法存在度量标准不精确、计算复杂等局限性。如采用类间的Euclidean距离作为分离性测度的度量,这种方法存在类中心间的距离远近并不能够代表类间的分离度,如图6所示,(a)与(b)中所代表的类间的距离均相等,但是很明显(b)中的两类要比(a)中的两类容易分。
针对这种问题,相关文献做了讨论而采用改进的Euclidean距离法,但类似的这些度量方法并没有考虑样本的分布,如某两类即使其分离度很高,但其只占极少部分,最坏情况下是样本集中不再存在此类样本,故应考虑样本密度影响,尽可能使类间分离度高且样本数多的类分类器作为决策树深度小的节点,这样不仅可以减轻“误差累积”的影响,同时可以加快分类决策的速度。
基于以上分析,DDAGB-MASVM算法引入一种基于类分布的类间分离性度量方法来度量类间的易分性程度,并依此确定各类间的可分性矩阵,以此作为DDAGSVMs分类时节点分类器选择的依据。
下面详细介绍本发明的基于DDAG的SVM多类分类主动学习算法。
输入:已标记样本集L(各类样本至少一个),类别数K,未标记或候选样本集U,每次采样的样本数m,不确定性阈值UnMth,类间分离性阈值smth,样本选择阈值δth,样本相似度阈值dmax、dmin,终止条件Sstop。
输出:多类分类器fsvm,预标记样本。
第一步:
在样本集上训练K(K-1)/2个二类SVM分类器记所有SVM二分类器组成的多分类器为其中,i=1,2,…,K,j=1,2,…,K,i≠j,L为已标记样本集,K为类别数,t=1。
在样本集上训练K(K-1)/2个二类SVM分类器时,需要输入:已标记样本集L、未标记或候选样本集U、每次采样的样本数m、边界阈值rx、距离阈值dth和终止条件Sstop,其中,已标记样本集L中含有正负样本至少各一个,最后输出:分类器fsvm和预标记样本。该过程具体为:
Initialization:用样本集训练初始SVM分类器k=1。
Step1:当进行第k次训练时,k=1,2,…,判断SVM分类器是否达到终止条件Sstop,若满足则输出并结束训练,否则转Step2。
Step2:判断U是否为空,若是,输出并结束训练;否则,先对未标记样本用进行预先标记,然后据选择m个离分类边界距离小于阈值dth的样本作为下一次增量训练样本
Step3:检验中的样本是否违背的广义KKT条件,根据检验结果,被分为和
Step4:将合并得根据标示符将集合分为正例样本集A+和负例样本集A-,并分别根据及阈值rx进行处理,保留仅大于rx的样本,得到剩余正例样本集和剩余负例样本集合并二者得
Step5:将合并得到从U中删除所选择的未标记样本,并对中的未标记样本人工进行正确标记,然后在其上训练得到新的分类器并生成和k=k+1,转Step1。
第二步:
判断SVM多分类器是否满足学习的终止条件Sstop:
(1)、若多分类器满足终止条件Sstop,则输出结束训练。
(2)、若多分类器不满足终止条件Sstop,则转到第三步。
第三步:
判断未标记或候选样本集U是否为空:
(1)、若样本集U为空,则输出结束训练。
(2)、若样本集U不为空,则先对未标记或候选样本用进行预先标记,即对样本进行分类决策,该过程具体为:
Initialization:根据式计算分离性测度矩阵SMH,并根据式找到最易分的两类记为i0,j0,并将作为根节点。
Step1:取待标记样本x,复制分离性测度矩阵SMH,设定计数器t=1。
Step2:计算若t<k-1,则转Step3,若t=k-1,则转Step4。
Step3:若则表示x不属于类j0,将分离性测度矩阵SMH中j0列、j0行置0,从i0行中选择可分离性测度值最大的单元,取其列号代替j0,计数器t=t+1,返回Step2;若则表示x不属于类i0,将分离性测度矩阵SMH中i0行、i0列置0,从j0列中选择可分离性测度值最大的单元,取其行号代替i0,计数器t=t+1,返回Step2。
Step4:若则x属于类i0;若则x属于类j0。
对未标记或候选样本用标记后,根据基于o-v-o分类决策盲区的主动学习算法,从未标记或候选样本集U中选择出对SVM训练最有利的未标记样本集并令
在执行基于o-v-o分类决策盲区的主动学习算法时,需要输入:未标记样本集合U、类别数K、样本选择阈值δth、类间分离性阈值smth和基分类器fSVM ij,i=1,2,…,K,j=1,2,…,K,i≠j,最后输出的是:对SVM训练最有利的未标记样本集该过程具体为:
Step1:令k=1,若样本则退出;否则,对每个决策函数计算基分类器fSVM ij(xk),若fSVM ij(xk)=1则给第i类的计数器ui(xk)加1,否则给第j类的计数器uj(xk)加1。
Step2:令ui(xk)=maxuθ(xk),uj(xk)=max uθ(xk),其中i≠j,θ=1,…,K。
Step3:若ui(xk)=uk(xk),则令否则,转到Step4。
Step4:若ui(xk)-uk(xk)≤δth,并且smik≤smth,则令其中,δth为样本选择阈值,smth为类间分离性阈值;否则,令k=k+1,并转到step1。
第四步:
首先,将样本集人工进行正确标记,并将其加入标记样本集,有
然后,在更新的训练样本集L上使用SVM主动增量学习算法AlISVM仅对对应类样本发生变化的分类器重新训练,并更新分离性测度矩阵SMH中训练样本发生变化的类所对应的分离性测度。其中,更新训练样本发生变化的类所对应的分离性测度,根据式(1)进行:
式(1)中,为在特征空间H中类i和类j间的分离性测度,mΦ为样本向量组{x1,x2,…,xn}的中心,对于非线性可分的模式采用非线性映射Φ把输入空间映射到高维特征空间H,特征空间H的中心σH为类在特征空间中的方差,为特征空间H中类i和类j中心间的距离,
其中,类在特征空间H中的方差σH根据式(2)计算得到:
式(2)中,dH(xi,mΦ)为样本xi到类中心mΦ的距离,根据下式计算得到:
式中,K(·,·)是核函数。
最后,判断分类器是否达到终止条件Sstop,若满足则输出并结束训练,否则转到第五步。
第五步:
首先,对未标记样本x,x∈U,分别计算样本x的不确定性度UnM(x)、样本x与Lx的相似度dcos(x,Lx)、样本x与Ux的相似度dcos(x,Ux),其中,Lx为与x同类的标记样本集,Ux为与x同类的未标记样本集。下面分别介绍计算UnM(x)、dcos(x,Lx)、dcos(x,Ux)的过程。
(1)、计算UnM(x)的过程:
样本x的不确定性度其中Pi为多类问题中样本x的后验概率,记Pmax=max Pi,则对于一个K类的分类问题,样本x对应于第i类的后验概率Pi=P(y=i|x)通过求解以下优化问题获得:
Pi≥0,i=1,…,K 式(5)
其中,1≤i≤K,rji=P(y=j|y=i or j,x),rij=P(y=i|y=i o jr,x),对两类问题的SVM输出概率估计使用式(6)计算:
其中,f(x)为SVM分类判别函数。
(2)、计算dcos(x,Lx)的过程:
首先,在仅考虑样本x与样本集Lx的关系、而不考虑样本x与SVM分类超平面间距离的关系的情况下,根据式(7)计算样本x与样本集Lx的相似度d′cos(x,Lx):
式中,n表示样本集Lx的样本数,dcos(x,xj)为样本x与xj的相似性,根据式(8)来度量:
式中,Φ(x)和Φ(xj)分别为样本x与xj经过非线性映射Φ映射到特征空间H后对应的坐标,K(·,·)是SVM核函数;
然后,考虑样本x与SVM分类超平面间距离的关系,根据式(7’)计算样本x与样本集Lx的相似度dcos(x,Lx):
dcos(x,Lx)=λcosd+(1-λcos)d′cos(x,Lx) 式(7’)
式中,λcos为平衡因子,即平衡样本到分类超平面的距离和样本中角度的多样性,d为样本x到分类超平面的距离,
(3)、计算dcos(x,Ux)的过程:
首先,在仅考虑样本x与样本集Ux的关系、而不考虑样本x与SVM分类超平面间距离的关系的情况下,根据式(9)计算样本x与样本集Ux的相似度d′cos(x,Ux):
式中,n表示样本集Ux的样本数,dcos(x,xj)为样本x与xj的相似性,根据式(8)来度量:
式中,Φ(x)和Φ(xj)分别为样本x与xj经过非线性映射Φ映射到特征空间H后对应的坐标,K(·,·)是SVM核函数;
然后,考虑样本x与SVM分类超平面间距离的关系,根据式(9’)计算样本x与样本集Ux的相似度dcos(x,Ux):
dcos(x,Ux)=λcosd+(1-λcos)d′cos(x,Ux) 式(9’)
式中,λcos为平衡因子,d为样本x到分类超平面的距离,
计算得到UnM(x)、dcos(x,Lx)和dcos(x,Ux)以后,选择m个满足UnM(x)≤UnMth、dcos(x,Lx)≤dmax及dcos(x,Ux)≥dmin的样本,并记为 其中,m为每次采样的样本数,UnMth为不确定性阈值,dmax和dmin为样本相似度阈值。
第六步:
首先,将样本集人工进行正确标记,并将其加入标记样本集,有
然后,在更新的训练样本集L上使用SVM主动增量学习算法AlISVM仅对对应类样本发生变化的分类器重新训练,并更新分离性测度矩阵SMH中训练样本发生变化的类对应的分离性测度。
最后,令t=t+1,并转到第二步,直至训练结束。
算法实验与结果分析:
为验证DDAGB-MASVM算法的正确性和有效性,通过实验比较了DDAGB-MASVM算法、随机采样法、基于分类决策盲区的主动学习法以及基于后验概率与相似度度量的主动学习法的算法性能。为方便描述将后三种算法分别称为Random Sampling、DEB-ASVM(Decision Error Based Active SVM)以及PSB-ASVM(Probability and SimilarityBased Active SVM),其中Random Sampling算法为DDAGB-MASVM算法中未使用图.4主动学习过程P2、P3,而对样本的采样使用随机采样算法,DEB-ASVM算法为DDAGB-MASVM算法中仅使用主动学习过程P2,PSB-ASVM算法则是仅使用主动学习过程P3,为方便实验比较,Random Sampling、DEB-ASVM以及PSB-ASVM算法中其它过程同DDAGB-MASVM算法。
实验数据及参数设置:
实验中的数据使用基准数据UCI数据库中的balance-scale、iris、image、wine、glass以及yeast数据集,其概要如下表所示,在算法实验中,随机地选择2%的样本作为SVM训练的初始样本(确保各类样本至少一个),其余98%的样本去掉类别标记作为候选的未标记样本集,而为了比较主动学习算法与其它算法的性能取所有样本的80%作为测试样本集。
表1 DDAGB-MASVM算法实验中所用数据表
DDAGB-MASVM算法实验中使用的加权SVM是基于Steve Gunn SVM Toolbox,核函数为高斯核函数,其模型优化及参数的设置使用文献26(徐海龙,王晓丹,廖勇,张宏达,蒋玉娇.一种基于PSO的RBF-SVM模型优化新方法[J].控制与决策,2010,25(3):367-370.)所给方法,算法中C=100。
本发明中主动学习算法的终止策略使用如下方法策略:
(1)在DDAGB-MASVM主动学习过程中对第t次选择候选标记样本时,在专家对其进行标记的同时,计算本轮训练学习的分类正确率ηt,并使用前次SVM分类器计算其分类正确率并记为ηt-1;
(2)统计DDAGB-MASVM主动学习第t次选择的最不确定性样本数记为St;
(3)当ηt达到学习器要求的某个阈值时并且其性能曲线呈现“rise-peak-flat”,即随着SVM主动学习进程,ηt在达到某个值后在一段时间里(可以SVM主动学习连续几次采样为判断)并没有明显的提升(实际应用中可以ηt的变化率作为判断)并且St呈现减少的趋势,则终止SVM主动学习。
本发明中算法的每次采样数m初始值设为某个值,随着算法的训练学习进程,其没轮训练学习中的采样数m采用如下一种自适应调整策略方法:
(1)在主动学习的初始阶段采样个数取为m;
(2)如果当前分类正确率ηt与前一次正确率ηt-1的差值绝对值△(η)小于阈值thδ即:
△(η)=|ηt-ηt-1|<thδ (3.31)
则每次采样个数m就在原基础上作相应的调整,具体如下:
阈值thδ表示每次主动学习后学习的性能较前一次改进的幅度,thδ越大说明每次主动学习效果明显,如一般可取阈值thδ=0.05,而当△(η)趋于0时表示主动学习性能提升不明显时,这时标记的样本数应取最小如取1,这样只选取对学习器最不确定性的一个样本,既有利于学习器训练,又避免花费大量的样本选择及标记代价而取的较小的性能提高;
(3)随着学习的进程,可能出现采用主动学习方法的学习器性能提升不明显,甚至还低于随机采样法性能,即在主动学习的初始阶段随机采样性能略好于主动学习。对于这种情况,采样个数m应在上述策略(2)的基础上进一步减少,优先选择对学习器训练最有利的样本以改善学习的性能。为此对这种情况,本文采用直接将采样个数m减去两个直到1,而当学习的性能较好时则继续采用策略(2)。
为保证选择最“不确定性”的样本同时避免漏选,取不确定性阈值UnMth=0.25;为减少DDAG多类分类方法“误差积累”的影响,类间分离性阈值smth>0.6较为合适,实验中折中取smth=0.75;为避免漏选样“决策盲区”中的“不确定性”样本,基于“o-v-o”分类决策盲区的主动学习样本采样法中的选择阈值δth取相对较小合适,实验中取最小值即δth=1;基于后验概率及相似度度量不确定性的主动学习算法中,为保证所选择的样本“最具有代表性”,相似度阈值dmin>0.5而dmax≤0.5较为合适,实验中取dmax=0.5、dmin=0.6。
实验结果分析:
为使实验结果更加可靠及说明问题,每次的训练集、验证集与测试集都随机产生,使用多次实验的均值作为结果,其中对iris,wine和glass数据集实验10次,对其余数据集实验5次。实验机器配置为1024M内存,Pentium(R)4CPU,2.50GHz,整个算法用Matlab R2013b实现。
表2给出了四种算法在表1所示6个数据集上的性能比较,其中正确率为多类中各类分类正确率和的均值,std为5次实验的正确率标准差。
表2 四种算法的性能比较
由上述实验结果可知,在标记相同样本数情况下,DDAGB-MASVM、PSB-ASVM算法的SVM分类正确率都高于DEB-ASVM算法以及Random Sampling算法,这说明各算法虽然标记的样本数相同,但所标记的样本不同,即DDAGB-MASVM以及PSB-ASVM算法主动学习策略选择的样本相比其它算法选择的样本更有利于当前SVM训练,同时在训练获得相同分类正确率的SVM情况下,本发明中算法所使用的标记样本都少于同类算法,由此可见,这就验证了本发明中算法的有效性。
需要说明的是,上述实施例不以任何形式限制本发明,凡采用等同替换或等效变换的方式所获得的技术方案,均落在本发明的保护范围内。
Claims (6)
1.基于DDAG的SVM多类分类主动学习算法,其特征在于,包括以下步骤:
步骤1:在样本集上训练K(K-1)/2个二类SVM分类器记所有SVM二分类器组成的多分类器为其中,i=1,2,…,K,j=1,2,…,K,i≠j,L为已标记样本集,K为类别数,t=1;
步骤2:判断SVM多分类器是否满足学习的终止条件Sstop,若满足则输出并结束训练,否则转到步骤3;
步骤3:判断未标记或候选样本集U是否为空,若是,输出并结束训练;否则,先对未标记或候选样本用进行预先标记,然后根据基于o-v-o分类决策盲区的主动学习算法,从未标记或候选样本集U中选择出对SVM训练最有利的未标记样本集并令
步骤4:将样本集人工进行正确标记,并将其加入标记样本集,有在更新的训练样本集L上使用SVM主动增量学习算法AlISVM仅对对应类样本发生变化的分类器重新训练,并更新分离性测度矩阵SMH中训练样本发生变化的类所对应的分离性测度;判断分类器是否达到终止条件Sstop,若满足则输出并结束训练,否则转到步骤5;
步骤5:对未标记样本x,x∈U,分别计算样本x的不确定性度UnM(x)、样本x与Lx的相似度dcos(x,Lx)、样本x与Ux的相似度dcos(x,Ux),所述Lx为与x同类的标记样本集,所述Ux为与x同类的未标记样本集,选择m个满足UnM(x)≤UnMth、dcos(x,Lx)≤dmax及dcos(x,Ux)≥dmin的样本,并记为 其中,m为每次采样的样本数,UnMth为不确定性阈值,dmax和dmin为样本相似度阈值;
步骤6:将样本集人工进行正确标记,并将其加入标记样本集,有在更新的训练样本集L上使用SVM主动增量学习算法AlISVM仅对对应类样本发生变化的分类器重新训练,并更新分离性测度矩阵SMH中训练样本发生变化的类对应的分离性测度;令t=t+1,并转到步骤2,直至训练结束。
2.根据权利要求1所述的基于DDAG的SVM多类分类主动学习算法,其特征在于,在步骤1中,在样本集上训练K(K-1)/2个二类SVM分类器的过程为:
输入:已标记样本集L、未标记或候选样本集U、每次采样的样本数m、边界阈值rx、距离阈值dth和终止条件Sstop,所述已标记样本集L中含有正负样本至少各一个;
输出:分类器fsvm和预标记样本;
Initialization:用样本集训练初始SVM分类器k=1;
Step1:当进行第k次训练时,k=1,2,…,判断SVM分类器是否达到终止条件Sstop,若满足则输出并结束训练,否则转Step2;
Step2:判断U是否为空,若是,输出并结束训练;否则,先对未标记样本用进行预先标记,然后据选择m个离分类边界距离小于阈值dth的样本作为下一次增量训练样本
Step3:检验中的样本是否违背的广义KKT条件,根据检验结果,被分为和
Step4:将合并得根据标示符将集合分为正例样本集A+和负例样本集A-,并分别根据及阈值rx进行处理,保留仅大于rx的样本,得到剩余正例样本集和剩余负例样本集合并二者得
Step5:将合并得到从U中删除所选择的未标记样本,并对中的未标记样本人工进行正确标记,然后在其上训练得到新的分类器并生成和k=k+1,转Step1。
3.根据权利要求1所述的基于DDAG的SVM多类分类主动学习算法,其特征在于,在步骤3中,使用对样本进行预先标记的过程为:
Initialization:根据式计算分离性测度矩阵SMH,并根据式找到最易分的两类记为i0,j0,并将作为根节点;
Step1:取待标记样本x,复制分离性测度矩阵SMH,设定计数器t=1;
Step2:计算若t<k-1,则转Step3,若t=k-1,则转Step4;
Step3:若则表示x不属于类j0,将分离性测度矩阵SMH中j0列、j0行置0,从i0行中选择可分离性测度值最大的单元,取其列号代替j0,计数器t=t+1,返回Step2;若则表示x不属于类i0,将分离性测度矩阵SMH中i0行、i0列置0,从j0列中选择可分离性测度值最大的单元,取其行号代替i0,计数器t=t+1,返回Step2;
Step4:若则x属于类i0;若则x属于类j0。
4.根据权利要求3所述的基于DDAG的SVM多类分类主动学习算法,其特征在于,在步骤3中,基于o-v-o分类决策盲区的主动学习算法的流程为:
输入:未标记样本集合U、类别数K、样本选择阈值δth、类间分离性阈值smth和基分类器fSVMij,i=1,2,…,K,j=1,2,…,K,i≠j;
输出:对SVM训练最有利的未标记样本集
Step1:令k=1,若样本则退出;否则,对每个决策函数计算基分类器fSVMij(xk),若fSVMij(xk)=1则给第i类的计数器ui(xk)加1,否则给第j类的计数器uj(xk)加1;
Step2:令ui(xk)=maxuθ(xk),uj(xk)=maxuθ(xk),其中i≠j,θ=1,…,K;
Step3:若ui(xk)=uk(xk),则令否则,转到Step4;
Step4:若ui(xk)-uk(xk)≤δth,并且smik≤smth,则令其中,δth为样本选择阈值,smth为类间分离性阈值;否则,令k=k+1,并转到step1。
5.根据权利要求1所述的基于DDAG的SVM多类分类主动学习算法,其特征在于,在步骤4中,根据式(1)更新训练样本发生变化的类所对应的分离性测度:
为在特征空间H中类i和类j间的分离性测度,mΦ为样本向量组{x1,x2,…,xn}的中心,对于非线性可分的模式采用非线性映射Φ把输入空间映射到高维特征空间H,特征空间H的中心σH为类在特征空间中的方差,为特征空间H中类i和类j中心间的距离,
其中,类在特征空间H中的方差σH根据式(2)计算得到:
dH(xi,mΦ)为样本xi到类中心mΦ的距离,根据下式计算得到:
其中,K(·,·)是核函数。
6.根据权利要求5所述的基于DDAG的SVM多类分类主动学习算法,其特征在于,在步骤5中,计算UnM(x)、dcos(x,Lx)、dcos(x,Ux)的过程分别为:
(1)、计算UnM(x)的过程为:
样本x的不确定性度其中Pi为多类问题中样本x的后验概率,记Pmax=max Pi,则对于一个K类的分类问题,样本x对应于第i类的后验概率Pi=P(y=i|x)通过求解以下优化问题获得:
Pi≥0,i=1,…,K 式(5)
其中,1≤i≤K,rji=P(y=j|y=i or j,x),rij=P(y=i|y=i o jr,x),对两类问题的SVM输出概率估计使用式(6)计算:
其中,f(x)为SVM分类判别函数;
(2)、计算dcos(x,Lx)的过程为:
首先,在仅考虑样本x与样本集Lx的关系、而不考虑样本x与SVM分类超平面间距离的关系的情况下,根据式(7)计算样本x与样本集Lx的相似度d′cos(x,Lx):
式中,n表示样本集Lx的样本数,dcos(x,xj)为样本x与xj的相似性,根据式(8)来度量:
式中,Φ(x)和Φ(xj)分别为样本x与xj经过非线性映射Φ映射到特征空间H后对应的坐标,K(·,·)是SVM核函数;
然后,考虑样本x与SVM分类超平面间距离的关系,根据式(7’)计算样本x与样本集Lx的相似度dcos(x,Lx):
dcos(x,Lx)=λcosd+(1-λcos)d′cos(x,Lx) 式(7’)
式中,λcos为平衡因子,d为样本x到分类超平面的距离,
(3)、计算dcos(x,Ux)的过程为:
首先,在仅考虑样本x与样本集Ux的关系、而不考虑样本x与SVM分类超平面间距离的关系的情况下,根据式(9)计算样本x与样本集Ux的相似度d′cos(x,Ux):
式中,n表示样本集Ux的样本数,dcos(x,xj)为样本x与xj的相似性,根据式(8)来度量:
式中,Φ(x)和Φ(xj)分别为样本x与xj经过非线性映射Φ映射到特征空间H后对应的坐标,K(·,·)是SVM核函数;
然后,考虑样本x与SVM分类超平面间距离的关系,根据式(9’)计算样本x与样本集Ux的相似度dcos(x,Ux):
dcos(x,Ux)=λcosd+(1-λcos)d′cos(x,Ux) 式(9’)
式中,λcos为平衡因子,d为样本x到分类超平面的距离,
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510155787.3A CN104751182A (zh) | 2015-04-02 | 2015-04-02 | 基于ddag的svm多类分类主动学习算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510155787.3A CN104751182A (zh) | 2015-04-02 | 2015-04-02 | 基于ddag的svm多类分类主动学习算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104751182A true CN104751182A (zh) | 2015-07-01 |
Family
ID=53590835
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510155787.3A Pending CN104751182A (zh) | 2015-04-02 | 2015-04-02 | 基于ddag的svm多类分类主动学习算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104751182A (zh) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106407406A (zh) * | 2016-09-22 | 2017-02-15 | 国信优易数据有限公司 | 一种文本处理方法和系统 |
CN106815341A (zh) * | 2017-01-09 | 2017-06-09 | 东方网力科技股份有限公司 | 一种基于msvm‑wknn算法的分类方法及其应用 |
CN107463938A (zh) * | 2017-06-26 | 2017-12-12 | 南京航空航天大学 | 一种基于间隔校正支持向量机的航空发动机气路部件故障检测方法 |
CN107798283A (zh) * | 2016-08-31 | 2018-03-13 | 西安英诺视通信息技术有限公司 | 一种基于决策导向无环图的神经网络故障多类分类器 |
CN107958216A (zh) * | 2017-11-27 | 2018-04-24 | 沈阳航空航天大学 | 基于半监督的多模态深度学习分类方法 |
CN108197670A (zh) * | 2018-01-31 | 2018-06-22 | 国信优易数据有限公司 | 伪标签生成模型训练方法、装置及伪标签生成方法及装置 |
CN108322445A (zh) * | 2018-01-02 | 2018-07-24 | 华东电力试验研究院有限公司 | 一种基于迁移学习和集成学习的网络入侵检测方法 |
CN109032107A (zh) * | 2018-06-05 | 2018-12-18 | 国家电网公司 | 基于贝叶斯分类的设备故障信号频发预测方法 |
CN110175251A (zh) * | 2019-05-25 | 2019-08-27 | 西安电子科技大学 | 基于语义对抗网络的零样本草图检索方法 |
CN110532907A (zh) * | 2019-08-14 | 2019-12-03 | 中国科学院自动化研究所 | 基于面象和舌象双模态特征提取的中医人体体质分类方法 |
CN110659657A (zh) * | 2018-06-29 | 2020-01-07 | 北京京东尚科信息技术有限公司 | 训练模型的方法和装置 |
CN111006860A (zh) * | 2019-12-19 | 2020-04-14 | 南京航空航天大学 | 一种基于AdaBoost-ASVM算法的飞机执行器故障诊断方法 |
CN111814851A (zh) * | 2020-06-24 | 2020-10-23 | 重庆邮电大学 | 一种基于单类支持向量机的煤矿瓦斯数据标记方法 |
CN112085109A (zh) * | 2020-09-14 | 2020-12-15 | 电子科技大学 | 基于主动学习的相控孔隙度预测方法 |
CN112396507A (zh) * | 2020-09-01 | 2021-02-23 | 重庆邮电大学 | 基于阴影划分的集成svm个人信用评估方法 |
CN112996037A (zh) * | 2021-03-02 | 2021-06-18 | 哈尔滨理工大学 | 基于改进的否定选择算法的无线传感器网络故障诊断方法 |
CN113095425A (zh) * | 2021-04-21 | 2021-07-09 | 广东电网有限责任公司 | 现场开工条件自动判断与决策的方法、装置、设备及介质 |
CN113569995A (zh) * | 2021-08-30 | 2021-10-29 | 中国人民解放军空军军医大学 | 一种基于集成学习的伤情多分类方法 |
CN116343915A (zh) * | 2023-03-15 | 2023-06-27 | 电子科技大学长三角研究院(衢州) | 生物序列集成分类器的构建方法及生物序列预测分类方法 |
-
2015
- 2015-04-02 CN CN201510155787.3A patent/CN104751182A/zh active Pending
Cited By (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107798283A (zh) * | 2016-08-31 | 2018-03-13 | 西安英诺视通信息技术有限公司 | 一种基于决策导向无环图的神经网络故障多类分类器 |
CN106407406B (zh) * | 2016-09-22 | 2019-12-10 | 国信优易数据有限公司 | 一种文本处理方法和系统 |
CN106407406A (zh) * | 2016-09-22 | 2017-02-15 | 国信优易数据有限公司 | 一种文本处理方法和系统 |
CN106815341A (zh) * | 2017-01-09 | 2017-06-09 | 东方网力科技股份有限公司 | 一种基于msvm‑wknn算法的分类方法及其应用 |
CN107463938A (zh) * | 2017-06-26 | 2017-12-12 | 南京航空航天大学 | 一种基于间隔校正支持向量机的航空发动机气路部件故障检测方法 |
CN107463938B (zh) * | 2017-06-26 | 2021-02-26 | 南京航空航天大学 | 一种基于间隔校正支持向量机的航空发动机气路部件故障检测方法 |
CN107958216A (zh) * | 2017-11-27 | 2018-04-24 | 沈阳航空航天大学 | 基于半监督的多模态深度学习分类方法 |
CN108322445A (zh) * | 2018-01-02 | 2018-07-24 | 华东电力试验研究院有限公司 | 一种基于迁移学习和集成学习的网络入侵检测方法 |
CN108197670A (zh) * | 2018-01-31 | 2018-06-22 | 国信优易数据有限公司 | 伪标签生成模型训练方法、装置及伪标签生成方法及装置 |
CN108197670B (zh) * | 2018-01-31 | 2021-06-15 | 国信优易数据股份有限公司 | 伪标签生成模型训练方法、装置及伪标签生成方法及装置 |
CN109032107A (zh) * | 2018-06-05 | 2018-12-18 | 国家电网公司 | 基于贝叶斯分类的设备故障信号频发预测方法 |
CN109032107B (zh) * | 2018-06-05 | 2021-07-20 | 国家电网公司 | 基于贝叶斯分类的设备故障信号频发预测方法 |
CN110659657A (zh) * | 2018-06-29 | 2020-01-07 | 北京京东尚科信息技术有限公司 | 训练模型的方法和装置 |
CN110659657B (zh) * | 2018-06-29 | 2024-05-24 | 北京京东尚科信息技术有限公司 | 训练模型的方法和装置 |
CN110175251A (zh) * | 2019-05-25 | 2019-08-27 | 西安电子科技大学 | 基于语义对抗网络的零样本草图检索方法 |
CN110532907A (zh) * | 2019-08-14 | 2019-12-03 | 中国科学院自动化研究所 | 基于面象和舌象双模态特征提取的中医人体体质分类方法 |
CN110532907B (zh) * | 2019-08-14 | 2022-01-21 | 中国科学院自动化研究所 | 基于面象和舌象双模态特征提取的中医人体体质分类方法 |
CN111006860A (zh) * | 2019-12-19 | 2020-04-14 | 南京航空航天大学 | 一种基于AdaBoost-ASVM算法的飞机执行器故障诊断方法 |
CN111814851B (zh) * | 2020-06-24 | 2021-07-06 | 重庆邮电大学 | 一种基于单类支持向量机的煤矿瓦斯数据标记方法 |
CN111814851A (zh) * | 2020-06-24 | 2020-10-23 | 重庆邮电大学 | 一种基于单类支持向量机的煤矿瓦斯数据标记方法 |
CN112396507A (zh) * | 2020-09-01 | 2021-02-23 | 重庆邮电大学 | 基于阴影划分的集成svm个人信用评估方法 |
CN112085109A (zh) * | 2020-09-14 | 2020-12-15 | 电子科技大学 | 基于主动学习的相控孔隙度预测方法 |
CN112996037A (zh) * | 2021-03-02 | 2021-06-18 | 哈尔滨理工大学 | 基于改进的否定选择算法的无线传感器网络故障诊断方法 |
CN113095425A (zh) * | 2021-04-21 | 2021-07-09 | 广东电网有限责任公司 | 现场开工条件自动判断与决策的方法、装置、设备及介质 |
CN113569995A (zh) * | 2021-08-30 | 2021-10-29 | 中国人民解放军空军军医大学 | 一种基于集成学习的伤情多分类方法 |
CN116343915A (zh) * | 2023-03-15 | 2023-06-27 | 电子科技大学长三角研究院(衢州) | 生物序列集成分类器的构建方法及生物序列预测分类方法 |
CN116343915B (zh) * | 2023-03-15 | 2023-11-24 | 电子科技大学长三角研究院(衢州) | 生物序列集成分类器的构建方法及生物序列预测分类方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104751182A (zh) | 基于ddag的svm多类分类主动学习算法 | |
WO2020249125A1 (zh) | 用于自动训练机器学习模型的方法和系统 | |
Guo et al. | Margin & diversity based ordering ensemble pruning | |
Zou et al. | Integration of residual network and convolutional neural network along with various activation functions and global pooling for time series classification | |
Devi et al. | Learning in presence of class imbalance and class overlapping by using one-class SVM and undersampling technique | |
Wu et al. | Online feature selection with streaming features | |
Li et al. | Hierarchical rough decision theoretic framework for text classification | |
CN104318242A (zh) | 一种高效的svm主动半监督学习算法 | |
Liu et al. | Deep learning approaches for link prediction in social network services | |
Lin et al. | Machine learning templates for QCD factorization in the search for physics beyond the standard model | |
Wang et al. | A band selection method for airborne hyperspectral image based on chaotic binary coded gravitational search algorithm | |
Zhang et al. | Efficient missing data imputation for supervised learning | |
Zhu et al. | Semi-supervised streaming learning with emerging new labels | |
Suryawanshi et al. | Email spam detection: an empirical comparative study of different ml and ensemble classifiers | |
CN103729428A (zh) | 一种大数据分类方法及系统 | |
Din et al. | Data stream classification with novel class detection: a review, comparison and challenges | |
Liu | Internet public opinion hotspot detection and analysis based on Kmeans and SVM algorithm | |
Chu et al. | Co-training based on semi-supervised ensemble classification approach for multi-label data stream | |
Bansal et al. | Analysis of focussed under-sampling techniques with machine learning classifiers | |
Zhang et al. | Grade prediction of student academic performance with multiple classification models | |
Singh et al. | Feature selection based classifier combination approach for handwritten Devanagari numeral recognition | |
Mustapha et al. | Effective Email Spam Detection System using Extreme Gradient Boosting | |
Panda et al. | Multi-label software bug categorisation based on fuzzy similarity | |
Hájek et al. | Municipal revenue prediction by ensembles of neural networks and support vector machines | |
Li et al. | Robust learning of deep predictive models from noisy and imbalanced software engineering datasets |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150701 |