CN102831432A - 一种适用于支持向量机训练的冗余数据约减方法 - Google Patents

一种适用于支持向量机训练的冗余数据约减方法 Download PDF

Info

Publication number
CN102831432A
CN102831432A CN2012101369851A CN201210136985A CN102831432A CN 102831432 A CN102831432 A CN 102831432A CN 2012101369851 A CN2012101369851 A CN 2012101369851A CN 201210136985 A CN201210136985 A CN 201210136985A CN 102831432 A CN102831432 A CN 102831432A
Authority
CN
China
Prior art keywords
subclass
data
pure
data object
distance
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
Application number
CN2012101369851A
Other languages
English (en)
Inventor
沈项军
吴昊翔
蒋中秋
林琳
詹永照
杨鹤标
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jiangsu University
Original Assignee
Jiangsu University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Jiangsu University filed Critical Jiangsu University
Priority to CN2012101369851A priority Critical patent/CN102831432A/zh
Publication of CN102831432A publication Critical patent/CN102831432A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开一种适用于支持向量机训练的冗余数据约减方法,通过类最大最小距离方法对纯子类集合筛选,找到离支持向量机的分类面较远的纯子类并予以删除,得到集合上约减纯类集合后的纯子类子集合,对保留下来的可能存在支持向量的多个聚类,按照费歇尔判别率准则进一步将同一聚类的数据分成内层冗余数据和外层边界数据,只保留外层边界数据进行支持向量机的训练,从而有效消除同一类数据上的内部冗余数据,能在保持支持向量机分类精度的同时,大大减少海量数据上支持向量机训练所需时间,显著提升支持向量机训练的时间和空间效率,使之能够应对海量数据的分类训练问题。

Description

一种适用于支持向量机训练的冗余数据约减方法
技术领域
本发明涉及人工智能领域,特别是数据挖掘和模式识别技术,是一种基于聚类和费歇尔判别率的冗余数据约减方法,可用于支持向量机的快速训练。
背景技术
分类是人类智能活动的一个重要任务,其目标是将未分类的数据按照一定的规则归类到已知类别中。因此数据分类一直是数据挖掘和模式识别等人工智能技术的重要应用方向,被广泛应用在诸如手写字体识别、人脸识别以及垃圾邮件鉴别等多个领域。目前已出现多种智能分类技术,如判决树(decision tree)方法,神经网络方法(neural network)以及支持向量机(support vector machines)方法等。支持向量机方法由于其具有坚实的统计学习理论基础,成为近年来应用最广泛、分类效果最好的分类器。然而传统的支持向量机适合小样本情况下的训练及分类,这是因为,在支持向量机的样本训练方面,传统上主要利用标准二次型优化技术解决对偶问题的方法来解决,如Platt提出了“序列最小化”(SequentialMinimal Optimization,SMO)算法,这种算法将工作样本集的规模减到最小——两个样本。吴翔等人用块算法的思想对SMO算法进行了改进,称为分块SMO算法(CSMO)。该算法利用分块思想通过某种迭代方式逐步排除非支持向量。这些优化算法的基本思想是把大规模的二次规划问题转化为小规模的二次规划问题,在不太影响计算精度的情况下尽可能提高速度。
然而随着大型数据库,计算机技术及网络技术的发展,出现了海量数据的分类需求,如邮件服务器每天需要处理上百万垃圾邮件的分类,上述算法在应用到海量数据的分类上就显得异常缓慢,往往需要几十、几百小时甚至更长时间才能完成训练任务。在海量数据的支持向量机的分类训练上,出现了各种利用无监督聚类以消除非支持向量数据,即消除冗余数据的方法。这一类方法的基本思想是把数据用各种方法进行分类,然后删去对支持向量机训练分类无影响或影响较小的冗余数据,其缺陷是要牺牲一定分类精度的情况下才能大幅度提升分类的速度,如Cervantes等人提出的使用模糊聚类(Fuzzy Clustering)方法对聚类后的结果进行分析,只保留那些同时含有多类数据的聚类(即在很大概率上有支持向量的聚类)进行支持向量机的训练;Yu等人提出了层次式聚类(Hierarchical Clustering)方法,通过快速计算出粗略的分类面,然后对数据进行多次聚类,每次聚类都保留靠近粗略分类面的那一部分数据,删除远离粗略分类面的冗余数据,最后得到一个较小的样本集。
发明内容
本发明的目的是为克服上述现有技术的缺陷而提供一种适用于支持向量机训练的冗余数据约减方法,利用类最小最大化方法及费歇尔判别率准则,对大规模海量数据上冗余训练数据进行约减,在不降低支持向量机分类精度的条件下,显著提升训练速度。
为实现上述目的,本发明的技术方案是采用如下步骤:A、先将训练数据集合定义为                                                
Figure 2012101369851100002DEST_PATH_IMAGE002
是n维实向量空间
Figure 630500DEST_PATH_IMAGE003
上的数据对象,
Figure DEST_PATH_IMAGE004
是数据对象
Figure 344991DEST_PATH_IMAGE002
的实际类别标签,共有N个数据对象,数据对象分别属于M个实际类别;然后利用K均值聚类方法将训练数据聚类成K个子类
Figure 677883DEST_PATH_IMAGE005
,将K个子类分为所包含的数据对象为单一类别的纯子类集合
Figure DEST_PATH_IMAGE006
和子类所含数据对象为两个以上多个类别的混合子类
Figure 429939DEST_PATH_IMAGE007
;最后将混合子类MC中每一个混合子类中的数据对象按照其所属实际类别再次划分为多个纯子类,最终分成L个纯子类
Figure DEST_PATH_IMAGE008
,得到R+L个纯子类集合
Figure 252401DEST_PATH_IMAGE009
。 
B、通过类最大最小距离方法对纯子类集合UC筛选,找到离支持向量机的分类面较远的纯子类并予以删除,得到集合S上约减纯类集合后的纯子类子集合RS1,具体按以下步骤实现:
1)计算集合S上每一个纯子类的聚类中心,对R+L个聚类中心及其对应的实际类别标签组成的集合使用支持向量机分类,得到M-1个近似分类面;
2)从实际类别标签
Figure DEST_PATH_IMAGE010
=1开始,选择纯子类UMC中属于同一实际类别标签的若干子集合
Figure 457118DEST_PATH_IMAGE011
,计算子集合
Figure 656018DEST_PATH_IMAGE011
的某一子集的每一个数据对象到M-1个近似分类面的最近距离,以
Figure 262580DEST_PATH_IMAGE011
中所有子集合的距离的极大值作为该实际类别标签LY的类最大距离;
3)选取集合UC上所有实际类别标签均是LY的子集合
Figure DEST_PATH_IMAGE012
,Hcj是纯子类个数; 
4)从cj=1开始,选取集合
Figure 193627DEST_PATH_IMAGE013
中的一个纯子类
Figure DEST_PATH_IMAGE014
,计算
Figure 947956DEST_PATH_IMAGE014
中每一个数据对象到M-1个近似分类面的最近距离作为该数据对象到M-1个近似分类面的距离,选取所有数据对象到近似分类面的极小值作为纯子类
Figure 622651DEST_PATH_IMAGE014
到近似分类面的距离; 
5)将cj递增1,并重复步骤4)直到cj=
Figure 146036DEST_PATH_IMAGE015
+1;
6)将LY递增1,选择下一个实际类别标签,转到步骤2)继续执行,直到LY=M+1; 
7)返回剩余子类及其所含数据集合,集合UC上最终保留H个纯子类,剩余子类共有H+L个纯子类。
 
