CN105930856A - 基于改进dbscan-smote算法的分类方法 - Google Patents
基于改进dbscan-smote算法的分类方法 Download PDFInfo
- Publication number
- CN105930856A CN105930856A CN201610169101.0A CN201610169101A CN105930856A CN 105930856 A CN105930856 A CN 105930856A CN 201610169101 A CN201610169101 A CN 201610169101A CN 105930856 A CN105930856 A CN 105930856A
- Authority
- CN
- China
- Prior art keywords
- sample
- class
- algorithm
- boundary
- data
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Image Analysis (AREA)
Abstract
本发明针对数据样本空间的处理中类内不平衡的情况提供了一种基于改进DBSCAN‑SMOTE算法的分类方法,首先在数据样本集合中,判断出哪些属于边界样本,并将边界样本分为多数类边界样本和少数类边界样本,对于多数类样本空间中的边界样本采用聚类;然后采用PSO算法对聚类簇内边界样本和安全样本的过采样率进行优化,通过对少数类边界样本通过SMOTE算法进行不同采样率的过采样;其中,所述聚类基于改进DBSCAN算法,该算法不仅能够产生少数类的聚类簇,然后再在这些样本簇内进行过采样,而且还能够充分的解决类内不平衡中的分布不均匀和数据碎片或者小析取项的问题。
Description
技术领域
本发明属于数据挖掘中的分类技术优化领域,尤其涉及一种适用不平衡样本的分类方法。
背景技术
不平衡样本分类问题中,不平衡数据就是在整个数据集样本空间中其中一类的样本和其余一类或几类样本在数量上存在巨大的差距。在这种情况下往往少数类需要我们投入更多的关注。例如在医疗诊断中的应用中,癌症或者心脏病的数据样本空间就是不平衡样本,在这类样本中,我们关注的对象往往是患病样本,通过准确分类出这些样本的属性,从而可以准确诊断病人的病情,并给与这些病人及时的针对性治疗。
传统分类器在处理不平衡样本分类问题中,为了追求较高的全局分类准确率,往往直接将少数类样本分类为多数类样本,这种做法会将潜在的病人信息分类为健康信息,因此患者可能错过治疗的最佳时期,造成患者不可挽回的损失。
在不平衡样本分类问题中,往往又存在着两种不平衡:类间不平衡和类内不平衡。类间不平衡就是多数类和少数类之间在数据样本数量上的不平衡;类内不平衡就是在少数类样本空间中又存在着各子类间数据样本分布位置或者分布密度的不平衡,也即是存在数据碎片和密度不均匀问题。
现有针对不平衡样本分类问题的方案众多,可以将这些方法归纳为两大类:一、从数据层面解决问题,也就是通过适当采样方法,增加少数类样本数量,从而使原始样本空间趋于平衡,使得此问题转化为传统的机器学***衡样本。
数据层面解决不平衡样本分类的主要思想就是通过重采样从而对原始不平衡样本空间进行重构,使其变为相对平衡分布的状态,使得重构后数据样本能更好的适用标准分类器算法进行分类。在数据层面解决不平衡样本分类问题有很多不同形式进行重采样的方法,主要有“过采样方法”和“欠采样方法”两大类重采样算法。例如在少数类中的过采样,在多数类中的欠采样又或者结合这两种方法的混合采样。
研究者提出了很多有效的重采样方案,单边选择法(one-side selection)是Kubat等人于1997对于样本向量距离思想上的一次改进而提出一种新的欠采样方法。该方法的主要思想是:在样本向量距离思想的基础上,结合了KNN,将多数类样本归为四种主要类别,分别为安全样本、冗余样本、边界样本和噪声样本。在这里,安全样本和冗余样本是那些远离少数类和多数类边界处的样本,这些样本的分类难度比较小,对于边界样本和噪声样本而言,我们称之为“不安全样本”,对于这类样本需要重点关注。因此,单边选择法的采样过程中,通过多数类样本中的安全样本和少数类样本人工合成新的数据样本,而对“不安全样本”的处理方式是采用欠采样方法。
SMOTE(synthetic minority over-sampling technique)算法是应用较多的一种过采样方法,由Chawla等人提出的。它的主要思想是在少数类样本空间中相邻的样本之间仿造一些样本。因此,过拟合问题在SMOTE算法中就会被避免,而且少数类的决策空间也会扩展的更好;同样,它也可以应用到多数类样本空间中,可以降低多数类的决策空间。现在很多的过采样方法都是在SMOTE基础上进行的改进,Han等人提出了Borderline-SMOTE,He和Li提出了NRSBoundary-SMOTE算法,其主要思想是扩展少数类的分类空间并且压缩多数类的分类空间。
Yen和Lee在2009年提出了一种基于聚类的欠采样方法SBC。该算法认为,不同的聚类簇之间有一定的差异性,应该对不同的聚类簇采取不同的欠采样策略。SBC算法的主要思想就是:采用传统聚类算法将多数类样本聚类成k个簇,然后根据簇中多数类占所有多数类的比例进行欠采样倍率的设置,根据不同的采样倍率进行欠采样,实现删除一些多数类的功能。
在数据层面的改进对于解决不平衡样本分类问题已经有了很大的分类效果和许多成功的应用案例。但是,数据层面仅仅是在数据分布的角度去解决不平衡样本分类问题,并没有从分类算法的角度去寻求更好的解决方案。所以,越来越多的学者开始在算法层面来寻求突破,主要是通过改进传统的分类器算法,使它们能够适应不平衡样本分类问题。在算法层面,主要的研究体现在代价敏感学习、集成学习和其他一些优化的分类学习算法。
一般来说,解决不平衡分类问题最普遍的一种解决方案就是选择恰当的归纳偏置。对决策树来说,一种方法就是调整叶节点的概率估计,另一个方法就是优化剪枝技术;对于SVM来说,就是对不同的类设置不同的惩罚因子,或者根据核函数来调整分类超平面。为了研究出一种算法解决 方案,一个是需要相应分类器相关的知识和应用领域,尤其是要完全理解为什么这种学***衡会失败的原因。
代价敏感学***衡分类问题时,由于少数类样本蕴含的价值信息往往大于多数类样本所蕴含的价值信息,因此,代价矩阵中,误分类少数类样本时候的代价要大于误分类多数类样本时候的代价,即C(Min,Maj)>C(Maj,Min)。所有没被误分类的样本代价为0,即C(Maj,Maj)=C(Min,Min)=0。其中某一样本的条件概率风险R(i|x)的定义如下公式(1)所示:
R(i|x)=∑jP(j|x)C(i,j) (1)
其中P(j|x)代表样本x被分类为j类型的后验概率。综上所述,代价敏感学习两条关键的原则是:少数类样本被误分类的代价要大于多数类被误分类的代价原则以及条件风险最小化原则,分类器在训练的时候会更加关注误分类代价较大的样本,从而在下一次迭代中正确分类这些样本点。
集成分类学***衡分类领域获得很高的关注和应用,主要是因为它具备如下的独特优势:基于统计的学***衡样本分类的独特的学***衡样本分类有天然的适用性。
集成分类学习方法的主要作用就是基本通过统计偏差或者方差来进行学习的。对于给定的一个基分类器,偏置方差分解在偏差、方差和基本误差中都会有所不同,集成分类方法性能上的提升也主要是表现在方差的降低。Bagging、Random forest和AdaBoost都是成功降低误分方差的一系列被成功应用的集成分类学习方法。
AdaBoost演算法被观察到有能力减少偏差。以树桩(每个劈叉树只有两个终端节点,通常方差较低但高偏差)为基础的学***衡数据集,标准的学***衡问题上是至关重要的。AdaBoost算法主要形式有:AdaC1,AdaC2和AdaC3,它们的主要不同之处就是在基分类器的权重系数at的计算上,在每次迭代运算中都会将代价这一项考虑进去进行重新计算。
如上所述,采样方法改变样本数据的分布,从而解决了标准分类器算法无法适应不平衡样本数据集的问题。然而,很多研究仍然从分类器算法的角度来解决其对于不平衡样本数据集分类准确率地下的问题。例如,代价敏感学习方法通过设置合理的错分代价,从而寻求最低代价完成分类。
传统的随机欠采样和随机过采样有很多明显的缺点。例如,随机欠采样很有可能会移除一些潜在有价值的样本,造成不平衡样本分类时分类不准确;随机过采样可能会导致过拟合问题。最为主流SMOTE也存在一些显而易见的问题,比如仿造的数据样本对决策空间的扩展作用不大;由于随机性,有时候无法顾及传统分类器认为的所谓的“少数类噪声样本”,从而对诊断表现造成较大的影响。
在现实世界中,少数类样本数据经常被错分,或当作数据噪音处理,代价敏感学***衡样本分类。集成学习通过将基分类器进行组合,从而形成分类准确率较高的集成分类器。对于集成学习改进也有很多,例如Chawla N V等人通过将SMOTE采样算法集成到Boosting中,从而得到了SMOTEBoost提高了少数类分类的准确率。
Boosting算法中同时也存在一定的弊端,在对每一轮迭代中,样本权值的赋予策略的不同往往能对最终的分类效果产生较大的影响。同时在对基分类器投票权重系数的确定上,往往也只是单纯根据这一基分类器的最终分类结果确定的,但是在基分类器的组合中,这些基分类器往往存在一定的关系,不能仅仅采用他们的分类准确率来确定最终的系数组合,如何确定最优的这些系数组合也是需要重点考虑的一个问题。
现有方法的最主要的一个弊端就是大部分方案都是针对类间不平衡进行处理的,没有考虑到类内不平衡问题的存在,所以在最终的效果上往往达不到很理想的效果。
发明内容
为了解决现有技术中问题,本发明提供了一种针对类内不平衡样本的基于改进DBSCAN-SMOTE算法的分类方法,采用改进DBSCAN-SMOTE算法来处理类内不平衡的情况。
本发明通过如下技术方案实现:
一种基于改进DBSCAN-SMOTE算法的分类方法,所述方法针对数据样本空间的处理中类内不平衡的情况,首先在数据样本集合中,判断出哪些属于边界样本,并将边界样本分为多数类边界样本和少数类边界样本,对于多数类样本空间中的边界样本采用聚类;然后采用PSO算法对聚类簇内边界样本和安全样本的过采样率进行优化,通过对少数类边界样本通过SMOTE算法进行不同采样率的过采样;其中,所述聚类基于改进DBSCAN算法,所述改进的DBSCAN算法包括:首先,考虑类内不平衡少数类样本分布密度不均匀的情况,能够得到一组基于分布密度的EPS值;然后,将这些通过计算得到的每个少数类样本点的平均距离组成一个距离向量数组,将这些平均距离作为原始数据集,在这个数据集上通过进行距离上的聚类;在将这个距离数组聚类成N个簇之后,计算每个簇中的所有距离加和取平均,将得到的这个平均值作为这个簇的邻域阈值,通过分别计算这N个簇的平均值,可以得到N个邻域阈值EPSi,i=1,2,…,N;接下来,将这N个领域阈值进行从小到大的顺序排序并保存在一个数组中;在接下来的聚类算法中,首先选择阈值数组中最小的那一个,当做DBSCAN算法的EPS值,然后对所有少数类样本进行聚类,接着采用阈值数组中下一个阈值对标记为噪声样本点的少数类样本继续进行DBSCAN聚类,同样得到一些聚类簇和剩余的噪声样本点。最后,重复以上的操作,当对所有少数类样本的通过不同的EPS进行聚类过后,则完成少数类样本的所有聚类操作,那些最后都不被归为在任何一个簇的数据即为噪声数据。
作为本发明的进一步改进,所述在数据样本集合中,判断出哪些属于边界样本,并将边界样本分为多数类边界样本和少数类边界样本采用Borderline算法;事先指定待分类的不平衡数据集为S={(x1,y1),(x2,y2),…,(xn,yn)},其中的每一个样本由特征向量和这个样本所属的类标组成,特征 向量表示为x,类标表示为y,即x={x1,x2,…,xn},y={Maj,Min},S中的多数类样本集合用Smaj表示,同样,用Smin表示少数类。则Borderline算法的过程如下:
(1)对Smin中的少数类样本数据,采用K近邻的方法找到它在整个数据集S中的K个最近邻样本,并将这些样本存入每个Smin样本对应的集合KNNsmin中去。
(2)通过以下三个公式将Smin中的每个样本归类为边界样本、噪声样本和安全样本:
|{(x,y)|(x,y)∈KNNsmin∧y=Maj}|>K/2 (1)
|{(x,y)|(x,y)∈KNNsmin∧y=Maj}|=K (2)
|{(x,y)|(x,y)∈KNNsmin∧y=Maj}|=0 (3)
其中满足公式(1)的少数类数据样本点则为边界样本,此时将边界少数类样本***到少数类边界样本集SBmin中;满足公式(2)的少数类数据样本点则为噪声样本;满足公式(3)的少数类数据样本点则为安全样本。
作为本发明的进一步改进,所述方法还包括在少数类边界样本空间的采样率要大于非边界样本的采样率;对于多数类样本空间中的边界样本则采用聚类,然后用聚类质心代替当前多数类边界样本簇,移除簇内其他原始样本。
本发明的有益效果是:本发明不仅能够产生少数类的聚类簇,然后再在这些样本簇内进行过采样,而且还能够充分的解决类内不平衡中的分布不均匀和数据碎片或者小析取项的问题。本发明特别适用于存在类内不平衡样本分类问题,及同类的识别少数类类别不平衡样本分类问题。本发明所提出的方法对数据集进行分类时的通用性,能有效处理不同类型的数据集。
具体实施方式
下面结合具体实施方式对本发明进一步说明。
样本边界重叠问题也是造成不平衡样本分类问题困难的原因之一,所以在本发明中,着重考虑了边界样本对最终分类效果的影响,并采取相应措施消除这一影响。主要采用的方法就是:在少数类边界样本空间的采样率要大于非边界样本的采样率;对于多数类样本空间中的边界样本则采用聚类,然后用聚类质心代替当前多数类边界样本簇,移除簇内其他原始样 本。从这两个方面处理后,则使得原始数据空间边界样本更加清晰,在很大程度上消除了边界样本对不平衡样本分类问题的影响。
针对上面提到的问题,本发明提出了基于改进DBSCAN的聚类算法,能有效的处理类内不平衡问题中的数据分布位置或分布密度不均匀的情况。同时结合Borderline算法的思想,考虑边界样本信息,然后采用PSO算法对聚类簇内边界样本和安全样本的过采样率进行优化,通过对少数类边界样本通过SMOTE算法进行不同采样率的过采样。其次,对多数类边界样本进行聚类质心替换的方法,分别进行不同的处理,双重增加了边界样本的清晰度。这样处理完之后的数据样本,不仅在类间和类内都趋于平衡,还增加了边界样本的清晰度,从而能够有效提升最终分类效果。
首先,主要对Borderline算法进行描述,该算法的主要功能就是在数据样本集合中,判断出哪些属于边界样本,并将边界样本分为多数类边界样本和少数类边界样本。在该算法中,事先指定待分类的不平衡数据集为S,其中的每一个样本由特征向量和这个样本所属的类标组成,特征向量表示为x,类标表示为y,即x={x1,x2,…,xn},y={Maj,Min}。所以数据集可以表示为:
S={(x1,y1)(x2,y2),…,(xn,yn)}
S中的多数类样本集合用Smaj表示,同样,用Smin表示少数类。则Borderline算法的过程如下:
(1)对Smin中的少数类样本数据,采用K近邻的方法找到它在整个数据集S中的K个最近邻样本,并将这些样本存入每个Smin样本对应的集合KNNsmin中去。
(2)通过以下三个公式将Smin中的每个样本归类为边界样本、噪声样本和安全样本:
|{(x,y)|(x,y)∈KNNsmin∧y=Maj}|>K/2 (2)
|{(x,y)|(x,y)∈KNNsmin∧y=Maj}|=K (3)
{(x,y)|(x,y)∈KNNsmin∧y=Maj}|=0 (4)
其中满足公式(2)的少数类数据样本点则为边界样本,此时将边界少数类样本***到少数类边界样本集SBmin中;满足公式(3)的少数类数据样本点则为噪声样本;满足公式(4)的少数类数据样本点则为安全样本。
(3)通过(2)的方法,同样可以得到多数类数据样本根据Borderline算法进行归类,对于边界样本,同样将这些样本***到一个多数类边界样 本集合SBmaj中去,噪声样本直接进行移除,安全样本不进行任何的操作。
通过以上三个步骤,可以分别得到少数类的边界样本集合空间和多数类的边界样本集合空间,这样在接下来的混合采样过程中,可以着重对边界样本的处理,从而增加边界样本的清晰度,使得分类效果有所提升。
对不平衡数据样本分类问题中,如果不平衡数据集中存在类内不平衡,采用传统的未经任何改进的聚类算法进行聚类时,往往无法聚类成想要的簇。在类内不平衡中,存在着少数类中的分布不均匀,以及数据碎片或者小析取项的问题,所以需要对传统的算法进行适当的改进,采用特定的能针对类内不平衡进行聚类的聚类算法。
DBSCAN算法的目的主要是通过密度对样本进行聚类,满足单位半径密度大小的样本被聚类,而那些不满足这个条件的样本点被当做噪声点抛弃掉。与传统的聚类算法不同的是,DBSCAN算法可以发现聚类成各种满足密度形状的簇,与传统的算法相比它有如下优点:
(1)和K-means算法相比,DBSCAN不用事先人为指定要聚成的簇个数和初始质心;
(2)DBSCAN聚成的簇形状不会发生明显的变化;
(3)可以根据实际情况,确定一些参数到达过滤噪声的效果。
标准DBSCAN算法的具体聚类过程如下:根据预先设定的单位半径和密度,在整个数据集,找到满足条件的这些点,称之为核心点,接着对该核心点进行扩充。扩充的方法是寻找从该核心点出发的所有和它密度相连的其他样本点。遍历该核心点的ε邻域内的所有核心点(因为边界点是无法扩充的),找到和这个核心点密度相连的其他少数类样本点,并判断这个点是否也为核心点,继续根据这个核心点进行扩充,直到无法找到密度相连的可以扩充的核心点为止。接下来就是重新扫描没有被聚类成簇的少数类样本数据集,在剩余数据集中寻找在不曾被聚类为任何一个簇的其他核心点,然后对该核心点采用上述方法进行扩充直到整个数据集中没有新的未被聚类成簇的核心点。聚类结束后,那些少数类样本集中未被聚类在任一簇中的样本点就时噪声点。
传统的DBSCAN聚类算法能很好的解决很多其他聚类算法不能解决的问题,但是当面对不平衡数据样本分类中的类内不平衡的情况是,传统的DBSCAN算法也有一定的弊端:
(1)由于DBSCAN算法采用统一的ε和Minpts参数,所以当面对类内不平衡中的分布密度不均匀的时候,DBSCAN算法产生的聚类簇往往不是 最理想的聚类结果。所以,对于类内不平衡中的分布不均匀的情况,需要采用不同的ε和Minpts参数来进行聚类,这样便可根据不同的分布密度生成相应的聚类簇。
(2)当存在类内不平衡的数据碎片或者小析取项的情况下,标准DBSCAN算法不能考虑到数据碎片或者小析取项的区域很小的问题,分类器很有可能会直接当做噪声点进行处理。
针对以上存在的问题,采用基于改进的DBSCAN算法来处理这些问题,从而解决类内不平衡的情况,其基本思想是:
首先,考虑类内不平衡少数类样本分布密度不均匀的情况,能够得到一组基于分布密度的EPS值。在存在类内不平衡的数据集中,各个少数类数据样本点与其他少数类样本点的距离远近是不同的,也就是分布密度不同。分布密度的计算是通过计算距离其中任一少数类样本最近的K个少数类样本点到这样本点的距离来衡量的。具体方法如下:通过统计任一少数类样本点Xi最近的K个其他少数类样本点,分别计算Xi到这K个少数类样本的距离,然后对这些距离取一个平均值。通过得到的距离平均值,可以得到少数类样本点Xi的分布密度,所有的少数类样本点都能计算出这样一个衡量该点分布密度的平均距离公式。
然后,将这些通过计算得到的每个少数类样本点的平均距离组成一个距离向量数组。将这些平均距离作为原始数据集,在这个数据集上通过进行距离上的聚类。在将这个距离数组聚类成N个簇之后,计算每个簇中的所有距离加和取平均,将得到的这个平均值作为这个簇的邻域阈值,通过分别计算这N个簇的平均值,可以得到N个邻域阈值EPSi(i=1,2,…,N)。
接下来,将这N个领域阈值进行排序,按照从小到大的顺序,将这些排好序的阈值保存在一个数组中,留做下一步的改进DBSCAN算法的EPS参数的依次的确定。
在接下来的聚类算法中,首先选择阈值数组中最小的那一个,当作DBSCAN算法的EPS值(MinPts可以人工指定,在训练过程中保持不变),然后对所有少数类样本进行聚类,通过聚类可以得到满足这个密度的多个少数类样本聚类簇,其他不满足条件的少数类样本则被归为噪声样本。接着采用阈值数组中下一个阈值对标记为噪声样本点的少数类样本继续进行DBSCAN聚类,同样得到一些聚类簇和剩余的噪声样本点。
最后,重复以上的操作,采用阈值数组中从小到大的不同阈值对标记为噪声样本点的少数类样本进行DBSCAN聚类,当对所有少数类样本的通 过不同的EPS进行聚类过后,则完成少数类样本的所有聚类操作,那些最后都不被归为在任何一个簇的数据即为噪声数据。
通过改进的DBSCAN算法,不仅能够产生少数类的聚类簇,然后再在这些样本簇内进行过采样,而且还能够充分的解决类内不平衡中的分布不均匀和数据碎片或者小析取项的问题。
验证本发明方法的性能的实验中选择AUC(Area under Receiver Operating Characteristics Curve)是一种可视化的分类器算法表现评价方法,用一个二维坐标系来表示。其中,X轴是错分少数类(阳性)的比率(FP_Rate),Y轴是正确分类的少数类(阳性)的比率(TP_Rate),每个分类器算法对一组样本数据进行分类后都会产生一个点Point(FP_Rate,TP_Rate),调整分类器的阀值产生多个点,形成ROC曲线,AUC则是这条曲线覆盖右下角的面积。AUC值越大,则表示分类器算法的断识别能力越强。
F-Measure最经常被应用到不平衡样本分类的评价工作中,如下公式所示。F-Measure由查全率、查准率以及平衡因子复合得到,当Recall和Precision都取得一个较高的数值时,F-Measure便会取得较为理想的结果。
式中β——调节查全率和查准率的平衡因子(通常β设为1)。
测试环境Windows 7,python2.7,IDE:spyder,CPU:Intel(R)Xeon(R)E5-2609,RAM:16G。
本发明实验数据集采用了具有类内不平衡情况的八个数据集和两个只存在类间不平衡的数据集,这些数据集都是在UCI数据库中获得的。表1描述了所有实验所用数据集的具体属性,其中No.列为数据集编号,DataSet为数据集名称,#Attr为数据集包含的属性数量,%Min表示少数类样本所占比例。本次实验共有10组数据集,其中每组的不平衡比率也不相同,并且样本总量也不一样。
表1 实验数据集描述
为了验证本发明的两个改进层面之一的数据层面提出的改进算法DBS(DBSCAN-Smote)算法的有效性,本发明选取传统的数据层面的重采样算法有ROS(Random-OverSampling)、SM(SMOTE)作为对比实验算法。
表2 DBS算法实验的AUC,F-Measure和全局准确率
表2为以上几种过采样算法在10组数据集上采用AdaBoost.M1进行分类的一些指标结果。表中NO.列序号代表4-2中的数据集序号,通过从AUC,F-Measure(F-Mea)和全局准确率Acc三个指标上对比分析了各个算法的分类效果。
从表2中可以统计看出,DBS算法在本发明所用10个实验数据集上,有其中7次取得了最高的AUC值,最优次数是最多的;有其中6次取得了 最高的F-Measure值,最优次数同样是最多的;同时有其中7次取得了最高的全局准确率Acc,最优次数同样是最多的。从这些评价指标,可以得出结论:DBS相对于现有的仅考虑类间不平衡的过采样算法,考虑类内不平衡情况的改进DBS过采样算法能有效的解决类内不平衡情况对分类效果的影响,从多个指标上都能有效提高不平衡样本分类效果。
DBS算法不仅能很好的解决类内不平衡情况的影响,同时对于那些只存在类间不平衡的数据集分类同样也会有不错的效果。通过表2中的数据集的分类效果可以看出,先前改进算法在对只存在类间不平衡的数据集上进行训练时往往会与比较高的分类准确率,这是因为类间不平衡是一种比较相对容易处理,容易做到样本空间平衡化的一种情况。通过数据集yeast5和page-blocks0两个只存在类间不平衡数据集进行分类,DBS、ROS以及SM分类算法具有同样好的分类效果,这说明DBS不仅是着重考虑并处理类内不平衡的一种有效算法,对只存在类间不平衡的数据集也能达到很好的分类效果。在取得较好分类效果的同时,验证了本发明所提出的改进算法对数据集进行分类时的通用性,能有效处理不同类型的数据集。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (5)
1.一种基于改进DBSCAN-SMOTE算法的分类方法,其特征在于:所述方法针对数据样本空间的处理中类内不平衡的情况,首先在数据样本集合中,判断出哪些属于边界样本,并将边界样本分为多数类边界样本和少数类边界样本,对于多数类样本空间中的边界样本采用聚类;然后采用PSO算法对聚类簇内边界样本和安全样本的过采样率进行优化,通过对少数类边界样本通过SMOTE算法进行不同采样率的过采样;其中,所述聚类基于改进DBSCAN算法,所述改进的DBSCAN算法包括:首先,考虑类内不平衡少数类样本分布密度不均匀的情况,能够得到一组基于分布密度的EPS值;然后,将这些通过计算得到的每个少数类样本点的平均距离组成一个距离向量数组,将这些平均距离作为原始数据集,在这个数据集上通过进行距离上的聚类;在将这个距离数组聚类成N个簇之后,计算每个簇中的所有距离加和取平均,将得到的这个平均值作为这个簇的邻域阈值,通过分别计算这N个簇的平均值,可以得到N个邻域阈值EPSi,i=1,2,…,N;接下来,将这N个领域阈值进行从小到大的顺序排序并保存在一个数组中;在接下来的聚类算法中,首先选择阈值数组中最小的那一个,当做DBSCAN算法的EPS值,然后对所有少数类样本进行聚类,接着采用阈值数组中下一个阈值对标记为噪声样本点的少数类样本继续进行DBSCAN聚类,同样得到一些聚类簇和剩余的噪声样本点。最后,重复以上的操作,当对所有少数类样本的通过不同的EPS进行聚类过后,则完成少数类样本的所有聚类操作,那些最后都不被归为在任何一个簇的数据即为噪声数据。
2.根据权利要求1所述的方法,其特征在于:所述在数据样本集合中,判断出哪些属于边界样本,并将边界样本分为多数类边界样本和少数类边界样本采用Borderline算法;事先指定待分类的不平衡数据集为S={(x1,y1),(x2,y2),…,(xn,yn)},其中的每一个样本由特征向量和这个样本所属的类标组成,特征向量表示为x,类标表示为y,即x={x1,x2,…,xn},y={Maj,Min},S中的多数类样本集合用Smaj表示,同样,用Smin表示少数类。则Borderline算法的过程如下:
(1)对Smin中的少数类样本数据,采用K近邻的方法找到它在整个数据集S中的K个最近邻样本,并将这些样本存入每个Smin样本对应的集合KNNsmin中去。
(2)通过以下三个公式将Smin中的每个样本归类为边界样本、噪声样本和安全样本:
|{(x,y)|(x,y)∈KNNsmin∧y=Maj}|>K/2 (1)
|{(x,y)|(x,y)∈KNNsmin∧y=Maj}|=K (2)
|{(x,y)|(x,y)∈KNNsmin∧y=Maj}|=0 (3)
其中满足公式(1)的少数类数据样本点则为边界样本,此时将边界少数类样本***到少数类边界样本集SBmin中;满足公式(2)的少数类数据样本点则为噪声样本;满足公式(3)的少数类数据样本点则为安全样本。
3.根据权利要求1所述的方法,其特征在于:所述方法还包括在少数类边界样本空间的采样率要大于非边界样本的采样率;对于多数类样本空间中的边界样本则采用聚类,然后用聚类质心代替当前多数类边界样本簇,移除簇内其他原始样本。
4.根据权利要求1所述的方法,其特征在于:其特征在于:PSO算法主要是对连续值进行优化,而这里的特征向量为离散型的,为了使所述PSO算法能够处理离散型的特征向量,使用sigmoid函数,对生成的连续值速度转换为离散的0、1值。
5.根据权利要求1所述的方法,其特征在于:所述方法通过PSO算法确定了各个聚类簇的边界样本采样率和安全样本采样率以及对分类效果有提升的特征之后,通过特征提取选取出最具有代表性的数据特征和数据样本集,然后通过优化得到的过采样率对少数类样本进行过采样,最终得到想要的平衡数据集样本。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610169101.0A CN105930856A (zh) | 2016-03-23 | 2016-03-23 | 基于改进dbscan-smote算法的分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610169101.0A CN105930856A (zh) | 2016-03-23 | 2016-03-23 | 基于改进dbscan-smote算法的分类方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105930856A true CN105930856A (zh) | 2016-09-07 |
Family
ID=56840504
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610169101.0A Pending CN105930856A (zh) | 2016-03-23 | 2016-03-23 | 基于改进dbscan-smote算法的分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105930856A (zh) |
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106548196A (zh) * | 2016-10-20 | 2017-03-29 | 中国科学院深圳先进技术研究院 | 一种针对非平衡数据的随机森林抽样方法及装置 |
CN106599935A (zh) * | 2016-12-29 | 2017-04-26 | 重庆邮电大学 | 基于Spark大数据平台的三支决策不平衡数据过采样方法 |
CN107333294A (zh) * | 2017-07-31 | 2017-11-07 | 南昌航空大学 | 一种结合AdaBoost和支持向量机的链路质量预测方法 |
CN107463766A (zh) * | 2017-06-23 | 2017-12-12 | 深圳市中识创新科技有限公司 | 血糖预测模型的生成方法、装置及计算机可读存储介质 |
CN107480721A (zh) * | 2017-08-21 | 2017-12-15 | 上海中信信息发展股份有限公司 | 一种牛只患病数据分析方法及装置 |
CN107563435A (zh) * | 2017-08-30 | 2018-01-09 | 哈尔滨工业大学深圳研究生院 | 基于svm的高维不平衡数据分类方法 |
CN108921604A (zh) * | 2018-06-22 | 2018-11-30 | 华南理工大学 | 一种基于代价敏感分类器集成的广告点击率预测方法 |
CN109272040A (zh) * | 2018-09-20 | 2019-01-25 | 中国科学院电子学研究所苏州研究院 | 一种雷达工作模式生成方法 |
CN109871862A (zh) * | 2018-12-28 | 2019-06-11 | 北京航天测控技术有限公司 | 一种基于合成少数类过采样和深度学习的故障预测方法 |
CN110222782A (zh) * | 2019-06-13 | 2019-09-10 | 齐鲁工业大学 | 基于密度聚类的有监督二分类数据分析方法及*** |
CN110276401A (zh) * | 2019-06-24 | 2019-09-24 | 广州视源电子科技股份有限公司 | 样本聚类方法、装置、设备及存储介质 |
CN110443281A (zh) * | 2019-07-05 | 2019-11-12 | 重庆信科设计有限公司 | 基于hdbscan聚类的自适应过采样方法 |
CN110852388A (zh) * | 2019-11-13 | 2020-02-28 | 吉林大学 | 基于K-means改进的SMOTE算法 |
CN111062425A (zh) * | 2019-12-10 | 2020-04-24 | 中国人民解放军海军工程大学 | 基于c-k-smote算法的不平衡数据集处理方法 |
CN111639716A (zh) * | 2020-06-04 | 2020-09-08 | 云南电网有限责任公司电力科学研究院 | 基于密度偏差抽样的数据样本选择方法及装置 |
US10826781B2 (en) | 2017-08-01 | 2020-11-03 | Elsevier, Inc. | Systems and methods for extracting structure from large, dense, and noisy networks |
CN112000705A (zh) * | 2020-03-30 | 2020-11-27 | 华南理工大学 | 一种基于主动漂移检测的非平衡数据流挖掘方法 |
CN112235293A (zh) * | 2020-10-14 | 2021-01-15 | 西北工业大学 | 一种面向恶意流量检测正负样本均衡生成的过采样方法 |
CN112365060A (zh) * | 2020-11-13 | 2021-02-12 | 广东电力信息科技有限公司 | 电网物联感知数据的预处理方法 |
CN112634022A (zh) * | 2020-12-25 | 2021-04-09 | 北京工业大学 | 基于不平衡数据处理的信贷风险评估方法与*** |
CN112861928A (zh) * | 2021-01-19 | 2021-05-28 | 苏州大学 | 一种面向不均衡语音数据集的数据生成方法及*** |
CN112951413A (zh) * | 2021-03-22 | 2021-06-11 | 江苏大学 | 一种基于决策树和改进smote算法的哮喘病诊断*** |
CN113052198A (zh) * | 2019-12-28 | 2021-06-29 | 中移信息技术有限公司 | 一种数据处理方法、装置、设备及存储介质 |
CN113159137A (zh) * | 2021-04-01 | 2021-07-23 | 北京市燃气集团有限责任公司 | 一种燃气负荷聚类方法及装置 |
CN113221433A (zh) * | 2021-06-04 | 2021-08-06 | 北京航空航天大学 | 一种基于密度信息的高速撞击碎片重构方法 |
CN113568739A (zh) * | 2021-07-12 | 2021-10-29 | 北京淇瑀信息科技有限公司 | 用户资源额度分配方法、装置及电子设备 |
CN114579631A (zh) * | 2022-01-26 | 2022-06-03 | 苏州大学 | 基于概率加权过采样的社区矫正率预测***及方法 |
CN114595742A (zh) * | 2022-01-18 | 2022-06-07 | 国网浙江省电力有限公司电力科学研究院 | 一种燃料电池故障数据采样方法及*** |
CN115374859A (zh) * | 2022-08-24 | 2022-11-22 | 东北大学 | 一种针对非平衡、多类别的复杂工业数据的分类方法 |
-
2016
- 2016-03-23 CN CN201610169101.0A patent/CN105930856A/zh active Pending
Cited By (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106548196A (zh) * | 2016-10-20 | 2017-03-29 | 中国科学院深圳先进技术研究院 | 一种针对非平衡数据的随机森林抽样方法及装置 |
CN106599935B (zh) * | 2016-12-29 | 2019-07-19 | 重庆邮电大学 | 基于Spark大数据平台的三支决策不平衡数据过采样方法 |
CN106599935A (zh) * | 2016-12-29 | 2017-04-26 | 重庆邮电大学 | 基于Spark大数据平台的三支决策不平衡数据过采样方法 |
CN107463766A (zh) * | 2017-06-23 | 2017-12-12 | 深圳市中识创新科技有限公司 | 血糖预测模型的生成方法、装置及计算机可读存储介质 |
CN107333294A (zh) * | 2017-07-31 | 2017-11-07 | 南昌航空大学 | 一种结合AdaBoost和支持向量机的链路质量预测方法 |
US10826781B2 (en) | 2017-08-01 | 2020-11-03 | Elsevier, Inc. | Systems and methods for extracting structure from large, dense, and noisy networks |
CN107480721A (zh) * | 2017-08-21 | 2017-12-15 | 上海中信信息发展股份有限公司 | 一种牛只患病数据分析方法及装置 |
CN107563435A (zh) * | 2017-08-30 | 2018-01-09 | 哈尔滨工业大学深圳研究生院 | 基于svm的高维不平衡数据分类方法 |
WO2019041629A1 (zh) * | 2017-08-30 | 2019-03-07 | 哈尔滨工业大学深圳研究生院 | 基于svm的高维不平衡数据分类方法 |
CN108921604A (zh) * | 2018-06-22 | 2018-11-30 | 华南理工大学 | 一种基于代价敏感分类器集成的广告点击率预测方法 |
CN108921604B (zh) * | 2018-06-22 | 2022-03-29 | 华南理工大学 | 一种基于代价敏感分类器集成的广告点击率预测方法 |
CN109272040A (zh) * | 2018-09-20 | 2019-01-25 | 中国科学院电子学研究所苏州研究院 | 一种雷达工作模式生成方法 |
CN109272040B (zh) * | 2018-09-20 | 2020-08-14 | 中国科学院电子学研究所苏州研究院 | 一种雷达工作模式生成方法 |
CN109871862A (zh) * | 2018-12-28 | 2019-06-11 | 北京航天测控技术有限公司 | 一种基于合成少数类过采样和深度学习的故障预测方法 |
CN110222782A (zh) * | 2019-06-13 | 2019-09-10 | 齐鲁工业大学 | 基于密度聚类的有监督二分类数据分析方法及*** |
CN110276401A (zh) * | 2019-06-24 | 2019-09-24 | 广州视源电子科技股份有限公司 | 样本聚类方法、装置、设备及存储介质 |
WO2020258772A1 (zh) * | 2019-06-24 | 2020-12-30 | 广州视源电子科技股份有限公司 | 样本聚类方法、装置、设备及存储介质 |
CN110443281B (zh) * | 2019-07-05 | 2023-09-26 | 重庆信科设计有限公司 | 基于hdbscan聚类的文本分类自适应过采样方法 |
CN110443281A (zh) * | 2019-07-05 | 2019-11-12 | 重庆信科设计有限公司 | 基于hdbscan聚类的自适应过采样方法 |
CN110852388A (zh) * | 2019-11-13 | 2020-02-28 | 吉林大学 | 基于K-means改进的SMOTE算法 |
CN111062425A (zh) * | 2019-12-10 | 2020-04-24 | 中国人民解放军海军工程大学 | 基于c-k-smote算法的不平衡数据集处理方法 |
CN111062425B (zh) * | 2019-12-10 | 2022-10-28 | 中国人民解放军海军工程大学 | 基于c-k-smote算法的不平衡数据集处理方法 |
CN113052198A (zh) * | 2019-12-28 | 2021-06-29 | 中移信息技术有限公司 | 一种数据处理方法、装置、设备及存储介质 |
CN112000705A (zh) * | 2020-03-30 | 2020-11-27 | 华南理工大学 | 一种基于主动漂移检测的非平衡数据流挖掘方法 |
CN112000705B (zh) * | 2020-03-30 | 2024-04-02 | 华南理工大学 | 一种基于主动漂移检测的非平衡数据流挖掘方法 |
CN111639716A (zh) * | 2020-06-04 | 2020-09-08 | 云南电网有限责任公司电力科学研究院 | 基于密度偏差抽样的数据样本选择方法及装置 |
CN111639716B (zh) * | 2020-06-04 | 2023-07-18 | 云南电网有限责任公司电力科学研究院 | 基于密度偏差抽样的数据样本选择方法及装置 |
CN112235293B (zh) * | 2020-10-14 | 2022-09-09 | 西北工业大学 | 一种面向恶意流量检测正负样本均衡生成的过采样方法 |
CN112235293A (zh) * | 2020-10-14 | 2021-01-15 | 西北工业大学 | 一种面向恶意流量检测正负样本均衡生成的过采样方法 |
CN112365060B (zh) * | 2020-11-13 | 2024-01-26 | 广东电力信息科技有限公司 | 电网物联感知数据的预处理方法 |
CN112365060A (zh) * | 2020-11-13 | 2021-02-12 | 广东电力信息科技有限公司 | 电网物联感知数据的预处理方法 |
CN112634022A (zh) * | 2020-12-25 | 2021-04-09 | 北京工业大学 | 基于不平衡数据处理的信贷风险评估方法与*** |
CN112861928A (zh) * | 2021-01-19 | 2021-05-28 | 苏州大学 | 一种面向不均衡语音数据集的数据生成方法及*** |
CN112951413B (zh) * | 2021-03-22 | 2023-07-21 | 江苏大学 | 一种基于决策树和改进smote算法的哮喘病诊断*** |
CN112951413A (zh) * | 2021-03-22 | 2021-06-11 | 江苏大学 | 一种基于决策树和改进smote算法的哮喘病诊断*** |
WO2022198761A1 (zh) * | 2021-03-22 | 2022-09-29 | 江苏大学 | 一种基于决策树和改进smote算法的哮喘病诊断*** |
CN113159137A (zh) * | 2021-04-01 | 2021-07-23 | 北京市燃气集团有限责任公司 | 一种燃气负荷聚类方法及装置 |
CN113221433A (zh) * | 2021-06-04 | 2021-08-06 | 北京航空航天大学 | 一种基于密度信息的高速撞击碎片重构方法 |
CN113568739A (zh) * | 2021-07-12 | 2021-10-29 | 北京淇瑀信息科技有限公司 | 用户资源额度分配方法、装置及电子设备 |
CN114595742B (zh) * | 2022-01-18 | 2023-09-08 | 国网浙江省电力有限公司电力科学研究院 | 一种燃料电池故障数据采样方法及*** |
CN114595742A (zh) * | 2022-01-18 | 2022-06-07 | 国网浙江省电力有限公司电力科学研究院 | 一种燃料电池故障数据采样方法及*** |
CN114579631B (zh) * | 2022-01-26 | 2023-04-07 | 苏州大学 | 基于概率加权过采样的社区矫正率预测***及方法 |
CN114579631A (zh) * | 2022-01-26 | 2022-06-03 | 苏州大学 | 基于概率加权过采样的社区矫正率预测***及方法 |
CN115374859A (zh) * | 2022-08-24 | 2022-11-22 | 东北大学 | 一种针对非平衡、多类别的复杂工业数据的分类方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105930856A (zh) | 基于改进dbscan-smote算法的分类方法 | |
Pashaei et al. | Binary black hole algorithm for feature selection and classification on biological data | |
Kang et al. | A weight-incorporated similarity-based clustering ensemble method based on swarm intelligence | |
Aliniya et al. | A novel combinatorial merge-split approach for automatic clustering using imperialist competitive algorithm | |
Okori et al. | Machine learning classification technique for famine prediction | |
Anand et al. | Predicting protein structural class by SVM with class-wise optimized features and decision probabilities | |
CN107291895B (zh) | 一种快速的层次化文档查询方法 | |
Wang et al. | An improved feature selection based on effective range for classification | |
Bayati et al. | MSSL: A memetic-based sparse subspace learning algorithm for multi-label classification | |
El Moutaouakil et al. | Optimal entropy genetic fuzzy-C-means SMOTE (OEGFCM-SMOTE) | |
Pervez et al. | Literature review of feature selection for mining tasks | |
Li et al. | Text classification based on ensemble extreme learning machine | |
CN111079074A (zh) | 一种基于改进的正弦余弦算法构建预测模型的方法 | |
CN113541834A (zh) | 一种异常信号半监督分类方法、***、数据处理终端 | |
Huang et al. | Identification of autistic risk candidate genes and toxic chemicals via multilabel learning | |
Zhou et al. | Region purity-based local feature selection: A multi-objective perspective | |
Qiu et al. | A multi-level knee point based multi-objective evolutionary algorithm for AUC maximization | |
Chen et al. | Multi-granularity regularized re-balancing for class incremental learning | |
Han et al. | An improved feature selection method based on angle-guided multi-objective PSO and feature-label mutual information | |
Li et al. | Imbalanced data classification based on improved EIWAPSO-AdaBoost-C ensemble algorithm | |
Zhang et al. | Discovering similar Chinese characters in online handwriting with deep convolutional neural networks | |
Tiwari et al. | Entropy weighting genetic k-means algorithm for subspace clustering | |
Liu et al. | A weight-incorporated similarity-based clustering ensemble method | |
Papakostas et al. | Evolutionary feature subset selection for pattern recognition applications | |
Zheng et al. | Adaptive particle Swarm optimization algorithm ensemble model applied to classification of unbalanced data |
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: 20160907 |