当前位置:首页 期刊杂志

基于优化SMOTE 算法的非平衡大数据集分类研究

时间:2024-08-31

唐思均

(宜宾职业技术学院 电子信息与人工智能学院,四川 宜宾 644000)

随着信息产业、互联网技术及计算机科学技术的发展和进步,人类已经迈入大数据时代。在以大数据为主要驱动力的社会经济发展模式下,除数据总量之外,数据结构也是影响数据认知和数据应用的重要因素之一[1-2]。当前,伴随着大数据总量的井喷,大数据集不平衡问题日益凸显出来[3-4]。在不平衡大数据集中,某个特定的单一类别数据类型占据绝对统治地位,这导致总体数据类别与结构分布的不平衡[5],少数类别数据更不容易被识别和利用,进而降低了大数据集整体分类的精度及应用的可靠性[6]。数据集的非均衡性主要表现为大数据集中存在的数据类别不均衡、各类样本在数据集中的分布不均衡及个别样本数据的交叉与重叠[7-8]。在海量数据规模条件下,少数类别数据中通常也包含着大量关键信息,例如,在医学研究领域中,少数患者的病例样本对于核心医疗技术的突破具有重要的意义;在网络安全防范中,对于个别恶意代码的检测与识别,是互联网入侵检测防范的关键。

鉴于大数据集在总量和结构上的特点,利用机器学习的方法[9]和人工智能方法[10],进行大数据分类是必然的选择。近年来,以人工神经网络方法、朴素贝叶斯方法、遗传算法、粒子群算法和智能SVM 算法等为代表的机器学习方法,在大数据分类中得到了广泛的应用,也获得了良好的效果。但是,现有的机器学习方法和人工智能方法在处理非平衡大数据过程中,数据分类往往更倾向于多数类别,在数据处理的客观性、准确性和处理效率方面都存在问题,无法获得更好的数据分类效果,而处理非平衡大数据的意义在于能够挖掘出少数数据样本中蕴含的关键信息,并提高大数据分类的精度。经典SMOTE算法(少数类样本合成过采样)是处理非平衡数据集的有效算法之一[11-12],但该算法本身也存在明显的短板和不足,如插值数据的有效性问题、样本数据的边界控制问题等。为此,本文在经典SMOTE 算法的基础上,进行了深度优化和改进,提高分类器的泛化性能与分类准确性,以获得更好的大数据集分类效果。

1 SMOTE算法的优化与改进

在非平衡大数据集中,多数类数据与少数类数据之间的数量差距较大,且两类数据之间边界较为模糊[13],导致数据分类的难度高。经典SMOTE 算法的思想是以插值的方式,增加少数类别样本的数目,使大数据集在数据总量上趋近于平衡。以不平衡数据集中的任意一个少数类样本xq为研究对象,随机抽取n个位于xq周围的临近样本,样本集合表示为Z={ }z1,z2,…,zj,…,zn。基于少数类样本xq与临近集合Z之间的关系插值,增加少数类样本的数量,并得到插值样本kq:

其中,ξ(0,1)为(0,1)区间范围内的任意随机实数,此时所抽取的样本总数n为采样倍率[14]。经过插值后少数类样本数据总量与多数类样本数量可以实现局部的相对均衡[15-16],更有利于提高大数据在分类过程中的准确率。但经典SMOTE算法在实际应用中存在一定的局限性,主要表现在以下几个方面:

1)数据插值的有效性存在问题,当插值样本出现在散列数据点的中心位置时,不仅无法改善两类数据的分类精度,相反还增加了原有少量数据的噪点,影响数据分类的效果;

2)经过插值处理后,原有少数类数据的分布状态和模式会发生改变,导致数据的关键特征在分类后无法有效提取,细节丢失,还会造成孤立数据点的过量存在[17];

3)由于随机性插值的原因,原有两类样本之间边缘模糊性加剧,增加了不同类别数据分类的难度[18]。