C、使用费歇尔判别法对纯子类集合RS1去除子类内层冗余数据,得到最终数据集合RS2,具体按以下步骤实现:
1)从di=1子类开始,选取集合RS1中的一个子类为
Figure DEST_PATH_IMAGE016
,计算中每一个数据对象到该类的聚类中心Gdi的距离并排序得到对应的数据对象集合为
Figure 755189DEST_PATH_IMAGE017
2)统计小于该数据对象到聚类中心距离内的数据对象个数,得到该数据对象到聚类中心距离上的数据密度集合为
Figure DEST_PATH_IMAGE018
3)设置参数d=1,LD=Im,Bmin=1,Bmax=mdi,Im=m+1; 
4)若d<LD,执行下一步骤5);否则跳转到步骤9);
5)计算当前步长
Figure 965066DEST_PATH_IMAGE019
; 
6)在以
Figure DEST_PATH_IMAGE020
Figure 483903DEST_PATH_IMAGE021
距离范围内的数据密度子集中,以SL为步长计算对应距离上的数据密度集合Den的费歇尔判别率值
Figure DEST_PATH_IMAGE022
Figure 819070DEST_PATH_IMAGE023
;在第k个步长上,将数据密度集合Den在
Figure 485674DEST_PATH_IMAGE020
Figure 564489DEST_PATH_IMAGE021
距离上分成
Figure DEST_PATH_IMAGE024
Figure 149DEST_PATH_IMAGE025
两个子集;得到第gk个步长上,将数据密度集合Den分成V和T两个子集后得费歇尔判别率的值 ;
Figure 709479DEST_PATH_IMAGE027
是子集合V上数据密度的均值,是子集合V上数据密度的均方差;
Figure 660118DEST_PATH_IMAGE029
是集合T上数据密度的均值,
Figure DEST_PATH_IMAGE030
是集合T上数据密度的均方差; 
7) 选取值F上最大的两个费歇尔判别率值,得到其所对应的排序距离,将这两个排序距离的位置分别赋给Bmin和Bmax
8)将d递增1,并跳转到步骤4);
9)以当前排序距离
Figure 480306DEST_PATH_IMAGE021
为阈值,删除数据对象中所有到该类聚类中心距离小于
Figure 713021DEST_PATH_IMAGE021
的数据对象;
10)将di递增1,并跳转到步骤1),处理集合RS1中的下一个子类,直到di=H+L+1。 
11)将剩余的数据组成集合
Figure 150956DEST_PATH_IMAGE031
 本发明的有益效果是:
1、本发明由于考虑到用于分类的支持向量都来自于分类面附近,即支持向量数据来自该类数据的外部边缘而不在其内部,对保留下来的可能存在支持向量的多个聚类,按照费歇尔判别率(Fisher Discriminant Ratio)准则进一步将同一聚类的数据分成内层冗余数据和外层边界数据,只保留外层边界数据进行支持向量机的训练。将费歇尔判别率准则首次应用于同一聚类数据中,以确定同一类数据上内部稠密数据与外部稀疏数据的分界,从而有效消除同一类数据上的内部冗余数据。由于有效消除了内部冗余数据,保留了外部存在支持向量的外部数据,能在保持支持向量机分类精度的同时,大大减少海量数据上支持向量机训练所需时间,显著提升SVM训练的时间和空间效率,使之能够应对海量数据的分类训练问题。
以下结合附图和具体实施方式对本发明作进一步详细说明。
附图说明
图1是本发明实施例中的数据示意图;
图2是本发明实施例中的约减冗余子类后所得数据示意图
图3是本发明实施例中的约减子类内部冗余数据并训练得到最终分类面的数据示意图。
具体实施方式
   本发明的具体实施步骤如下:
