在数据分类的研究中,普遍存在类别分布不平衡[1]的问题,即某一类别的样本数量远远多于另一类(分别称为多数类和少数类),具有这样特征的数据集视为不平衡。传统的分类算法,如支持向量机(SVM)在处理不平衡数据时,分类超平面往往会向少数类偏移,导致对少数类的识别率降低,而随机森林(random forest,RF[2])分类时易出现分类不佳、泛化误差变大等问题。针对支持向量机在训练样本点过程中存在的噪声和野点问题,不少研究学者提出了相应的改进算法。如台湾学者Lin等[3]提出模糊支持向量机(fuzzy support vector machines,FSVM),根据不同数据样本对分类的贡献不同,赋予不同的隶属度,将噪声和野点与有效样本区分开,然而实际数据集中除了存在噪声和野点,不同类别的样本个数差异也会影响算法的分类精度。目前对不平衡数据分类的研究主要集中在算法层面和数据层面的改进,如通过对不平衡数据集进行欠采样(under-sampling[4])、过采样(SMOTE[5])、不同惩罚因子的方法(different error costs,DEC[6])和集成学习方法[7]等,这些方法在处理不平衡数据时一定程度上提高了少数类的分类精度,然而欠采样在删除样本点时易造成重要信息的丢失,过采样又会带来信息的冗余,并增大算法时间复杂度,代价敏感学习算法虽然定义了正负类不同的惩罚因子,但却没有考虑到样本点的实际分布情况,这些问题又会直接影响算法的分类效果。传统的分类方法在构建分类模型时仅考虑了数据样本点的物理特征(如距离、相似度等),并没有更深层次地挖掘数据点之间的关联特征,但实际应用中的数据集样本之间并不是孤立存在的,它们之间除了位置上的差异,关联信息也是不可忽略的。
Silva等[8-9]将仅考虑样本点物理特征的传统分类方法视为低层次分类,把数据样本点看作网络节点,提出了基于网络信息特征的高层次数据分类方法,在训练样本点分类模型时既考虑了样本点的位置关系,又考虑到了数据点之间的拓扑特征,将两个层次的分类器有效地结合,并在数字图像识别中取得较高的准确度。Carnerio等[10]提出了基于复杂网络的新型分类器,通过KNN法或KAOG[11]法建立子网络模型,利用谷歌PageRank度量方法赋予网络节点不同影响力概念,依据Spatio structural effi-ciency和节点间的距离特征实现分类。文献[12]针对复杂网络中的链路预测问题介绍了多种基于局部和全局结构的节点相似度模型,分析出实际复杂系统中网络节点的相互影响关系,两个节点之间产生连边的概率大小是由网络拓扑结构和几何结构共同决定的。文献[13]中把链路预测问题视为一个二分类问题,提出了一个数据分类问题的概率模型,将待测样本点的类别归属于相似度分数高的类。
鉴于高层次数据分类方法在无偏数据集上的优越性,本文从数据样本点的物理特征和拓扑特征方向出发,综合考虑数据点之间的位置关系和关联信息,提出基于网络拓扑特征的不平衡数据分类方法(imbalanced data classification of network tolopogy characteristics,NT-IDC)。首先利用KNN法建立与每类数据点对应的网络结构,将数据样本实例对应网络中的节点,使具有相同类别的网络节点之间产生连边,并依据其连接特性计算出每个节点的局部效率作为拓扑信息,应用基于距离倒数的相似度作为两个节点产生连边概率的物理特征,将拓扑特征与样本点的物理特征一起作为判别测试点类别归属的依据,为了克服由不同类别的数据样本点个数差异带来的影响,构建了一种引入不平衡因子
基于网络拓扑特征的不平衡数据分类算法包括两个阶段:网络的构建和测试点的类别预测。利用较为常见的KNN法对训练数据集
复杂网络由图论逐渐发展而来,基于图论的网络结构模型在表达数据之间的关系时具有明显的优势[14-16],本文所提出的方法在计算网络节点局部效率时正是建立在图论的基础上。网络中的节点可以既是起点又是尾点,因此由数据样本点的连接关系所建立的图是有向的,为了更多地挖掘网络中的数据点之间的拓扑关系,在数据样本点训练阶段,充分考虑每个节点的连接特性,赋予节点不同的效率,使节点之间具有差异性,本文计算网络节点的局部效率公式[17]为
${p_i} = \left\{ {\begin{array}{l} {\delta ,}\quad{{D_{ i}} = 0} \\ {\frac{1}{{{D_{ i}}}}\sum\limits_{{e_{ ij}}} {{d_{ ij}},} }\quad{{D_{ i}} > 0} \end{array}} \right.$ | (1) |
式中:
Download:
|
|
将数据样本点映射成网络节点,则待测样本点的类别归属与网络中的每个节点都有关系,一般来说,距离越近的两个节点属于同类的可能性就越大。
基于这种思想,本文用距离倒数表示网络节点之间的物理特征,则节点
${S_{i,j}} = \frac{1}{{D(i ,j)}}$ |
式中
任给一个网络,未知标签信息的节点类别用0表示,对网络中任意一对节点
$p({l_i}\left| u \right.) = \frac{{\sum\limits_{\{ v\left| {v \ne u} \right.,{\rm{Index}}(v) = {l_i}\} } \!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!{{S_{u,v}}} }}{{\sum\limits_{\{ v\left| {v \ne u} \right.,{\rm{Index}}(v) \ne 0\} } \!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!{{S_{u,v}}} }}$ |
式中:
Download:
|
|
本文算法是从网络节点的连接特性中提取出拓扑特征与数据样本点的距离相似度,并一起用于实现数据分类。具体地,在引入不平衡因子的条件下,将子网络中每个节点的局部效率与节点间的欧式距离结合起来,根据测试样本点与每个子网络的整体性测度来确定类别归属。
2.1 相似性测度文献[10]中是将子网络效率与待测节点之间的物理特征结合在一起,考虑到网络中摇摆节点的存在,仅仅利用平均功率无法有效地分辨出对分类结果影响较小的节点,为了更好地区别单个节点对测试点分类结果的影响,本文将每个节点的局部效率分别与物理特征结合到一起,可以对影响较小的样本点有较好的识别,其表达式为
${\varepsilon _{t n}} = \sum\limits_i {\frac{{{p_{ i}}}}{{{S_{ t,i}}}}} $ | (2) |
式中:
传统的有监督和无监督的分类器构建多是以数据样本点的物理特征作为判别依据,但实际数据集中的数据点并不是孤立存在的,正如链路预测问题中一个节点的两个邻居节点之间是否建立连边除了受共同邻居个数的影响外,还与共同邻居的性质,如度、聚类系数和介数中心性等有关。把每个节点看成独立或同等分布是有缺陷的,不符合实际数据集的样本点之间的关系,利用整体性测度大小去判断待测样本点的类别归属,正是将数据点的物理特征和关联特征结合在一起的体现,对于测试样本点
${\varphi _{t n}} = \frac{{{\varepsilon _{t n}} + c}}{{\sum\limits_{n = 1}^m {{\varepsilon _{t n}} + {\rho _{ n}} \cdot c} }}$ | (3) |
式中:
算法 网络拓扑特征的不平衡数据分类
输入 训练集
输出 测试集标签
1) 构建网络;
2) 根据式(1)计算网络节点局部效率;
3) 根据式(2)计算待测节点与每个子网络的相似性测度;
4) 根据式(3)计算待测节点与每个子网络的整体性测度;
5) 依据整体性测度的大小预测待测样本点的标签。
对于本文所提算法的时间复杂度分析:假设用于建立网络的样本点个数为
传统的分类方法多采用正确率(测试样本点中正确分类的个数占总的个数的比例)作为评价指标,其对应的混淆矩阵可用来表示实际分类情况,见表1所示。表1中,TP+FN=N +,FP+TN=N −,N +为测试样本正类数,N −为测试样本负类数。
然而,对于非平衡数据集则采用不平衡分类中的敏感性Se和特异性Sp作为性能评价的两个辅助指标,几何平均值Gm和F-value作为综合性指标,它们在一定程度上可用来衡量算法的优劣,其定义为
$\rm{Se} = {\rm{TP}}/({\rm{TP}} + {\rm{FN}})$ | (4) |
$\rm{Sp} = {\rm{TN}}/({\rm{FP}} + {\rm{TN}})$ | (5) |
$\rm{Gm} = \sqrt {{\rm{Se}} \times {\rm{Sp}}} $ | (6) |
式中:Se代表分类器在少数类样本上的预测能力;Sp代表分类器在多数类样本上的预测能力。Se和Sp的值越大表示分类效果越好,但现实不平衡数据中往往少数类样本携带更有价值的信息,所以在实际应用中更应该想着如何提高Se值。
F-value是查全率Rc和敏感性Se的平均值,
$\rm{F} - {\rm{value}} = \frac{{(1 + {\beta ^2}) \times {\rm{Rc}} \times {\rm{Se}}}}{{{\beta ^2} \times {\rm{Rc}} + {\rm{Se}}}}$ | (7) |
为了验证本文所提分类方法的有效性,首先用一个人造数据集给出证明,实验中得出的结果均是在MATLAB 2012a软件上运行得出的,台式计算机具体配置为:系统为64位的Windows10企业版,处理器为Intel(R) Core(TM) i7-6700CPU,内存大小8 GB。本文实验中非线性的核函数使用较为广泛的Gauss径向基(RBF)核函数。考虑到SVM在数据分类上是具有代表性的算法,本文用来对比的算法均使用SVM作为基分类器,Under-sampling中使用基于欧氏距离的欠采样方法[19],DEC中正负类样本的惩罚因子设置为样本个数不平衡比,SMOTE中最近邻个数设置
在二维空间中随机生成样本点不平衡比为1000:50的线性不可分数据集(见图3),其样本点符合正态分布,多数类含有1 000个样本点,少数类含有50个样本点,采用基于网络拓扑特征的不平衡数据分类方法与其他经典算法相比较,表2给出了各算法在该数据集上的分类结果,从表中可以看出,本文所提方法对不平衡数据集具有良好的分类性能。
Download:
|
|
从UCI机器学习数据库选择了10组不平衡的数据集来进行实验。所用数据集样本点个数范围为214~5 000,样本点的属性维数范围为3~34,有的数据集可能有多种类别,本文仅考虑二分类问题,对于类别不是两类的就先把数据集都变为两类,把其中某类或某几类看作正类,剩下的所有类合并为负类,10个数据集的详细信息如表3所示。
为了验证算法在真实数据集上的有效性,表4和表5分别给出了不同算法在少数类和综合指标性能上的对比结果。在表4中,本文算法在少数类预测能力上效果较好,除Yeast和Ecoli外,其余数据集都优于对比算法。表5中,相比较SVM,其他算法在不平衡数据分类中的精度都有了一定的提高,当不平衡比率较大时,SVM的分类效果会变得较差,DEC算法虽然考虑了数据的不平衡性,但没能很好地考虑到样本点的分布情况,本文算法则较好地处理了这一问题,对样本点间有关联特征的数据集如Haberman、Ecoli、Glass、Imagesegment、wireless和contraceptive本文算法均取得了最优的分类结果。
对于数据集Haberman、Ecoli和waveform,本文算法的Gm值平均提高了2%左右,但是在数据集Yeast和Vowel上,由于节点之间的关联信息不明显,算法所能挖掘的网络信息受限,对部分测试点无法做出正确地判断,没有取得最好的效果,但与SVM、FSVM、DEC、SMOTE和Under-sampling分类方法所取得分类结果相差不大,表明NT-IDC算法仍有待改进。对于正负类样本不平衡比率大的数据集,因为本文算法提高了少数类分类性能,在Gm值一定的前提下,当FP值变大时,Rc值变小,使得Glass、Vowel和Yeast数据集上的F-value值有所波动,在处理样本点个数较多的数据集如waveform上正是因为考虑了数据点间的关联信息,所以才表现出一定的优越性。综上分析,本文所提算法在考虑到影响不平衡数据分类因素的条件下,表现出良好的分类性能,充分说明了将数据点之间关联特征作为数据分类性能影响因素的合理性。
3.3 参数敏感性分析为了更好地了解本文算法中参数对数据分类效果的影响,在实际数据集Haberman、Glass、Inno-sphere、Ecoli、和Imagesegment上分析不平衡因子
Download:
|
|
Download:
|
|
从图4中观察到,不平衡因子
本文针对不平衡数据分类问题,考虑到传统分类方法在实际数据集中存在的缺陷,提出一种更符合数据集样本点真实关系的数据分类方法,算法中除利用数据点的物理特征外,还充分挖掘了由这些数据点所建立的网络拓扑特征,实验结果表明基于网络结构去解决不平衡数据分类问题是一个可行的途径,除此之外,本文提出的算法仍能够应用于多分类问题。在未来的研究中,将探索如何更有效地挖掘隐藏在网络中的节点行为,找到更加符合数据样本点之间的拓扑特征,例如考虑除节点局部效率外的其他性质,不同的数据集
[1] | HE Haibo, GARCIA E A. Learning from imbalanced data[J]. IEEE transactions on knowledge and data engineering, 2009, 21(9): 1263-1284. DOI:10.1109/TKDE.2008.239 (0) |
[2] | KHOSHGOFTAAR T M, GOLAWALA M, VAN HULSE J. An empirical study of learning from imbalanced data using random forest[C]//Proceedings of the 19th IEEE International Conference on Tools with Artificial Intelligence. Patras, Greece, 2007: 310–317. (0) |
[3] | LIN Chunfu, WANG Shengde. Fuzzy support vector machines[J]. IEEE transactions on neural networks, 2002, 13(2): 464-471. DOI:10.1109/72.991432 (0) |
[4] |
程险峰, 李军, 李雄飞. 一种基于欠采样的不平衡数据分类算法[J]. 计算机工程, 2011, 37(13): 147-149. CHENG Xianfeng, LI Jun, LI Xiongfei. Imbalanced data classification algorithm based on undersampling[J]. Computer engineering, 2011, 37(13): 147-149. DOI:10.3969/j.issn.1000-3428.2011.13.047 (0) |
[5] | CHAWLA N V, BOWYER K W, HALL L O, et al. SMOTE: synthetic minority over-sampling technique[J]. Journal of artificial intelligence research, 2011, 16(1): 321-357. (0) |
[6] | VEROPOULOS K, CAMPBELL I C G, CRISTIANINI N. Controlling the sensitivity of support vector machines[C]//Proceedings of the International Joint Conference on Artificial Intelligence. Stockholm, Sweden, 1999: 55–60. (0) |
[7] |
张银峰, 郭华平, 职为梅, 等. 一种面向不平衡数据分类的组合剪枝方法[J]. 计算机工程, 2014, 40(6): 157-161, 165. ZHANG Yinfeng, GUO Huaping, ZHI Weimei, et al. An ensemble pruning method for imbalanced data classification[J]. Computer engineering, 2014, 40(6): 157-161, 165. DOI:10.3778/j.issn.1002-8331.1204-0414 (0) |
[8] | SILVA T C, ZHAO Liang. Network-based high level data classification[J]. IEEE transactions on neural networks and learning systems, 2012, 23(6): 954-970. DOI:10.1109/TNNLS.2012.2195027 (0) |
[9] | SILVA T C, ZHAO Liang. High-level pattern-based classification via tourist walks in networks[J]. Information sciences, 2015, 294: 109-126. DOI:10.1016/j.ins.2014.09.048 (0) |
[10] | CARNEIRO M G, ZHAO Liang. Organizational data classification based on the importance concept of complex networks[J]. IEEE transactions on neural networks and learning systems, 2018, 29(8): 3361-3373. DOI:10.1109/TNNLS.2017.2726082 (0) |
[11] | BERTINI JR J R, ZHAO Liang, MOTTA R, et al. A nonparametric classification method based on K-associated graphs [J]. Information sciences, 2011, 181(24): 5435-5456. DOI:10.1016/j.ins.2011.07.043 (0) |
[12] | LÜ Linyuan, ZHOU Tao. Link prediction in complex networks: A survey[J]. Physical A: statistical mechanics and its applications, 2011, 390(6): 1150-1170. DOI:10.1016/j.physa.2010.11.027 (0) |
[13] | ZHANG Qianming, SHANG Mingsheng, LÜ Linyuan. Similarity-based classification in partially Labeled networks[J]. International journal of modern physical C, 2010, 21(6): 813-824. DOI:10.1142/S012918311001549X (0) |
[14] | BIRX D L, PIPENBERG S J. A complex mapping network for phase sensitive classification[J]. IEEE transactions on neural networks, 1993, 4(1): 127-135. DOI:10.1109/72.182703 (0) |
[15] | WANG Meng, FU Weijie, HAO Shijie, et al. Learning on big graph: label inference and regularization with anchor hierarchy[J]. IEEE transactions on knowledge and data engineering, 2017, 29(5): 1101-1114. DOI:10.1109/TKDE.2017.2654445 (0) |
[16] | CONG Chen, LIU Tongliang, TAO Dacheng, et al. Deformed graph laplacian for semisupervised learning[J]. IEEE transactions on neural networks and learning systems, 2015, 26(10): 2261-2274. DOI:10.1109/TNNLS.2014.2376936 (0) |
[17] |
顾苏杭, 王士同. 基于数据点本身及其位置关系辅助信息挖掘的分类方法[J]. 模式识别与人工智能, 2018, 31(3): 197-207. GU Suhang, WANG Shitong. Classification approach by mining betweenness information beyond data points themselves[J]. Pattern recognition and artificial intelligence, 2018, 31(3): 197-207. (0) |
[18] | TSANG I W H, KWOK J T Y, ZURADA J M. Generalized core vector machines[J]. IEEE transactions on neural networks, 2006, 17(5): 1126-1140. DOI:10.1109/TNN.2006.878123 (0) |
[19] |
赵自翔, 王广亮, 李晓东. 基于支持向量机的不平衡数据分类的改进欠采样方法[J]. 中山大学学报(自然科学版), 2012, 51(6): 10-16. ZHAO Zixiang, WANG Guangliang, LI Xiaodong. An improved SVM based under-sampling method for classifying imbalanced data[J]. Acta Scientiarum Naturalium Universitatis Sunyatseni, 2012, 51(6): 10-16. (0) |