针对经典SMOTE 算法的不足,提出了优化的SMOTE 算法,其基本原理是在插值过程中引入数据聚类分析思想,并先对少数类数据做预处理,按照少数类样本中的数据类别特点,赋予样本数据以不同的采样倍率。经过优化的SMOTE算法需要避免插值过于随机,对临近集合Z中的数据做分类处理,即将集合的数据进一步分为安全样本、危险样本和干扰样本。如果随机抽取的集合Z中的全部数据为少数样本或少数类样本占大多数,此样本为安全样本;若集合中多数数据样本多于少数类数据样本,此样本为危险样本;如果集合中的数据全部为多数类样本,此样本可以确认为干扰样本。当少数类样本xq的临近样本集合不是噪声样本时,在样本zi和zj之间随机线性插值,生成采样倍率为n的临时样本:

在非均衡大数据集中,少数类样本xq的线性插值x'q可以表示为

于道邃,敦煌人,少而失荫,叔亲养之,邃孝敬竭诚,若奉其母。至年十六出家,事兰公为弟子。学业高明,内外该览,善方药,美书札,洞谙殊俗,尤巧谈论。护公常称邃高简雅素,有古人之风,若不无方,为大法梁栋矣。后与兰公俱过江,谢庆绪大相推重。性好山泽,在东多游履名山。为人不屑毁誉,未尝以尘近经抱。后随兰适西域,于交趾遇疾而终,春秋三十有一矣。郗超图写其形,支遁著铭赞③〔梁〕释慧皎:《高僧传》卷4《于道邃传》,中华书局,1992年,第169-170页。。

当少数类样本xq的临近样本集合确定为噪声样本时,为了降低风险,将采样倍率设定为1。经过聚类优化后的数据插值方式目的性增强,随机性显著减弱,算法的基本分类性能能够得到保证。

2 基于优化SMOTE 算法的数据预处理与分类

2.1 非均衡数据集中少数类数据聚类预处理

对于SMOTE算法而言,改善插值的随机性,根据临近随机样本中的数据构成插值,并以插值的结果作为数据分类的基础,控制噪点增加,使数据边界模糊的问题得到改善。按照临近随机数据集合中数据类别聚类处理,获取簇心并以簇心为基点进行过采样处理,插值后的数据边界更为清晰,有助于后续利用智能SVM 分类器对非均衡大数据集实施分类。按照少数类样本xq周围的临近样本内部的数据结构聚类,假定按照内部数据结构的不同分为3个簇,簇心选举及聚类的过程如图1所示。

图1 基于聚类思想的数据预处理

对少数类样本xq临近样本数据聚类处理后,集合Z中的数据被划分成了3 种类别,此时应有针对性地基于少类样本簇(A 簇)进行插值,既能够有效抑制噪声数据规模的不断扩大,保持少数类数据的分布状态,还可以使插值处理后的两类数据边界更为清晰。针对图1 中的A 簇进行数据的过采样操作,具体的操作过程如图2所示。

图2 少类样本的过采样操作

在少类样本簇心节点与少类样本数据之间连线,建立关联关系,在连线上插值合成样本。插值样本一方面避免了在传统SMOTE算法下插值过于随机的弊端,另一方面合成数据被控制在原来的区域,不会越界到危险样本和干扰样本区域,两类数据的边界也不会模糊。改进SMOTE算法的特征属性插值方式,确保了少数类数据过采样插值的合理性与可靠性,从根源上杜绝了无效插值和干扰插值,能够保留原有数据集数据的分布状态和模式。

2.2 数据过采样区间化处理与非均衡大数据分类

基于线性插值的过采样方式得到的数据类型过于集中,为使复杂条件下的各指标更加可控,对插值后的样本做区间化处理。定义插值后数据集中多数类样本数量为Nmax,少数类样本数量为Nmin,计算大数据集的非平衡比例ς为

则此时需要区间化均衡处理的过采样样本数据量m为

给定一组非均衡大数据样本过采样离散程度区间集合H={h1,h2,…,hm},区间化离散程度将避免插值后的数据过于集中。基于区间化离散程度值对插值后的少数类样本集合做区间化处理,得到一组新的区间化数据集X:

其中,函数G(x)为高斯随机函数,经过区间化处理后的样本数据量与插值后的数据量保持一致,但样本区间的均匀度得到了改善。非平衡大数据集在经过改进SMOTE 算法插值与均衡化处理后,再基于SVM 算法重新建模,用区间数表示大数据分类模型的上下界限,则改进后新的非均衡大数据集智能SVM分类模型表示如下:

式中,κi表示分类后的数据集中的第i个数据项;zi表示与xi对应的插值样本;hj表示与xi不相同的随机离散程度值。