步骤一:将训练数据集合定义为
Figure 571573DEST_PATH_IMAGE001
Figure 978896DEST_PATH_IMAGE002
是n维实向量空间
Figure 92346DEST_PATH_IMAGE003
上的数据对象,
Figure 955259DEST_PATH_IMAGE004
是数据对象
Figure 179567DEST_PATH_IMAGE002
的实际类别标签。训练数据集合D中共有N个数据对象,这些数据对象分别属于M个实际类别。利用K均值聚类(K-Means)方法将训练数据聚类成K个子类。假设N个数据对象采用K均值聚类方法后将数据分成K个子类,所得子类为
Figure 241064DEST_PATH_IMAGE005
。对得到的K个子类,按照子类所含数据对象所对应的实际类别的分布情况,将子类分为:子类中所包含的数据对象为单一类别的纯子类
Figure 463098DEST_PATH_IMAGE006
和子类所含数据对象为两个以上多个类别的混合子类
Figure 875625DEST_PATH_IMAGE007
。即K个子类C为MC与UC的集合之和,即
Figure DEST_PATH_IMAGE032
。将MC中每一个混合子类中的数据对象按照其所属实际类别再次划分为多个纯子类,如第a个混合子类mca,假设其数据对象包含l个实际类别,又再分成l个纯子类。假设K-R个混合子类,最终又分成L个纯子类
Figure 841307DEST_PATH_IMAGE008
。此时得到的R+L个纯子类集合即
Figure 22890DEST_PATH_IMAGE009
步骤二:由于UMC集合比较靠近分类面,这些纯子类存在支持向量的可能较大。而直接由K均值(K-Means)聚类得到的纯子类集合UC通常距离分类面较远,其中存在支持向量的可能性较小。本发明通过类最大最小距离方法对纯子类集合UC进行筛选,以找到离支持向量机的分类面较远的那些纯子类,这些纯子类被认为不包含支持向量,对这些子类予以删除以减少集合所包含纯子类及其所包含的训练数据。应用类最大最小化距离方法得到集合S上约减纯类集合后的子集RS1,应用类最大最小距离方法得到集合S上约减纯类集合后的子集RS1的过程如下:
a1. 首先计算集合S上每一个纯子类的聚类中心,如设S集合上第e个纯子类的数据集合为
Figure 212562DEST_PATH_IMAGE033
, 
Figure DEST_PATH_IMAGE034
为训练数据集合D经聚类后在S集合的第e个子集合上的数据,设该类数据有m个数据对象且每个数据对象的实际类别标签均为Y。其聚类中心
Figure 50068DEST_PATH_IMAGE035
;应用所得S集合上R+L个聚类中心及其对应的实际类别标签组成以下集合GY:
Figure 553862DEST_PATH_IMAGE037
,对集合GY使用支持向量机分类,如使用LIBSVM工具得到近似分类面为 
Figure DEST_PATH_IMAGE038
。其中,是近似分类面上的支持向量;w是根据训练得到近似分类面上的支持向量的权重,因此w是一个n维向量;b是偏移量。当
Figure DEST_PATH_IMAGE040
>0,表明数据对象属于某一类,
Figure 153788DEST_PATH_IMAGE040
<0时属于另一类;
Figure 478590DEST_PATH_IMAGE040
=0表明无法判断数据对象属于任何一类。由于支持向量机被设计为两类问题的分类,当数据集有M个类别时,采用一对一(one-against-one)进行两两分类训练,共得到M(M-1)/2个近似分类面。即对任一类数据,其近似分类面有M-1个。
a2. 从实际类别标签
Figure 848391DEST_PATH_IMAGE010
=1开始,选择UMC中属于同一实际类别标签的若干子集合,如
Figure 738987DEST_PATH_IMAGE041
表示该子集合所有的数据对象的实际类别标签均为LY。计算子集合的某一子集如
Figure DEST_PATH_IMAGE042
的每一个数据对象到M-1个近似分类面的最近距离。假设子集合
Figure 408478DEST_PATH_IMAGE042
中的第Z个数据对象为
Figure 17314DEST_PATH_IMAGE043
,其到近似分类面的最近距离为
Figure DEST_PATH_IMAGE044
。其中,
Figure 128489DEST_PATH_IMAGE045
是数据对象
Figure 139171DEST_PATH_IMAGE043
到第io个近似分类面的距离,是权重w的距离。
Figure 44810DEST_PATH_IMAGE047
是距离度量,本发明采用欧式距离,即
Figure DEST_PATH_IMAGE048
Figure 140942DEST_PATH_IMAGE049
是n维向量w的第mn个分量。取
Figure 790229DEST_PATH_IMAGE042
所有数据对象到近似分类面的极大值作为该子集合的距离。以
Figure 655417DEST_PATH_IMAGE011
中所有子集合的距离的极大值作为该实际类别标签LY的类最大距离,假设该距离为
Figure DEST_PATH_IMAGE050
。 
a3.对于纯子类集合UC,选取集合上所有实际类别标签均是LY的子集合
Figure 731957DEST_PATH_IMAGE012
,假设该子集合上共有Hcj个纯子类。
a4. 从cj=1开始,选取集合
Figure 315385DEST_PATH_IMAGE013
中的一个纯子类计算该子类中每一个数据对象到M-1个近似分类面的最近距离作为该数据对象到M-1个近似分类面的距离;选取所有数据对象到近似分类面的极小值作为纯子类
Figure 488058DEST_PATH_IMAGE014
到近似分类面的距离,假设为DisMincj。此时判断,如果DisMincj>
Figure 797816DEST_PATH_IMAGE050
,说明
Figure 806224DEST_PATH_IMAGE013
子集合中纯子类
Figure 859630DEST_PATH_IMAGE014
所包含的数据距离近似分类面较远,不可能存在支持向量,舍弃子类;否则保留子类
Figure 114824DEST_PATH_IMAGE014
a5.将cj递增1,并重复以上a4,直到cj=
Figure 407265DEST_PATH_IMAGE015
+1,说明集合UCLY中所有子集都已完成是否应该舍弃的判断。
a6.将LY递增1,选择下一个实际类别标签,转到a2继续执行,直到LY=M+1,说明集合UC中所有子集都已完成是否应该舍弃的判断。
a7. 返回剩余子类及其所含数据集合。假设集合UC上最终保留H个纯子类,则剩余子类共有H+L个纯子类,即
Figure 202045DEST_PATH_IMAGE051
。假设RS1集合上的数据对象集合为,其中第si个纯子类所拥有的数据对象集合为
Figure 896332DEST_PATH_IMAGE053
Figure DEST_PATH_IMAGE054
表示集合RS1上第si个纯子类上第gx个数据对象。该类数据对象假设共有msi个。 
 
