论文部分内容阅读
分类算法是当今机器学习领域中重要的研究方向之一,很多经典算法在实际问题中得到广泛的应用并取得了良好的效果。传统的分类算法假设数据分布均衡,并且以提高分类算法对数据集的整体分类正确率为主要目标。但现实中很多数据集中的不同类别包含的数据数量是高度倾斜、非平衡的,一个或几个类别中数据数量远远大于其他类别中数据数量,这样的数据集称为类别不平衡数据。其中数量上占优的一类或者几类称为多数类,其他称为少数类。传统分类算法分类不平衡数据时,以提高数据集的整体分类正确率为目标,由于少数类样例数量较少,因而预测倾向数量上占优的多数类,对少数类分类识别率不利;然而在很多实际问题中,提高少数类数据识别率往往比提高多数类数据识别率更有价值。然而在某些极端情况下,分类算法把少数类样例全部错分仍能保证较高的整体准确率。因此,如何提高分类算法对类别不平衡数据的分类性能,尤其提高分类算法对少数类的识别率,成为机器学习中研究热点之一。目前对不平衡数据分类问题的研究主要以下几个方面:首先是数据层面,即数据预处理算法,通常通过改变原有数据的分布,缩减其不平衡程度,达到平衡数据的目的,常用方法包括采样技术、特征提取技术等;其次是算法层面,即通过修改传统的分类算法,使之适应不平衡数据问题,从而在分类时倾向少数类,提高少数类数据识别率,常用技术如代价敏感学习,阈值方法等;最后是不平衡数据分类的性能评价标准,由于传统分类算法的性能评价标准通常会忽略算法分类少数类数据的识别率,所以如何选择满足不平衡数据分类的评价标准也是近年的研究热点之一,G-Mean、F-Measure等都是不平衡数据分类中常用标准。本文针对类别不平衡数据的分类问题,从数据层次以及算法层次两个方面展开研究,并在原有性能评价标准的基础上结合经典评价标准提出新的评价标准。主要创新成果有: (1)算法层面和数据层面相结合:将传统的Bagging算法和SMOTE算法相结合,使用SMOTE算法对样例集中的少数类样例进行加工,在Bagging算法中根据类别值和正确率对各个样例和基分类器的权重进行调整。通常情况下,大多数针对不平衡数据的算法只适用于二分类问题,本算法在此基础上进行改进,能够分类多类别不平衡数据。实验结果表明本文提出的算法在二类不平衡数据集和多类不平衡数据集上达到了既能保证整体的分类准确率,又能提高少数类分类精度的目的。(2)算法层面:在前人研究成果的基础上提出一种新的应用在人工神经网络中的阈值判定标准。并在理论上证明:该标准能够在不受样例类别比例的影响的情况下下使少数类及多数类分类精度同时取得最好。本标准以反向传播算法(BP算法)作为基分类器,结合遗传算法搜寻最佳阈值,实验结果表明:新标准所产生的阈值能够提高人工神经网络对少数类数据的分类准确率。另外,在此阈值判定标准的基础上初步提出一种新的评价标准。实验结果表明,此标准着重关注样例的错误率。(3)数据层面:针对SMOTE只能根据线性规则产生新样例的缺点,提出一种新的过采样方法。此新算法能够通过随机漫步的方式在少数类数据的基础上合成新的样例。经过理论证明,在某些假设条件成立的前提下,新算法所产生的合成样例的均值和方差同原始数据中的少数类数据的期望和方差相近。实验结果表明,从统计角度上讲,当在基分类器C4.5、Naive Bayes (NB)、k Nearest Neighbor (KNN)上使用多种过采样方法时,新算法明显优于其他采样方法。