《基于支持向量机不平衡数据集分类算法地研究》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
摹丁支持向避机的不平衡数据集分类研究摘要现代计算机技术的高速发展,使得在科学研究和社会生活的各个领域中积累了大量的数据,为将这些数据转换成有用的信息和知识,数据挖掘技术应运而生并得以迅速发展。但是存在一类数据集称为不平衡数据集,这种数据集中一类数据的数目远远大于另一类数据的数目,而且往往少数类提供的信息更加重要,所以不平衡数据集的分类问题成为现在数据挖掘领域研究的一个热点。支持向量机是一种建立在统计学习理论基础上的分类方法,具有坚实的理论基础,对于普通数据集有比其他分类算法好的分类效果,但是对于不平衡数据集的分类效果并不是很好。本文的研究内容首先从不平衡数据集的特点入手,提出基于聚簇的下采样方法,通过分析得到支持向量机在不平衡数据集分类时失效的原因,采用提出的下采样方法,对多数类的支持向量进行下采样,目的是删除一部分多数类样本,以降低多数类与少数类的不平衡程度,然后利用不同类惩罚支持向量机对新样本集进行训练,达到提高分类精度的目的。现今流行的处理不平衡数据集分类的方法之一是代价敏感学习,但是支持向量机本身并不具有代价敏感性,所以并不适用于代价敏感数据挖掘,本文提出基于数据集分解的代价敏感支持向量机,通过输出后验概率和元学习过程,重构一个集成了误分类代价的新样本集,使用代价敏感支持向量机对重构的新样本集进行训练,以使分类的误分类代价最小。对每一个算法都进行了仿真实验,使用不同的评价准则,通过实验结果和对实验结果的分析表明两个算法分别从提高分类精度,使误分类代价最小方面达到了很好的效果。关键词:数据挖掘;不平衡数据集;SVM;代价敏感 基于支持向鼍机的不平衡数据集分类研究AbstractTherapiddevelopmentofmodemcomputertechnology,makingtheresearchandallareasofsociallifehaveaccumulatedlargeamountsofdata,inordertoconvertthesedataintousefulinformationandknowledge,dataminingtechniquesemergedanddevelopedrapidly.Butthereisaclassofdatasetknownastheimbalanceddataset,thisdatasetthenumberofaclassofdataisfargreaterthanthenumberofanothertypeofdataandinformationprovidedbytheminorityclassisoftenmoreimportant,SOtheclassificationofimbalanceddatasetsDataminingisbecomingahotresearchfield.Supportvectormachineisbuiltbasedonstatisticallearningtheoryofclassification,hasasolidtheoreticalbasisforcommondatasetthanotherclassificationalgorithmsachievethebestperformance,butfortheimbalanceddatasetisnotverygoodclassificationresults.Thispaperwillfirstofallthecharacteristicsofimbalanceddatasetsfromtheunevenstart,Thenextproposedunder-samplingbasedonclustermethods,Byanalyzingtheobtainedsupportvectormachineclassificationintheimbalanceddatasetcausesthefailure,undertheproposedsamplingmethodusedformajorityclasssupportvectorfortheunder-sampling,thepurposeistoremovepartofthemajorityclasssamplestoreducetheimbalanceddegreeofmajorityclassandminorityclass,andthenuseSVMtotrainthellewsampleset,toimprovetheclassificationaccuracypurposes.Currentpopularclassificationofimbalanceddatasetsdealingwithoneofthemethodsiscost—sensitivelearning,butthesupportvectormachineitselfdoesnothavethecostofsensitivity,itdoesnotapplytoconsiderationofcost-sensitivedatamining,datasetsbasedondecompositionoftheproposedcost—sensitivesupportvectormachine,throughtheoutputaposterioriprobabilityandmeta-learningprocess,allintegratedreconstructionofmisclassificationcostofthenewsampleset,usingthesupportvectormachineonthereconstructionofthenewtrainingsampleset,SOthattheminimummisclassificationcostclassification.Havecarriedoutailalgorithmforeachsimulationexperiment,usingdifferentevaluationcriteria,theexperimentresultsandanalysisofexperimentalresultsshowsthatthetwoalgorithmsarefromimprovingtheaccuracyandtomaketheminimummisclassificationcost havereachedgoodresults.哈尔滨_r程大学硕十学位论文Keywords:datamining;imbalanceddataset;SVM;cost—sensitive 第1帝绪论第1章绪论1.1论文研究的目的和意义随着科学进步,计算机技术的高速发展,以及人们获取大量数据信息能力的提高,在各个领域中都积累了大量的数据。面对数量巨大并且不断增长的数据,人们迫切需要将这些数据转换成有用的信息和知识,数据挖掘技术从而得到了迅速的发展。获取有效、新颖、隐含有用的信息,并且最终可被理解的不平凡过程u1就是数据挖掘。所谓不平凡过程就是它已经不只是一般的数量计算,还包括对结构、模式、搜索参数等过程。数据挖掘的目标是为了找到数据间隐含的关联、特征、趋势等信息,从而可以发现从前未知,而且容易理解、有价值的知识,这些知识对趋势进行预测和决策是非常有用的。在人们日常数据收集过程中,虽然收集的数据量很大,但对于用户真正有用的信息通常非常的有限,大多数情况下只是全部数据中的-d,部分。对于上述问题,提出了不平衡数据集,不平衡数据集是指某类样本数量明显少于其他类样本数量的一类数据集。在不平衡数据集中,假设可以把样本分为两类,一类是指样本数目较多但价值很小的样本,称为多数类。另一类样本是指在数据集中数量很小但通常具有巨大的影响力和价值,称为少数类,这类样本是我们主要关心和研究的对象,并且两类样本在数量上相差极大。在传统的分类方法中,分类器的设计一般将测试样本全部判别为大类而忽视小类,这样就会产生小类分类效果差的问题,但是,在实际的应用中,对少数类的正确预测往往比正确预测出多数类具有更大的价值。所以以类分布基本平衡为假设前提,在此基础上,以分类精度最大化为分类目标,倾向于对多数类有较高的识别率,对于少数类的识别率却很低的方法并不适用于人们实际处理数据信息。在理论研究中,传统的分类方法存在认为不同的分类错误会带来相同分类损失的问题,而现实的数据提取中,错分不同的数据集合往往会带来不同的损失。特别在不平衡数据集中,拥有更大价值的少数类要比多数类更加重要,少数类的分类错误会带来更大的损失。所以,需要为不平衡数据集分类寻求新的分类方法和判别准则,同时在不平衡数据集分类的研究中代价敏感学习越来越引起人们的重视。当今对于不平衡数据集的主要研究内容为:一是研究不平衡数据集类分布对传统分类算法的影响。二是对不平衡数据集重构训练样本集或直接改进传统算法,提高少数类的分类和预测性能指标。不平衡数据集分类的应用很广泛,在人们的日常工作和学习中经常存在,并且在很1 哈尔滨一r:稃大学硕十掌何论文II多领域具有重要的商业价值和意义‘21。例如不平衡数据集分类可以应用于欺骗信用卡检测、疾病诊断叫、文本分类闱、信息检索啊等。综上所述,对不平衡数据集分类算法的研究,主要集中于提高少数类的识别率,满足分类的错分代价最小。不平衡数据集分类算法是未来研究的一个新的发展方向,对数据挖掘技术提出了新的挑战。1.2国内外研究现状1.2.1支持向量机的发展与研究支持向量机(supportvectormachine,SVM)的相关技术将在2.1.4节详细介绍。支持向量机的理论发展经历了一个不断完善的过程,统计学习理论的研究最早在60年代就由V.Vapnik开始研究,他可以称为是SVM的奠基人。1971年,在“TheNecessaryandSufficientConditionsfortheUniformsConvergenceofAveragestoExpectedValues”一文中,V.Vapnik和A.Chervonenkis提出了VC维理论,它是SVM的重要理论基础。V.Vapnik在1982年的“EstimationofDependencesBasedonEmpiricalData”一书中提出了结构风险最小化理论,这一理论的提出是具有划时代的意义的,也是SVM算法的奠基石。Boser,GuyonandVapnik在1992年提出了最优分类器。Cortes和Vapnik在1993年更进一步的讨论了非线性最优边界的分类问题。V.Vapnik在1995年出版的“ThenatureofstatisticalLearningTheory”一书中,完整地提出了SVM理论。支持向量机的核心内容1992年提出,1995年正式提出了SVM算法,SVM是到目前为止统计学习理论最成功的实现,目前仍处于不断发展阶段。支持向量机的发展过程历时很短,但是它却拥有着坚实的理论基础,因为它是基于统计学习理论的,而且近年又出现了很多理论研究成果,也为应用研究打下了坚实的基础。支持向量机发展的这些年来,对它的研究主要在对其自身性质及对其完善方面。支持向量机是在结构风险最小的原则上,在以统计学习为理论的基础上,很有效的避免了许多学习算法中维数灾难、局部极小等传统分类方法会出现的问题,因此受到了广泛的关注,成功的应用在了文本分类、语音识别、计算机入侵检测等多个应用领域。我国在支持向量机的发展上暂时落后于国外,但随着近几年对支持向量机的研究发展的加快,我国的研究人员做了很多研究工作并取得了大量的成果,对于推动我国支持向量机的发展发挥着巨大的作用和具有重大的意义。2 第1章绪论1.2.2支持向量机对不平衡数据集分类在不平衡数据集中,多数类与少数类这两类样本数目相差极大,而且不平衡数据集中,通常少数类样本具有比多数类样本更大的影响和价值,所以少数类才是我们所要关心的,在通常情况下,分类算法会将训练样本全部分类为多数类,对于少数类却忽略不计,从而使得对少数类的分类效果非常差,然而这并不适用于很多实际应用中,因为在好多情况下把少数类正确预测出来更有实际意义,需要提出新的分类算法来完善机器学习理论体系来解决这一实际问题,所以目前不平衡数据集的分类问题成为机器学习领域中新的研究热点,对于不平衡数据集的分类是对传统分类方法的一个重大挑战。目前传统的分类算法的最高目标是使总体分类精度最高,为了达到这个目标,算法因为提高了多数类的分类精度,这也就导致忽视了少数类的分类精度。不平衡数据集分类时使用传统的机器学习分类算法性能下降的原因有很多,例如性能评价准则选取的不合适、归纳偏置不恰当、由于某类样本数目过少产生的样本绝对稀少问题和各类样本数目相差悬殊产生的相对稀少问题以及数据碎片问题和嗓音等。针对上述问题现有的对策大致包括选择合适的性能评价准则、设置恰当的归纳偏置、分解数据集以及通过采样方法改变数据的原始分布以降低数据的不平衡性、进行单类学习、利用代价敏感学习方法来解决不平衡问题等。这些策略在一定程度上解决了不平衡数据集的分类问题。由Vapnik等人创立的支持向量机网,在实际生活中得到了广泛的应用。在假设类别均衡,样本数量大致相等的前提下具有较高的分类精度。然而当支持向量机应用于不平衡数据集时就会使分类器分类的性能大大下降‘7·蝎毡拍蚓。针对SVM应用于不平衡数据集的学习问题,对此的研究主要包括三个方面:第一,为了验证有偏性的存在Ⅲq,研究各种传统分类算法结果由类分布不同产生的影响;第二,通常采用合适的方法来重构训练样本集,以提高分类性能因御n;第三,为达到平衡的目的研究算法模型协加’271。文献[401提出给每一个训练样本通过后验概率赋予一个数量指标,根据得到的指标来建立优化算法,以此改善不平衡数据集的分类精度的后验概率支持向量机。文献[111提出一种模糊支持向量机,该支持向量机是通过赋予一个权重给每个样本的惩罚因子,以此达到使样本类别平衡的目的,确定处罚权重是使用该模糊支持向量机的关键。以上这些改进的方法都在一定程度上提高了在不平衡数据集中应用SVM的分类精度。文献【12]将代价敏感因子与支持向量机结合,为正类和负类分配不同的误分类代价。李正欣等提出SMOTEBoostSVM¨叫是利用SMOTE方法人造正类样本,3 哈尔溟T程大学硕十号:位论文将SVM作为弱分类器,用来构建分类器时使用AdaBoost方法。文献[141提出了一种自调节分类面的支持向量机,对分类面进行调整时是根据训练错分情况,以控制多数类和少数类样本的错分率来使样本达到平衡。1.3论文主要工作内容和组织结构1.3.1论文的主要研究内容本文对基于支持向量机在不平衡数据集分类展开研究,通过分析不平衡数据集中数据类别分布的特点,对支持向量机在不平衡数据集分类失效原因的研究,结合数据处理的采样技术与代价敏感学习对标准支持向量机进行改进,以使支持向量机能适用于不平衡数据集分类,本课题主要从以下几个方面展开研究:(1)对支持向量机进行研究。在了解支持向量机原理的基础上研究其分类的主要过程及方法。这里重点研究的内容是支持向量机在不平衡数据集中分类的失效的原因,在了解失效的原因后,深入研究如何对支持向量机进行改进使其能适用于不平衡数据集的分类。(2)对采样方法进行研究,包括使用采样方法的目的及采样的常用技术。在此基础上,重点研究下采样方法,提出把训练样本集分成若干子集,分别在每个子集中进行下采样的新方法,并研究把这种下采样的方法应用于使用支持向量机对不平衡数据集分类时多数类的支持向量。(3)对代价敏感学习展开研究,研究代价敏感学习的基本原理及实现方式。并由分析贝叶斯决策理论及最小化风险理论得到的启示,与代价敏感的误分类代价结合对不平衡样本集进行重构,使新样本集中的样本集成误分类代价,提出一种新的代价敏感支持向量机。1.3.2论文的组织结构第1章分析了本课题的研究的目的和意义以及到目前为止一些国内外相关的研究现状,最后介绍了本文研究的主要内容和文章的组织结构。第2章首先对数据挖掘分类技术进行研究,包括传统分类技术及相关分类算法,重点研究了支持向量机这种分类效果很好的分类算法,其次对不平衡数据集分类的相关技术及难点进行了分析,最后研究了常用的用于不平衡数据集分类时采用的相关技术。第3章首先提出一种基于聚簇的下采样方法,并把这种新的下采样方法应用于多数类的支持向量,以降低多数类与少数类的不平衡度,然后与支持向量机相结合,提出4 第1章绪论一种把基于聚簇的下采样方法和支持向量机相结合的能适用于不平衡数据集分类的新的支持向量机。并通过选取数据集进行仿真实验,以验证该分类器能有效提高不平衡数据集中对少数类的分类精度和总体分类精度。第4章本章是基于数据集分解对样本空间重构提出一种新的代价敏感支持向量机。由贝叶斯决策理论及最小化风险得到启示,结合代价敏感和元学习过程重构样本集,使样本集成误分类代价,最后利用代价敏感支持向量机对重构的数据集进行训练,得到一个新的代价敏感支持向量机。并通过选取合适的数据集对分类器进行仿真实验,以表明该方法能使不平衡数据集的误分类代价最小。最后对全文进行总结,总结文中工作,指出不足,并对今后的工作进一步展望。5 哈尔滨T程大学硕十学何论文第2章不平衡数据集分类2.1数据挖掘分类2.1.1数据挖掘现代数据库技术的飞速发展加上能够获得数据的方式多样化,使得现在人类所得到的数据数量非常巨大,但是面对这种信息膨胀的境况能够对这些数据进行处理的工具却非常有限。数据库系统仅仅是对数据库中已有的数据进行存取等简单的操作,通过这种方式从数据中获得的信息仅占大量数据的一小部分,那些隐藏在大量数据之后的能对数据进行整体特征描述以及对发展趋势的预测更加重要,通常在制定决策时这些信息具有非常重要的价值。数据挖掘是运用技术把信息和知识从大量数据库或数据仓库的数据中提取出来,被定义为找出数据中的模式的过程,这个过程必须是自动的或半自动的。数据的总量总是相当可观的,但从中发现的模式必须是有意义的,并能产生一些效益,通常是经济上的效益。在数据挖掘中,计算机以电子化的形式存储数据,并且能自动地查询数据,或至少扩增数据。经济学家、统计学家、预测家和信息工程师长久以来相信,存在于数据中的模式能够被自动地找到、识别、确认并能用于预测。该理论的最新发展使得由数据中找出模式的机遇剧增。在最近几年,随着数据量的膨胀,以及利用机器承担数据搜索工作已变得普通,数据挖掘的机会正在增长。世界正越来越丰富多彩,数据挖掘技术成为我们洞察构成数据模式的唯一希望,被充分研究过的数据是宝贵的资源,它能够引导人们去获得新的洞察力,用商业语言讲是获得竞争优势。数据挖掘是数据库、人工智能、机器学习、统计学等多个领域的理论和技术的一个有效综合,是为了发现大规模数据中的模型和数据间的关系,并把这些模型和关系用于预测需要使用各种分析工具的一个过程。数据挖掘过程简单分为问题定义、数据收集和预处理、数据挖掘算法执行、结果的解释和评估。图2.1表示的是数据挖掘过程。数据挖掘已经经历了十几年的发展,国外已经在这项技术上获得了大量的经验。在研究方面不仅把各个学科的经验集中,在商业上也涌现出了大量的软件产品,应用在社会大量领域并取得了很好的效果。数据挖掘在国内的发展近年也从单纯的研究向产品的开发应用转变,随着国内经济的飞速发展,经济制度的完善,市场对于数据挖掘的需求也在高速增长。如果不了解原6 第2辛不平衡数据集分类i一——II—IIIiiiiiiiiiiiiiiiiiiiiiii葺iiiiiiiiiii理或是缺乏核心技术,因为需要多次的实验与验证,应用效果的表现将会差强人意,这点与传统的软件是不同的。虽然数据挖掘的国产软件刚刚开始发展,但是速度是很快的,相信随着市场不断增大的需求与应用技术水平的不断提高,会出现大量优秀的国产数据挖掘软件。2.1.2分类技术图2.1数据挖掘过程分类技术是对具有类别标记的数据进行训练,从而得到一个模型能够预测新样本的类别。数学描述如下:给定一个有限训练样本集,寻找一个分类映射,,使得F能够在训练集合上拟合,即:F0;);Ci,其中,,称为分类函数或分类模型,分类器的性能可以用预测的准确程度来评价。两类问题的预测问题都可以归结为,分类和回归。分类和回归的结构基本相同,输出取值范围不同是它们的区别,分类的输出是有限的离散类别值,而回归的输出则是无限的连续值。分类算法的目标是建立具有良好泛化能力的模型,即建立能够准确预测位置样本类标号的模型。分类问题的基本框架如图2.2所示,分类有两个步骤实现:建立模型和使用模型预测。第一步,对一个类别已经确定的数据集由属性描述的数据元组来建立模型,用来描述预定的数据类集。经过分析的数据元组形成训练集用来建立模型,单个元组称为训练样本。训练集中的每一个元组都属于一个确定的类别,类别用类标号标示,也称为有指7 哈尔滨’1:程大学硕十学1:c7:论文导的学习,就是模型的学习在知道每个训练样本属于哪个类的指导下进行,因为提供了每个训练样本的类标号。第二步,把创建好的模型将类别未知的元组归入到某类或者某几个类中,评估的方法很多,通常使用创建的模型在一个测试集进行预测,并将结果和实际值进行比较,得出预测准确率,测试集是随机选取的样本集,并独立于训练集。’2.1.3传统分类算法图2.2分类基本框架(1)决策树算法从机器学习中引出的决策树方法是一种较为通用并被深入研究的分类函数逼近方法,目前已形成了多种决策树算法,如CLS,ID3,CHAID,CART,FACT等。作为分类器,决策树是一棵有向无环树。核心思想是采用自上而下递归的方式构造决策树。创建决策树的问题可以用递归形式表示。绝大多数决策树分类方法分两步构造分类器:树的生成与树的剪枝。在树的生成阶段,决策树是通过反复地拆分训练集来生成。首先,选择一个属性放置在根节点,在每一次分拆时,都是利用某种分拆准则选择一个属性。这将使样本集分裂成多个子集,一个子集对应于一个属性值。然后在每一个分支上递归地重复这个过程,仅使用真正到达这个分支的实例。如果在一个节点上的所有实例拥有相同的类别,即停止该部分树的扩展。对已经生成的决策树进行树剪枝是为了处理过度拟合的问题,选择好的剪枝方法是就是为了消除训练集中异常和噪声,这样才能避免数据过适应的问题并能使训练时间减少。因为数据的表示不当,噪声或者生成了重复的子树等多种原因,使生成的决策树规模过大,降低了决策树的可理解性和可用性,所以对决策树的简化问题就是要从中寻求一棵最优的决策树,这是必不可少的环节。8 第2章不3F,衡数据集分类iiiiiiiiiii'I'?umrmllnnljIIII'Ii(2)K近邻算法K近邻算法是有监督的学习方法,规则的描述并不需要额外的数据,数据就是它的规则。它与归纳学习最大的区别就是用已经存在的数据来解决问题,而不是间接的通过推导的规则来解决,当有一个新的样本加入时,它并不需要之前构造一个分类器,而是用基于某个距离的算法,在训练集中找到与这个新样本点最近的七个样本,则与这个新样本最近的七个样本中的大多数样本的类别既为新样本所属的类别,它可以存在噪声,就是不要求~致性,并且对样本的修改也不是全部的,不需要重新来进行组织。K近邻算法在训练之前不需要建立模型,只要之前把训练样本存储在数据库中,通过最近的K个相邻样本的类别来预测未知样本的类别,所以计算开销几乎为零。如果样本不能在训练开始前全部得到,而需要以后更新补充,K近邻算法非常适合这种情况,由于样本是随时添加的,所以该算法的时效性是很强的。不足是由于训练之前没有对训练点的信息进行压缩,每添加一个新样本点都要与样本集中的全部已知样本计算距离,每个新样本都要对所有数据进行一次遍历,所以必须考虑时间和空间的复杂性问题,这就使得工作量很大,所以当已知样本集的规模很大时,计算的开销是很高的,导致使用上的不便。(3)人工神经网络:人工神经网络能够分析大量复杂的数据,它是建立在自学能力的数学模型基础上的,模拟的是人类大脑的组织和功能,运用多种学习方法对样本集进行学习从而获得知识,将得到的知识储存在网络各个单元之间的连接权上。神经网络是一组连接的单元即4输入和输出的连接,都有一个权与各个连接相连。在学习阶段,为了能够预测输入样本的准确类标号,可以通过调整神经网络的权来实现。神经网络通常是由隐蔽层、输入层、输出层三层组成。人工神经网络可以根据所在的环境去改变它的行为。也就是说,人工神经网络可以接受用户提交的样本集合,依照系统给定的算法,不断地修正用来确定系统行为的神经元之间连接的强度,而且在网络的基本构成确定之后,这种改变是根据其接受的样本集合自然地进行的。用户不需要再根据所遇到的样本集合去对网络的学习算法做相应的调整。因此,人工神经网络具有良好的学习能力。但是人工神经网络算法是基于经验风险的最小化原理的,不仅具有结构复杂,神经网络的层数和所用的神经元个数难以确定的缺点,而且还容易陷入局部极小的问题中,发生过学习现象,而这些缺点在支持向量机分类算法中能够得到很好的解决。(4)朴素贝叶斯分类器9 哈尔滨下稃大学硕十学何论文朴素贝叶斯分类器是产生概率估计来替代类预测的,对于每个类值,都是估计某个实例属于这个类的概率。基于一定的假设,在有确定的概率分布的前提下,根据条件概率分布和已知数据来进行推理,以最优的预测来进行决策。朴素贝叶斯分类法给出了一个简单且概念清晰的方法,来表达、使用和学习概率的知识。使用它能够达到很好的预测结果。在许多数据集上,朴素贝叶斯的性能能与一些更加成熟的分类相媲美,甚至会有更出色的表现。但是朴素贝叶斯法在很多数据集上的表现差强人意,因为朴素贝叶斯处理属性的时候,认为属性之间是完全独立的,所以一些冗余的属性会破坏机器学习过程。对于数值属性,正态分布的假设是朴素贝叶斯的另一个限制,因为许多属性值并不呈正态分布。然而对于数值属性,可以采用其他分布形式,如果知道一个特定的属性可能遵循其它的分布形式,可以使用那种分布形式的标准估计过程。如果怀疑数值分布不是正态分布,以不知道真正的分布形式,可以使用“核密度估计”过程,核密度估计并不把属性值的分布假设成任何特定形式的分布,另一种可行的处理方法是将数据离散。2.1.4支持向量机统计学习理论是目前针对小样本统计估计和预测学习的最佳理论,它从理论上系统地研究了经验风险最小化原则成立地条件、有限样本下经验风险与期望风险的关系及如何利用这些理论找到新的学习原则和方法等问题,在很大程度上解决了模型选择与过学习问题、非线性和维数灾难、局部极小点问题等,因此成为研究的热点。支持向量机(SupportVectorMachine,SVM)是Vapnik根据统计学理论提出的有监督机器学习方法,在统计学习理论的VC维理论和结构风险最小化原理基础上,根据有限的样本信息在模型的复杂性和学习能力之间寻求最佳折衷,以获得最好的推广能力。它脱离传统方法中降维的定式,利用反转技术有目的增加问题空间的维数,使得分类问题变得相对容易。SVM是基于寻找一种特别的线性模型:最优超平面的算法。处理两分类问题时,把用内积函数定义的非线性变换将样本空间变换成一个高维空间,然后在所变换的高维空间上寻找一个(广义)最优分类面作为两类的分割,就是说在实例空间上存在一个超平面能对所有的训练实例进行正确分类,最优超平面是一个能使两个类之间达到最大限度分离的超平面,它对两个类都是尽可能地不靠近,以保证最小的分类错误率。如图2.3,两个类分别用空心圈和实心圈来表示,从技术上说,一系列点的凸包即最紧凑的凸多边形,它的轮廓是通过将每个点与其他所有的点连接而形成的。假设这两10 第2章不平衡数据集分类个类是线性分隔的,它们的凸包不能重叠。在所有能分隔这两个类的超平面中,最大边际超平面是其中离两个凸包距离尽可能远的那个,它垂直于两个凸包间距离最短的线段(图中虚线)。竣优超甲丽图2.3支持向量机分类不意图最简单的情况是样本空间是线性可分的。‘(1)线性可分情况设线性超平面f(x)一wx+6a0能将正负样本分开,且对正样本有f(x)一wx+6≥0,对负样本有f(x)。wx+bs1。令超平面,0)11/F1]/(x)=一12_间的距离为2△,则称距离△为分类间隔。已知线性分类方程为舭+6=0,对它归一化,使对线性可分样本集;O;,Y。),i;1,2,...,Z,y∈伯一U满足Yf【(w茗f)+6】-120,i=1,2,⋯,Z这样分类间隔A=I/IIW《,因此使分类间隔最大就等价于最小化llW0。线性可分支持向量机可归结为如下的二次规划:mm吾llwll2sJ'.Yj【(w’‘)+6卜1之0,ft1,2,⋯,Z利用拉格朗日优化方法,根据对偶理论可以把上述分类问题转化为它的对偶问题:max形(a)2荟口z一圭磊。yry,口r口,(x,,x,)珐∑y忍-0口j苫0,i=1,2,..√这是一个有不等式约束的二次规划问题,因此存在唯一解。求解得到的最优分类函数为: 哈尔滨T程大学硕十学位论文,(x)=sgn(wx+6)=sgll{罗afyf“·z)+6}舒(2)非线性不可分情况当出现非线性且不可分的情况时,针对这种情况,SVM算法使用一个非线性变换将其映射到一个线性可分的高维空间中,最优的线性分类超平面就在这个变换空间中求得。因为涉及训练样本的内积运算,最优分类超平面的点积就可以通过礅),)核函数来代替,这样做的好处就是避免了在高维特征空间内进行复杂运算,从而得到非线性不可分情况下最优分类函数的表达式。核函数代替对偶问题中的内积形式,从而得到非线性的分类支持向量机:一吣)。酗一言篇yiyja—ajk(x,,xj)sj。善ytaros口tsc,flL2,⋯:2相应的非线性支持向量机的判别函数为:f(x)一sgn{(w·x)+b}---sgIl{罗qYf七瓴·z)+6】.—■一2.2不平衡数据集分类难点分类是机器学习领域中重要的研究内容之一,普通的数据集使用现在一些已经成熟的分类算法进行分类时都能取得比较好的分类效果,但是当把这些分类算法应用于不平衡数据集中时其分类性能大大下降,因为不平衡数据集的数据特点与普通数据集非常不同,传统的分类算法并没有考虑到不平衡数据集中数据的特点。不平衡数据集分类的难点主要有以下几个方面:(1)少数类样本比例小少数类样本与多数类样本相比在数量上的稀少是数据集不平衡的根本原因。少数类样本数量稀少可分为两种情况,第一种情况是少数类样本数量的绝对稀少,是指少数类样本的实际数量少,处于这种情况时,由于少数类能提供的分类信息少,想要发现少数类内在的规律非常困难,就这造成了少数类样本很难被识别出来;第二种情况是少数类的相对稀少,是指少数类样本的实际数量并不少,而是与其他类别的样本相比,在数量上相对较少。当少数类样本处于相对稀少的情况时,表面看来少数类样本的数量并不少,12 第2章不平衡数据集分类但是由于多数类样本把少数类样本包围,使得多数类与少数类的分类边界变得不清晰。综上所述由于少数类样本占整个数据集的比例很小,导致少数类所提供的分类信息并不充分,分类器想在有限的样本中找到规律很难,这也就造成了对少数类的识别率很低的情况。(2)性能评价准则不恰当性能评价准则是用来指导数据挖掘算法的设计和评估算法性能的,所以在数据挖掘中的作用是勿庸置疑的。分类算法性能评价的最基本的指标是分类准确率。准确率只对平衡数据集是一个很好的评价指标,但是用它来评价不平衡数据集的分类结果是不恰当的,原因是由于少数类样本的数量很少,所以少数类对总体的分类精度的影响并不大,把全部样本都视为多数类,仍能得到很高的分类正确率。因为少数类被正确识别很重要,但是少数类却全部被错分,这时的分类模型就是毫无意义和价值的。举个例子来说,在现实应用中,如果一个数据集中的少数类样本表示一种罕见的疾病,并且这个少数类正是人们所关心的类别,那么使用上面的分类器并不能把人们所关注的少数类识别出来,那么这样的分类器就是毫无意义和价值的。综上可知,面对不平衡数据集的分类问题时,能够把少数类正确的识别出来是特别重要的,所以有时需要在一定程度上牺牲多数类的分类准确率来提高少数的分类准确率,是想要获得较好的总体分类精度,选择好恰当的评价指标是非常关键的。(3)噪声与少数类样本混淆噪声样本经常出现在数据集中,会影响数据集的分类性能。而且在不平衡数据集中,噪声对少数类的影响要比对多数类更严重,一种情况就是两类样本的分布出现重叠和交叉,分类边界模糊,这种情况对于少数类样本的分类来说困难更大。在对不平衡数据集进行识别并去除噪声的处理时,过滤器很难准确的识别出噪声数据和少数类样本,将少数类样本判为噪声数据而被删除,这样会影响分类的精度,所以说处理噪声是不平衡数据集分类中的一项重要任务。(4)阈值设置不合理很多分类算法,如神经网络、决策树等,为使分类能够实现,样本的类别确定就需要一个适当的阈值。往往一些算法阈值的设定是以牺牲少数类样本的正确率为代价的,这种情况不利于对少数类样本的分类,这都是为了获得较好的分类准确率或者避免过拟合,从而将少数类样本误判为多数类。所以合理的设置阈值对算法的性能有着很大的影响。13 哈尔滨T程大学硕十学何论文2.3不平衡数据集分类相关技术所谓不平衡数据集p卯,是指一个数据集中某类的样本数量比其他类的样本数量多的多,其中样本多的一类一般称为多数类,样本少的类称为少数类,而且往往少数类包含的信息是最重要的,但是以前的分类方法更关注于多数类较高的误别率,但是少数类的识别率却非常低。所以对不平衡数据集的分类研究得到越来越广泛的关注。因此需要研究新的分类方法和判别准则以适合于不平衡数据集的分类问题。目前对不平衡数据集分类的研究主要关注以下两个层面:一是数据采样方法即数据层面上,二是对传统分类算法的改进是即算法层面上,最后是对评价准则的研究。2.3.1数据层面为了使不平衡数据集中样本的类别平衡来解决原来类别不平衡的问题,从数据层面来看通常使用采样方法,采样方法是在并不改变现有的算法的基础上,为了消除数据集中两类数据不平衡的现象通过减少多数类样本或者增加少数类样本来实现。采样技术主要的作用是在原始训练数据集中进行一些数据预处理,以形成新的训练集来使用学习算法进行训练。在原始数据集中缓解数据集类别不平衡的最重要手段之一就是进行重采样,其主要思想是通过增加或者减少数据样本使得训练集变得更加均衡,以此降低在分类器构建时由于数据分布不平衡带来的不良影响。从采样所采用的策略来看,主要有两种:一种是简单随机采样;另一种是启发式采样。简单随机采样并不利用数据的特定的分类信息,而仅仅是随机地增加(主要通过复制)或删除样本,启发式抽样则不同,它实施相应的采样时是要充分利用数据信息的。重采样技术主要包括上采样和下采样两种。上采样试图增加少数类的训练样本,而下采样就是试图减少多数类的训练样本。下面分别详细介绍两种采样方法。(1)上采样上采样方法是处理不平衡数据的常用方法,文献[16.21]提出了增加样本的一些方法来重新增加少数类样本数量,目的是为了弥补少数类与多数类样本数目的差距,以起到平衡的作用。该方法增加了原有信息,能有效的解决类别失衡的现象,但有时无法保证与原来的样本分布是一样的,很可能发生过学习的情况。简单的复制少数类样本是最简单的办法,但是因为引入了额外的训练数据,会增加构建分类器的时间,增大了开销,而且并没有为少数类增加任何新的有价值的信息,可能会导致过学习。所以如何增加样本数量就很值得研究,如果仅仅是简单的硬塞进一些人为添加的样本到数据集中去,则14 第2章不平衡数据集分类训练集数据原有的随机性分布特点就有可能被破坏,进而待训练样本的分布规律也被破坏,这样即使能得到分类性能较好的分类器但也不能很好的用于测试样本的分类识别中去。为此,为解决上述问题,对上采样方法进行改进,通常采用加入随机噪声或合成新的样本的办法,在一定程度上取得了一定的成效,上采样技术中最有代表性的是Chawla等人在2002年提出来的SMOTEtl81技术。SMOTE算法主要思想是为了生成新的少数类样本,在相距较近的小类样本之间进行线性插值,目的是通过合成新的少数类样本来减轻类别的不平衡问题,能够使扩展的少数类的决策边界进一步向多数类方向移动。Han等人对SMOTE提出了改良的方法,即“Borderline.SMOTE”技术吲,这种技术是进行插值时只选择在合适的区域内插值,这样做可以保证新增加的样本能提供有价值的分类信息,文献[23.24]也在SMOTE基础上进行了改进。另外,文献【25】提出了基于初分类的上采样算法,这个算法是有一个多数类样本,如果它在数据集中的k个近邻都属于多数类,则由七近邻的思想则该样本被认为离分类边界较远,则对这个样本分类是相对保险的,然后在多数类中把满足以上k近邻思想的所有多数类选择出来放入到一个集合中,再将少数类与选取出来的多数类样本集合合并为一个训练集,在新的训练集中对多数类样本进行最近邻分类,将选取出来的多数类样本和少数类样本合并为第二个新的训练集。一,(2)下采样通过某种方法来减少多数类样本以提高少数类的分类精度是采用下采样方法的目的,文献[22][24][2511261研究了“减样法’’,即通过为了使数据集里样本类平衡而通过一些方法来减少多数类样本的数量。虽然这些方法能去掉一些相邻边界点,但是也必然会失去一些具有分类信息的有价值的样本点,随机性也无法得到保证。一种最基本的方法就是随机去掉多数类的样本以平衡数据集中的类分布,但是这种方法虽然简单但是会导致一些能提供重要信息的多数类样本丢失,已有一些信息不能够被充分利用阳,因此一些对下采样方法进行改进的算法相继被提出。Kubat和Matwin提出的单边选择处理法嘲(one.sidedselection)是一种具有代表性的下采样方法,尽可能地不删除有用的样本,通过减少分类超平面附近的样本、噪声数据和离分类超平面较远的冗余样本等办法来尽量减少数据集中多数类样本,以实现多数类和少数类样本数目相对的平衡。也可以把对少数类的上采样与对多数类的下采样两者结合起来㈣。文献[301提出了一种基于遗传的方式来对多数类进行抽样的算法,通过这种方法能找出噪音样本并将它们从数据集中删除。与上采样相比,下采样似乎有更多的策略可行。下采样方法是通过减少多数类样本】5 哈尔滨T程大学硕十学何论文的数量来缓解数据集的不平衡度。一般来说,上采样方法的效果不如下采样方法的效果。常用的技术基本利用欧氏距离以及K近邻规则启发式地识别可以合理删除的样本。基于距离的下采样方法使用距离模型,即多数类样本和少数类样本最近距离,最远距离,平均最近距离,平均最远距离四个指标去重新从多数类样本中选取样本。最近距离方法是对于数据集中的每一个少数类样本,首先计算与所有多数类样本和所有少数类样本的距离,然后选择出k个与其距离最近的多数类样本。如果在数据集中有n个少数类样本,则最近距离方法最终会选择kxn个多数类样本。然而,一些被选择出来的多数类样本有可能是复制的。和最近距离方法相似,使用最远距离方法选择出多数类样本,是计算与每一个少数类样本的最远距离。对于每一个在数据集中的多数类样本,平均最近距离指标计算一个多数类样本与所有少数类的平均距离。这个方法是选取最小平均距离的多数类样本。平均最远距离方法类似于平均最近距离方法,该方法是选取与所有少数类样本平均距离最远的多数类样本。以上基于距离的下采样方法,在大规模数据集中选择多数类样本会花费大量的时间,因此它们在现实的应用中效率并不高。重采样技术,从表面看是将数据集从数量上进行平衡,而从学习角度看,可将其视为一种正则化手段,是为了避免过学习,尤其是对多数类来说。还有一个问题是,为使样本数量平衡采用简单的重采样不一定是最好的办法,为确定最优的样本容量,Chawla等利用Wrapper方法m1,Garciat等把它看作为一个组合优化问题,使用优化算法求解阎。从理论上来说,在处理不平衡数据集分类时,两种采样方法都存在一些优点和缺点,没有哪一种方法是有绝对优势的弦蚓。为了能达到更好的效果可以将两种采样技术混合起来使用。2.3.2算法层面现在从算法层面对不平衡数据集的研究主要集中在代价敏感学习、集成学习、单类学习等以下几个方面。(1)代价敏感学习关注正确率或错误率往往是标准的机器学习算法最关注的,认为只要算法预测的正确率提高了就意味着分类性能也提高了,这其中是在传统的机器学习分类研究中隐含着一个假设,即所有的分类错误带来的错误代价是相同的。随着实现应用研究的深入,发现有一些分类问题很难用传统的分类方法来加以解决,如信用欺诈识别,癌症诊断等等,在这些问题不同类别样本被错分所产生的错分代价是相差非常大的,如信用的欺诈者、16 第2章不平衡数据集分类癌症患者数量很少,在所有数据中所占的比例很小,但是如果把这些少数类的样本错分,所带来的错分代价是相当大的。由于少数类所占的比例很小,所以基于传统分类算法的应用于这些问题时通常会得到较高的正确率,但这是相对于多数类样本来说的,少数类样本并没有被正确的识别出来。为摆脱这种拥有大量数据但是所需要的分类信息匮乏的境地,代价敏感学习得到越来越多的关注和应用。代价敏感学习是关注类错分代价的的机器学习算法。与非代价敏感学习的最大差别是对类错分代价处理的方式和目的不同。代价敏感学习考虑分类代价,以取得最小的误分类代价为目的。而非代价敏感学习并不考虑类错分代价,以取得最大的分类精度为最终目的。从统计学的角度来看,代价敏感学习要能训练出逼近样本代价分布的分类器,而传统的分类方法是训练出逼近样本的类分布的分类器,并不是代价分布。代价敏感学习就是要设计出能逼近代价分布的新的算法,也可以在传统分类器算法的基础上进行改造,使结果最终也逼近代价分布。,,在代价敏感学习中对不同类的分类错误赋予的代价是不同的,采取将较高的代价赋予少数类样本,把较小的代价赋予多数类样本的策略,是为了达到使样本之间的数目平衡的目的pq。文献【37】改进了Veropoulos的代价敏感支持向量机,但基本思想都是为了使SVM的超平面获得代价敏感把代价与松弛变量相关联。为了能使用SVM处理多类问题Lee等人设计了把采样偏置考虑进去的代价敏感的支持向量机㈣。文献[391提出了对正负两类的类内离散度矩阵分别进行加权的加权Fisher线性判别模型(WFLD)。上面提到的代价敏感学习方法的改进都是以全局模型为前提来改进的。文献【40】就提出把代价敏感应用在局部的算法,使用该算法预测一个新样本时,选择恰当的距离度量方法是第一步,得到新样本的k个近邻,接着使用加权的方式对选择出的这k个近邻进行训练,这样就得一个分类器,可以用这个分类器来进行预测。代价敏感学习方法存在一些不足,各类的错误代价信息不好确定,通常需要多次实验或是根据专家或经验来确定。当前对代价敏感学习的研究主要从两个方面展开:1)在不改变以前算法的基础上,根据样本不同的错分代价来重构数据集。使用这种思想对数据集进行重构是使用每一个样本的错分代价为数据集中的每一个样本加权,根据权重重构原始数据集,得到一个新的数据集。这里重构数据集主要是采用采样方法,有上采样和下采样两种方式。上采样方法为反映代价信息来改变数据集中的类别分布,通过复制代价高的样本,使类别的分布与代价成正比。下采样方法与上采样方法同理,17 哈尔滨T程大学硕士学何论文也是要使样本数量与代价成正比,不同的是下采样是减少代价小的类别的样本的数目。2)将代价因子引入到传统的分类算法中去,得到基于代价敏感的分类算法。在代价敏感学习中对多数类样本给予较小的错分代价,对少数类样本给予较高的错分代价,这样做的目的是为了平衡两类样本间数目的差异。在代价敏感学习方面,假设是二分类问题,是把给少数类样本被错分为多数类赋予比把多数类样本被错分为少数类更大的代价来实现的。因为能够正确识别出少数类样本所获得的价值会大大超过能够正确识别多数类样本所获得的价值,所以分别为多数类被误分为少数类和少数类被误分为多数类样本的这两种分类错误指定不同的误分类代价,这样就可以使分类器向有利于少数类样本正确分类的方向偏移p11。(2)集成学习方法对不平衡数据集分类使用AdaBoo“421可取得较好的分类效果,但是也有实验结果表明在提高少数类样本的识别率方面AdaBoost的能力很有限㈣,原因是提高整体分类精度是AdaBoost的目标,多数类样本对精度的贡献大是因为该类样本的数目多,同理由于少数类样本数目很少所以对精度的贡献也就小,所以这种分类决策是不利于少数类的分类的。为此,相继提出了一些改进方法,如以为了使分类错误的少数类样本比多数类样本有更高的权值而改变权值更新规则为主要策略的AdaCostM、RareBoostM。此外还有将集成方法与采样方法相结合的改进方法,文献【46】【47】是采用的方法是为了使分类器能够更好地提高少数类的分类性能,利用过抽样的优点是既能增加少数类样本的数量,又能利用能提高不平衡数据集的整体分类性能的集成方法,将过抽样与集成方法进行融合的方法,将过抽样和集成方法结合的成功例子有如文献[481提出的C.SMOTE算法。(3)单类分类器方法想要获取两类或是多类的样本在实际应用中是比较困难的,就是获取得到了也是以付出很高的成本为代价的,所以一般只能获取单类样本。所以在这种情形下,对单类样本进行训练成为解决的办法。单分类器是用来只对训练集中的一种类别数据进行分类训练,这是一种能有效解决不平衡数据集分类问题的方法阳1。如文献【50】就是用SVM对少数类样本进行训练,而且通过实验表明这种方法还是取得了一定的效果的。单类分类器因为只用数据集中的某类样本进行训练,这必然导致训练的数据量较少,这也就能减少构建分类器需要的时间,而且节约了开销,单类分类器在很多应用方面都有着很好的前景。2.3.3评价准则在一般情况下,人们评价机器学习的精确度是使用如下公式:】8 第2章不平衡数据集分类即+TNaccuracy2—=—_以+n式中:开——验证时正类的正确样本个数TN——验证时负类的正确样本个数n+——正类样本数量n‘——负类样本数量但在对待不平衡数据集的分类问题时,这种评价方法是不合适的。举个简单的例子,若数据集仅有3%是少数,那么分类器只需把所有测试样本分类多数类,这样就可以获得9r7%这样一个很高的准确率,但这样的分类器是没有实际意义的。因此对于不平衡数据集分类就要采用一种新的评价准则,应考虑使用更加合适的评价方法。(1)不平衡数据集的分类精度评价准则针对不平衡数据,需提出更为合理的评价标准,常用的标准有:召回率recall、准确率precision、F—value值、g—mean值。少数类的recaH、precision、F—value、g—mean值计算方法分别如下:.recalltTP{qP+FN)precision=TP|QP+FP’F-value:f一(1+/82),recall*precision1l∥2率recall+precisionfJTPJTN,g—me口忍。、fTP+FN。宰、『TN+FP’不平衡数据集学习常用的评价准则g—mean,是一种几何平均方法,它是少数类的精确度印/(卯+FN)与多数类的精确度TN/(TN+即)的乘积的平方根,二者的值都大时,g—mean才会大,且尽量保持两者平衡。如果仅仅负类的精确率大,而正类的精确率小,那么g值仍会比较小,反之亦然,正是几何平均这种特性才被许多研究人员所采用,因此g—mean能合理地评价不平衡数据集的总体分类性能。还有一个不平衡数据集学习中少数类的F—value也是有效的评价准则,它是recall和precision的组合,其中卢的是取值是可以调整的,通常取值为1,但是只有当少数类的recall和precision的值都很大时,它的F—value才会大,因此它能正确地反映少数类的分类性能。(2)代价敏感分类评价准则除了分类精度和二分类评价指标之外,代价敏感学习有其代价相关的评价指标,常19 哈尔滨T稃大学硕十学何论文用的代价敏感评价指标有:分类时产生的总的错误代价(TotalCosts),平均误分类代价(AverageCosts)。根据二分类的混淆矩阵和代价矩阵,TotalCosts和AverageCosts分别为:TotalCosts=FPxcost(N,P)+FN×cost(p,Ⅳ)Aw阳geCos跆。—FPxcost(N,P)+—FN×cost(P,N)2.4本章小结本章首先对数据挖掘分类方法进行了介绍,并对传统分类的相关算法进行了简要分析和介绍,重点介绍了支持向量机这种分类算法。在对传统分类方法有了了解的基础上,对不平衡数据集的分类进行了介绍,主要介绍了不平衡数据集的相关概念,并分析了不平衡数据集分类中存在的难点问题。然后介绍了现在对于不平衡数据集分类都采用了哪些相关技术,都进行了哪些改进,最后介绍了不平衡数据集分类效果的评价准则。20 第3章基于下采样的支持向晕机第3章基于下采样的支持向量机前面内容介绍过类别不平衡是指数据集中某类数据的数量远远大于其他类的数据数量,将数量多的一类称为多数类,数量少的一类称为少数类,在这里假设少数类为正类,多数类为负类。在目前对不平衡数据集中数据的处理的众多方法中上采样和下采样技术成为解决不平衡数据集分类问题中重构数据集的流行方式。本章提出一种基于聚簇的下采样方法,并通过分析得出支持向量机分类是Eh支持向量起决定作用,在不平衡数据集中多数类的支持向量数量远远多于少数类的支持向量,使用该下采样方法对支持向量机的多数类的支持向量进行下采样,然后再利用不同类惩罚支持向量机训练新数据集,以提高分类的精度。3.1不同类惩罚支持向量机支持向量机(SVM)与其他分类算法相比,对于普通数据集有较好的分类准确率。然而,SVM对于不平衡数据集分类效果却很差,会导致对正类分类的准确率降低,它更倾向于对负类的分类,导致大量的数据被错分。导致SVM对不平衡数据集失效原因之一是由于软间隔SVM自身存在的缺陷。软间隔SVM的数学形式:s伊{,@)。善yt口rK@,墨)+6}(3-1’式(3.1)是软间隔SVM的判别函数式,口;为拉格朗日系数。软间隔SVM中最优分类面问题可根据拉格朗日系数法转化为下式的最小化拉格朗日鞍点问题:。t扣M112+C套袅一塞吼[),;(w。t)+b-1+£]一善l‘参(3-2)式(3—2)中,口;芑0,‘20,C为惩罚常数。为满足KKT条件,口;的值需满足下面的条件:∑ai),i-oandO
此文档下载收益归作者所有