步骤三:使用费歇尔判别法对筛选后得到的纯子类集合RS1进一步去除子类内层冗余数据,得到最终数据集RS2。费歇尔判别率准则是模式识别领域一种经典的分类方法。通过寻找使得类内离散度最小、类间离散度最大的投影方向将数据进行分类。费歇尔判别率应用在两类或者多类数据的分类上。本发明 应用费歇尔判别法对RS1集合进一步去除子类内层冗余数据,得到最终数据集RS2的具体步骤如下:
b1.从di=1开始,选取集合RS1中的一个子类,假设选择第di个子类为
Figure 485576DEST_PATH_IMAGE016
,其对应的数据对象集合Ddi。计算该子类中每一个数据对象到该类的聚类中心Gdi的距离并排序,假设该类数据对象共有mdi个,得到第di个子类排序后的距离集合为
Figure 468576DEST_PATH_IMAGE055
。Ddi上按照此距离进行排序后所对应的数据对象集合为
Figure 863785DEST_PATH_IMAGE017
b2.以每个排序的数据对象为参照,统计小于该数据对象到聚类中心距离内的数据对象个数,得到该数据对象到聚类中心距离上的数据密度。假设排序对象
Figure DEST_PATH_IMAGE056
,其密度为。该子类上所有数据对象的数据密度集合为
Figure 438303DEST_PATH_IMAGE018
。 
b3.设置参数d=1,LD=Im,Bmin=1,Bmax=mdi。其中,参数LD规定了迭代的次数。参数Im是一个经验值,通常一个子类中数据量越大,Im越大,对于一个内部数据量为10m级的数据,本发明采用Im =m+1,如聚类为104级数据,Im =5。参数Bmin和Bmax规定了数据密度集合Den上应用费歇尔判别率的取值范围,即在以
Figure 705336DEST_PATH_IMAGE020
Figure 841919DEST_PATH_IMAGE021
距离范围内的数据密度子集中计算费歇尔判别率的值。
b4.若d<LD,则说明迭代尚未完成,执行b5;否则跳转到b9。
b5.计算当前步长SL。其中
Figure 245219DEST_PATH_IMAGE019
。 
b6. 在以
Figure 504162DEST_PATH_IMAGE020
Figure 196174DEST_PATH_IMAGE021
距离范围内的数据密度子集中,以SL为步长计算对应距离上的数据密度集合Den的费歇尔判别率值
Figure 933186DEST_PATH_IMAGE022
Figure 394255DEST_PATH_IMAGE023
。在第k个步长(即
Figure DEST_PATH_IMAGE058
距离上)上,将数据密度集合Den在
Figure 758852DEST_PATH_IMAGE020
Figure 734899DEST_PATH_IMAGE021
距离上分成
Figure 275601DEST_PATH_IMAGE024
Figure 856755DEST_PATH_IMAGE025
两个子集。应用费歇尔判别率所得fgk为:
                       
Figure 191922DEST_PATH_IMAGE026
 
其中,是集合V上数据密度的均值,
Figure 937341DEST_PATH_IMAGE028
是集合V上数据密度的均方差;同样
Figure 435318DEST_PATH_IMAGE029
是集合T上数据密度的均值,
Figure 879069DEST_PATH_IMAGE030
是集合T上数据密度的均方差。fgk是第gk个步长上将数据密度集合Den分成V和T两个子集后所得费歇尔判别率的值。
b7. 选取集合F上最大的两个费歇尔判别率值,从而得到其所对应的排序距离,假设为distm_i,distm_j(假设m_i<m_j);将这两个排序距离的位置m_i和m_j分别赋给Bmin和Bmax
b8.将d递增1,并跳转到b4。
b9.以当前排序距离
Figure 95287DEST_PATH_IMAGE021
为阈值,删除数据对象集合
Figure 977792DEST_PATH_IMAGE016
中所有到该类聚类中心距离小于
Figure 205642DEST_PATH_IMAGE021
的数据对象。即保留排序距离集合
Figure 148191DEST_PATH_IMAGE059
上所对应的数据对象
Figure DEST_PATH_IMAGE060
,假设此集合为RDdi
b10.将di递增1,并跳转到b1,处理集合RS1中的下一个子类,直到di=H+L+1。此时说明所有子类都已处理完毕。
b11. 将剩余的数据组成集合
Figure 523808DEST_PATH_IMAGE031
步骤四:最终对保留下来的数据集RS2进行SVM训练学习,以得到最终的支持向量。
 