经改进SMOTE算法处理后的大数据集平衡度得到改善,再引入区间化指标体系后,智能SVM 分类器的功能进一步完善,基于改进SMOTE 算法的数据训练与分类流程如图3所示。

图3 基于改进SMOTE算法的大数据分类流程

应用改进的SMOTE算法有目的性地针对少数类样本插值计算,保证了复制合成的样本全部为少数类样本;而针对合成数据的过采样空间化处理,又解决了数据插值过于集中和簇内不均衡的状况。大数据集数据总量平衡后,再基于改进SMOTE 算法和智能SVM 分类器的特点调整模型参数值,将全部待分类的不均衡数据代入分类器模型进行训练,能够获得更好的大数据分类效果。

3 算法性能验证

为验证改进SMOTE 分类算法针对非均衡大数据的分类性能,搭建一个Hadoop 大数据集群系统,系统的实验环境与软硬件环境设置如表1所示。

实验所用数据集来源于加州大学欧文分校的UCI通用数据库,共选择了6组数据集,并计算了少数类样本数量与数据集的非平衡度比例,实验所用样本数据集的具体构成如表2所示。

3.1 算法的规模成长性分析

分类算法的规模成长性是指在Hadoop 集群节点数量不变的前提下,扩大数据集规模的能力,规模成长性越强,表明算法的性能更强,适用性更好。实验中集群节点设定为16 个,分别取1、12、14、18和116倍的原非均衡数据集测试,并观测经典SMOTE 算法和改进SMOTE 算法下数据集的规模成长性情况,如表3和表4所示。

表4 改进SMOTE算法数据集的规模成长性 s

根据表中数据显示,在5 种数据集中,每种原型倍数下改进SMOTE算法的数据规模成长性都优于传统算法,具有更强的规模数据集扩展能力,将会带来更强的数据分类性能。

3.2 非均衡数据集分类性能比较

为了更直观地对比不同算法下的非均衡大数据分类性能,除与经典SMOTE算法对比之外,还引入了神经网络方法参与对比。比较3 种分类算法的AUC(Area under the Curve)性能。AUC 是判断数据二次分类性能的重要指标,在不同数据集下各算法的AUC指标值如表5所示。

表5 不同算法下的AUC比较

在处理各类非均衡数据集过程中,神经网络方法的性能最弱,尤其是数据集的属性较多时,改进SMOTE 分类算法的优势较为明显。利用MAT‐LAB8.0软件仿真,分别对比3种算法在不同非均衡数据集分类过程中的在G-mean 值和F-measure值。F-measure值的统计分析结果如图4所示。

图4 针对各数据集不同算法的F-measure值

在F-measure 值的综合表现方面,基于神经网络的分类方法性能表现最差,改进SMOTE 分类算法的F-measure值超过90%。

G-mean值的统计分析结果如图5所示。

图5 针对各数据集不同算法的G-mean值

在G-mean 值的测量与统计分析中,经典SMOTE 算法的性能衰减过快,尤其是针对属性数较多的Iris数据集和Heart,神经网络算法的性能表现与经典SMOTE 算法相当,而此时改进SMOTE算法针对非均衡大数据集分类优势更为明显。通过算法性能验证及数据对比分析可知,优化数据插值方式能够显著改善经典SMOTE 算法的性能,获得更好的分类效果。

4 结语

当前大数据的应用范围和领域不断拓展,对于非平衡大数据的研究,逐渐成了数据分析和挖掘过程中的一个重点问题。非平衡大数据集的主要特征在于数据总量和结构的不均衡性,这种数据总量和类别上的差异,会导致数据分类精度的降低,以及少数类关键数据特征提取难度的增加。在一些特定的大数据分析场景中,少数类数据中往往包含着关键的信息,如果对数据集的分类不准确,将导致这些核心数据的丢失。尽管经典SMOTE算法为非平衡大数据分类提供了一条解决路径,但该算法在同类数据插值方面存在局限性,限制了算法性能的发挥。本文在经典SMOTE 算法的基础上,采用一种分簇理念解决了原有算法在插值方面过于随机的缺陷,进一步提高了非平衡大数据的分类精度。经过优化的SMOTE算法的优势在于能够更好地处理数据集中多数类数据与少数类数据间的对立关系,改善大数据集的不均衡状况。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!