以下结合图1-3给出本发明一个实施例以进一步阐述本发明。
实施例
图1表示一个两类实际数据,其中正方形表示一类数据,圆形表示另一类数据。应用步骤一进行K均值聚类,假设K设定为7,得到7个子类数据
Figure 944425DEST_PATH_IMAGE061
,每一类数据用椭圆形虚线包含。对得到的7个子类,按照子类所含数据对象所对应的实际类别的分布情况,将子类分为:子类中所包含的数据对象为单一类别的纯子类和子类所含数据对象为两个以上多个类别的混合子类
Figure 354678DEST_PATH_IMAGE063
。将MC中每一个混合子类中的数据对象按照其所属实际类别再次划分为多个纯子类,最终又分成4个纯子类
Figure DEST_PATH_IMAGE064
。此时得到的9个纯子类集合
Figure 137302DEST_PATH_IMAGE065
。 
图2表示应用步骤二对S集合应用类最大最小距离方法约减冗余子类:
1、首先计算集合S上每一个纯子类的聚类中心,在图2中用三角形表示。应用S集合上所得8个聚类中心及S集合上纯子类对应的实际类别作为参数:
Figure DEST_PATH_IMAGE066
Figure 62532DEST_PATH_IMAGE067
表示S集合上i子类的聚类中心,1代表正方形数据,2代表圆形数据。对以上参数使用LIBSVM工具得到近似分类面。该近似分类面在图2中用实直线表示。图2中两条虚直线上的三角形聚类中心表示距离近似分类面最近的支撑向量。由于数据只有两类,因此对任一类数据,其分类面只有1个。
2、从实际类别标签LY=1的正方形数据开始,选择UMC中属于同一类别LY的若干子集合,在图2中为
Figure DEST_PATH_IMAGE068
,分别计算每一个子集
Figure 224524DEST_PATH_IMAGE069
中每一个数据对象到近似分类面的最近距离。分别取子集中所有数据对象到近似分类面的极大值作为该子集合的距离。然后以
Figure 773634DEST_PATH_IMAGE070
中子集合距离的极大值作为
Figure 123843DEST_PATH_IMAGE071
类的类最大距离,假设该距离在图2中为
Figure DEST_PATH_IMAGE072
3、对于属于同一实际类别标签为LY的纯子类集合UC,如LY=1选取集合
Figure 886263DEST_PATH_IMAGE073
,即子集合是正方形数据的子类。
4、从
Figure DEST_PATH_IMAGE074
类开始,计算
Figure 5529DEST_PATH_IMAGE074
类中每一个数据对象到近似分类面的距离;选取所有数据对象到近似分类面的极小值作为子类到近似分类面的距离,假设该距离在图2中为DisMinc2。由于DisMinc2<
Figure 298287DEST_PATH_IMAGE072
,说明
Figure 864398DEST_PATH_IMAGE074
类可能存在支持向量,保留子类
Figure 838170DEST_PATH_IMAGE074
5、选择集合子类
Figure 464323DEST_PATH_IMAGE075
的下一个子类, 转到步骤4,直到
Figure 851442DEST_PATH_IMAGE075
中所有子类选择完毕。
6、将LY递增1,选择下一个实际类别标签,转到步骤2继续执行,直到LY=3为止。
7、经过以上六个步骤,删除了离近似分类面较远的子类。返回剩余子类及其所含数据集合,在图2中为
Figure 893348DEST_PATH_IMAGE077
图3表示应用步骤三和步骤四,约减子类内部冗余数据并训练得到最终分类面。RS1中每一个子类删除的冗余数据在图3中用实线圆圈出。实线圆和虚线椭圆之间包含的数据为最终的数据集RS2。步骤四中应用RS2得到的最终分类面在图3中用直线表示。
其中,应用步骤三对RS1集合进一步去除子类内层冗余数据,得到最终数据集RS2的具体步骤如下
A、从集合RS1的第一个子类开始,计算该子类中每一个数据对象到该类的聚类中心的距离。根据图3,
Figure 804768DEST_PATH_IMAGE074
子类有30个数据,将此距离进行排序,得到第
Figure 413604DEST_PATH_IMAGE074
子类排序后的距离集合
Figure DEST_PATH_IMAGE078
以及按照此距离进行排序后所对应的数据对象集合。
B、以每个排序的数据对象为参照,统计小于该数据对象到聚类中心距离内的数据对象个数,得到该数据对象到聚类中心距离上的数据密度。
Figure 524779DEST_PATH_IMAGE074
子类的数据密度集合为
Figure 473144DEST_PATH_IMAGE079
C、因此设置初始参数d=1,LD=Im,Bmin=1,Bmax= mdi。由于图3的子类数据较少,故可设置LD=2,即只迭代一次。mdi是子类所拥有数据对象的个数,在
Figure 441100DEST_PATH_IMAGE074
中,该数值为30,表示对所有数据密度集合计算费歇尔判别率值。
D、若d<LD,则说明迭代尚未完成,执行步骤E;否则跳转到步骤I。
E、计算当前步长
Figure 537232DEST_PATH_IMAGE019
。由于图3的数据较小,SL=1。
F、在以
Figure DEST_PATH_IMAGE080
Figure 920940DEST_PATH_IMAGE081
距离范围内的数据密度子集中,以SL为步长计算对应距离上的数据密度集合Den的费歇尔判别率值
Figure 989390DEST_PATH_IMAGE022
。在子类
Figure 128247DEST_PATH_IMAGE074
中,o=29。
G、选取集合F上最大的两个费歇尔判别率值,从而得到其所对应的排序距离,假设为distm_i,distm_j(假设m_i<m_j);将这两个排序距离的位置i和j分别赋给Bmin和Bmax
H、将d递增1,并跳转到步骤D。
I、以当前排序距离
Figure 649358DEST_PATH_IMAGE021
为阈值,删除当前数据对象集合中所有到该类聚类中心距离小于
Figure 899074DEST_PATH_IMAGE021
的数据对象。在图3中每一个子类用实线圆圈内的数据对象为删除的数据对象,在实线圆和虚线椭圆之间包含的数据为子类所保留的数据对象。
J、跳转到步骤A,处理集合RS1中的下一个子类,直到所有子类都已处理完毕。
K、将剩余的数据组成集合RS2,作为最终训练的数据集合。
在下表一中,第一个数据是通过计算机模拟生成的50000个二维高斯分布的数据,它服从以(0,1)和(1,0)为均值的标准二维正态分布。实验中,根据数据的形态和数量,对这组数据设置聚类数K=20。UCI/a6a和UCI/a9a来自UCI / Adult数据集,是一组实际类别为2类的数据,其中每个数据包含123维。实验中,对这两组数据分别设置聚类数K=50和K=60。UCI/Covtype.binary是一组包含57万个54维数据点的实际类别为2类的数据,实验中设置K=100。
表一 原始数据
Figure DEST_PATH_IMAGE082
下表二是表一数据经本发明处理后通过SVM训练与直接使用LIBSVM工具训练的对比结果。从表二可以看出,与LIBSVM相比,本发明在所有数据集上都能取得和LIBSVM基本相同的分类精度,同时显著降低SVM训练所需的时间。特别是在UCI/Covtype.binary海量数据集中,本发明取得的时间优势相当可观。说明随着数据量的增长,本发明在SVM训练过程中取得的时间效率提升越发显著。
表二 应用本发明及LIBSVM所得训练时间与分类精度的对比结果
  直接使用SVM训练所需总时间(S) 直接使用LIBSVM的分类精度 本发明优化后SVM训练所需总时间 使用本发明的分类精度
模拟数据 65.23 99.99% 27.27274 99.99%
UCI/a6a 87.574 83.60% 70.66000032 83.47%
UCI/a9a 437.211 84.09% 301.3219998 83.84%
UCI/Covtype.binary 39654.3 86.85% 15328.4 85.40%

Claims (1)

1.一种适用于支持向量机训练的冗余数据约减方法,其特征是采用如下步骤:
A、先将训练数据集合定义为                                                
Figure DEST_PATH_IMAGE001
Figure 163289DEST_PATH_IMAGE002
是n维实向量空间上的数据对象,
Figure 813582DEST_PATH_IMAGE004
是数据对象的实际类别标签,共有N个数据对象,数据对象分别属于M个实际类别;然后利用K均值聚类方法将训练数据聚类成K个子类
Figure DEST_PATH_IMAGE005
,将K个子类分为所包含的数据对象为单一类别的纯子类集合
Figure 328057DEST_PATH_IMAGE006
和子类所含数据对象为两个以上多个类别的混合子类
Figure DEST_PATH_IMAGE007
;最后将混合子类MC中每一个混合子类中的数据对象按照其所属实际类别再次划分为多个纯子类,最终分成L个纯子类
Figure 286654DEST_PATH_IMAGE008
,得到R+L个纯子类集合
Figure DEST_PATH_IMAGE009
; 
B、通过类最大最小距离方法对纯子类集合UC筛选,找到离支持向量机的分类面较远的纯子类并予以删除,得到集合S上约减纯类集合后的纯子类子集合RS1,具体按以下步骤实现:
1)计算集合S上每一个纯子类的聚类中心,对R+L个聚类中心及其对应的实际类别标签组成的集合使用支持向量机分类,得到M-1个近似分类面;
2)从实际类别标签=1开始,选择纯子类UMC中属于同一实际类别标签的若干子集合
Figure DEST_PATH_IMAGE011
,计算子集合
Figure 244432DEST_PATH_IMAGE011
的某一子集的每一个数据对象到M-1个近似分类面的最近距离,以中所有子集合的距离的极大值作为该实际类别标签LY的类最大距离;
3)选取集合UC上所有实际类别标签均是LY的子集合
Figure 539464DEST_PATH_IMAGE012
,Hcj是纯子类个数; 
4)从cj=1开始,选取集合
Figure DEST_PATH_IMAGE013
中的一个纯子类
Figure 915082DEST_PATH_IMAGE014
,计算
Figure 601278DEST_PATH_IMAGE014
中每一个数据对象到M-1个近似分类面的最近距离作为该数据对象到M-1个近似分类面的距离,选取所有数据对象到近似分类面的极小值作为纯子类
Figure 995219DEST_PATH_IMAGE014
到近似分类面的距离; 
5)将cj递增1,并重复步骤4)直到cj=
Figure DEST_PATH_IMAGE015
+1;
6)将LY递增1,选择下一个实际类别标签,转到步骤2)继续执行,直到LY=M+1; 
7)返回剩余子类及其所含数据集合,集合UC上最终保留H个纯子类,剩余子类共有H+L个纯子类;
 C、使用费歇尔判别法对纯子类集合RS1去除子类内层冗余数据,得到最终数据集合RS2,具体按以下步骤实现:
1)从di=1子类开始,选取集合RS1中的一个子类为,计算中每一个数据对象到该类的聚类中心Gdi的距离并排序得到对应的数据对象集合为
Figure DEST_PATH_IMAGE017
2)统计小于该数据对象到聚类中心距离内的数据对象个数,得到该数据对象到聚类中心距离上的数据密度集合为
Figure 382841DEST_PATH_IMAGE018
3)设置参数d=1,LD=Im,Bmin=1,Bmax=mdi,Im=m+1; 
4)若d<LD,执行下一步骤5);否则跳转到步骤9);
5)计算当前步长
Figure DEST_PATH_IMAGE019
; 
6)在以
Figure 709917DEST_PATH_IMAGE020
Figure DEST_PATH_IMAGE021
距离范围内的数据密度子集中,以SL为步长计算对应距离上的数据密度集合Den的费歇尔判别率值
Figure 666372DEST_PATH_IMAGE022
Figure DEST_PATH_IMAGE023
;在第k个步长上,将数据密度集合Den在
Figure 265849DEST_PATH_IMAGE020
Figure 293848DEST_PATH_IMAGE021
距离上分成
Figure 475431DEST_PATH_IMAGE024
Figure DEST_PATH_IMAGE025
两个子集;得到第gk个步长上,将数据密度集合Den分成V和T两个子集后得费歇尔判别率的值 ;
Figure DEST_PATH_IMAGE027
是子集合V上数据密度的均值,
Figure 689560DEST_PATH_IMAGE028
是子集合V上数据密度的均方差;
Figure DEST_PATH_IMAGE029
是集合T上数据密度的均值,
Figure 193354DEST_PATH_IMAGE030
是集合T上数据密度的均方差; 
7) 选取值F上最大的两个费歇尔判别率值,得到其所对应的排序距离,将这两个排序距离的位置分别赋给Bmin和Bmax
8)将d递增1,并跳转到步骤4);
9)以当前排序距离
Figure 495022DEST_PATH_IMAGE021
为阈值,删除数据对象
Figure 308127DEST_PATH_IMAGE016
中所有到该类聚类中心距离小于
Figure 429666DEST_PATH_IMAGE021
的数据对象;
10)将di递增1,并跳转到步骤1),处理集合RS1中的下一个子类,直到di=H+L+1;
11)将剩余的数据组成集合
Figure DEST_PATH_IMAGE031
CN2012101369851A 2012-05-07 2012-05-07 一种适用于支持向量机训练的冗余数据约减方法 Pending CN102831432A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2012101369851A CN102831432A (zh) 2012-05-07 2012-05-07 一种适用于支持向量机训练的冗余数据约减方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2012101369851A CN102831432A (zh) 2012-05-07 2012-05-07 一种适用于支持向量机训练的冗余数据约减方法

Publications (1)

Publication Number Publication Date
CN102831432A true CN102831432A (zh) 2012-12-19

Family

ID=47334560

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2012101369851A Pending CN102831432A (zh) 2012-05-07 2012-05-07 一种适用于支持向量机训练的冗余数据约减方法

Country Status (1)

Country Link
CN (1) CN102831432A (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104463221A (zh) * 2014-12-22 2015-03-25 江苏科海智能系统有限公司 适用于支持向量机训练的不平衡样本加权方法
CN104504148A (zh) * 2015-01-05 2015-04-08 浪潮(北京)电子信息产业有限公司 一种自动构建分类模板方法及系统
CN104537228A (zh) * 2014-12-23 2015-04-22 清华大学 基于残差熵和分层双支持向量机的指标预报方法及应用
CN104714964A (zh) * 2013-12-13 2015-06-17 中国移动通信集团公司 一种生理数据离群检测方法及装置
CN108875365A (zh) * 2018-04-22 2018-11-23 北京光宇之勋科技有限公司 一种入侵检测方法及入侵检测检测装置
CN111783869A (zh) * 2020-06-29 2020-10-16 杭州海康威视数字技术股份有限公司 训练数据筛选方法、装置、电子设备及存储介质
CN112529172A (zh) * 2019-09-18 2021-03-19 华为技术有限公司 数据处理方法和数据处理设备
CN113326989A (zh) * 2021-06-15 2021-08-31 北京沃东天骏信息技术有限公司 一种车辆路线优化的方法和系统
CN116774570A (zh) * 2023-08-23 2023-09-19 成都飞航智云科技有限公司 一种多余度数据分析方法、分析系统
CN116957170A (zh) * 2023-09-20 2023-10-27 中国南方电网有限责任公司 一种电力系统优化问题的约束集约减方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080086493A1 (en) * 2006-10-09 2008-04-10 Board Of Regents Of University Of Nebraska Apparatus and method for organization, segmentation, characterization, and discrimination of complex data sets from multi-heterogeneous sources
CN101604394A (zh) * 2008-12-30 2009-12-16 华中科技大学 一种有限存贮资源下的增量学习分类方法
CN101866426A (zh) * 2010-06-21 2010-10-20 清华大学 一种基于k近邻方法的加权收缩方法
CN102254020A (zh) * 2011-07-22 2011-11-23 西安电子科技大学 基于特征权重的全局k-均值聚类方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080086493A1 (en) * 2006-10-09 2008-04-10 Board Of Regents Of University Of Nebraska Apparatus and method for organization, segmentation, characterization, and discrimination of complex data sets from multi-heterogeneous sources
CN101604394A (zh) * 2008-12-30 2009-12-16 华中科技大学 一种有限存贮资源下的增量学习分类方法
CN101866426A (zh) * 2010-06-21 2010-10-20 清华大学 一种基于k近邻方法的加权收缩方法
CN102254020A (zh) * 2011-07-22 2011-11-23 西安电子科技大学 基于特征权重的全局k-均值聚类方法

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104714964A (zh) * 2013-12-13 2015-06-17 中国移动通信集团公司 一种生理数据离群检测方法及装置
CN104714964B (zh) * 2013-12-13 2018-03-23 中国移动通信集团公司 一种生理数据离群检测方法及装置
CN104463221A (zh) * 2014-12-22 2015-03-25 江苏科海智能系统有限公司 适用于支持向量机训练的不平衡样本加权方法
CN104537228A (zh) * 2014-12-23 2015-04-22 清华大学 基于残差熵和分层双支持向量机的指标预报方法及应用
CN104537228B (zh) * 2014-12-23 2017-08-11 清华大学 基于残差熵和分层双支持向量机的玻璃窑炉温度预报方法
CN104504148A (zh) * 2015-01-05 2015-04-08 浪潮(北京)电子信息产业有限公司 一种自动构建分类模板方法及系统
CN108875365A (zh) * 2018-04-22 2018-11-23 北京光宇之勋科技有限公司 一种入侵检测方法及入侵检测检测装置
CN108875365B (zh) * 2018-04-22 2023-04-07 湖南省金盾信息安全等级保护评估中心有限公司 一种入侵检测方法及入侵检测检测装置
CN112529172A (zh) * 2019-09-18 2021-03-19 华为技术有限公司 数据处理方法和数据处理设备
CN111783869A (zh) * 2020-06-29 2020-10-16 杭州海康威视数字技术股份有限公司 训练数据筛选方法、装置、电子设备及存储介质
CN111783869B (zh) * 2020-06-29 2024-06-04 杭州海康威视数字技术股份有限公司 训练数据筛选方法、装置、电子设备及存储介质
CN113326989A (zh) * 2021-06-15 2021-08-31 北京沃东天骏信息技术有限公司 一种车辆路线优化的方法和系统
CN116774570A (zh) * 2023-08-23 2023-09-19 成都飞航智云科技有限公司 一种多余度数据分析方法、分析系统
CN116774570B (zh) * 2023-08-23 2023-11-07 成都飞航智云科技有限公司 一种多余度数据分析方法、分析系统
CN116957170A (zh) * 2023-09-20 2023-10-27 中国南方电网有限责任公司 一种电力系统优化问题的约束集约减方法及系统
CN116957170B (zh) * 2023-09-20 2023-12-22 中国南方电网有限责任公司 一种电力系统优化问题的约束集约减方法及系统

Similar Documents

Publication Publication Date Title
CN102831432A (zh) 一种适用于支持向量机训练的冗余数据约减方法
Zeebaree et al. Combination of K-means clustering with Genetic Algorithm: A review
Das et al. Metaheuristic clustering
Isa et al. Using the self organizing map for clustering of text documents
Senthilnath et al. Clustering using levy flight cuckoo search
CN107590263B (zh) 一种基于多变量决策树模型的分布式大数据分类方法
WO2017003666A1 (en) Method and apparatus for large scale machine learning
CN110991518B (zh) 一种基于进化多任务的两阶段特征选择方法及系统
Chiang et al. A novel artificial bee colony optimization algorithm with SVM for bio-inspired software-defined networking
CN106991442A (zh) 混合蛙跳算法的自适应核k‑means方法与系统
CN104463221A (zh) 适用于支持向量机训练的不平衡样本加权方法
Yao et al. Clustering of typical wind power scenarios based on K-means clustering algorithm and improved artificial bee colony algorithm
CN106611382A (zh) 一种基于布谷鸟搜索算法解决作业车间工艺瓶颈问题
CN115310554A (zh) 基于深度聚类的品项分配策略、系统、存储介质和设备
Benitez et al. An improved genetic algorithm for feature selection in the classification of disaster-related Twitter messages
CN114417095A (zh) 一种数据集划分方法及装置
Oloruntoba et al. Clan-based cultural algorithm for feature selection
Marinakis et al. A hybrid clustering algorithm based on honey bees mating optimization and greedy randomized adaptive search procedure
Fatahi et al. An FPA and GA-based hybrid evolutionary algorithm for analyzing clusters
Hong et al. An evolutionary attribute clustering and selection method based on feature similarity
CN108205721A (zh) 基于聚类的样条插值典型日负荷曲线选取装置
Li et al. Fuzzy c-Means with improved particle swarm optimization
CN111860755A (zh) 基于支持向量机回归的改进粒子群算法
Hadjiivanov et al. Epigenetic evolution of deep convolutional models
CN105426910B (zh) 一种基于改进abc算法与de变异策略的自适应聚类方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20121219