面向软件缺陷预测的类不平衡数据生成方法研究
发布时间:2021-06-15 01:00
软件缺陷预测技术通过对软件历史数据进行分析,利用分类、排序等模型,识别潜在有缺陷的软件模块。软件缺陷预测模型构建过程中,有缺陷样本数远小于无缺陷样本数,且分布不均匀,存在严重的类间不平衡和类内不平衡问题,这两种情况都会对构建预测模型产生负面影响。为了减少数据不平衡对预测模型的影响,在软件缺陷预测模型构建的四个阶段都存在相应的方法对数据不平衡进行修正,包括数据采样、特征提取、分类器优化以及评价标准。其中数据采样是缺陷预测模型构建的初始阶段,在初始阶段对数据不平衡进行修正可直接减小后续阶段执行的复杂度。处理类不平衡问题的常用数据采样方法通过调整样本的数量达到类间平衡,但分布通常遵循原有分布,类内平衡没有改善。本文针对样本分布,提出一种软件缺陷预测类不平衡数据生成方法,根据样本特征空间中分布情况进行聚类划分,对划分后的子区域依据不同分布情况采用不同策略进行有缺陷样本数据合成,通过增加数量达到有缺陷和无缺陷样本类间平衡,通过不同区域数据生成密度的不同改善有缺陷样本类内分布。为了验证本文方法的有效性,本文在9个已公开缺陷预测数据集上进行了实验,对比了本文方法与现有数据生成方法,并在不同分类算法下...
【文章来源】:北京化工大学北京市 211工程院校 教育部直属院校
【文章页数】:76 页
【学位级别】:硕士
【部分图文】:
图1-1软件缺陷预测过程??Fi.?1-1?Software?Defect?Prediction?Process??
不平衡问题下的软件缺陷预测??数据不平衡包括类间不平衡和类内不平衡问题。实际的软件数据集内有缺陷样本??数远小于无缺陷样本数,存在类间不平衡。数据集内有缺陷样本分布不均匀,有缺陷??样本可以被划分为多个子簇,且子簇间的样本数量差距很大,存在类内不平衡。本章??将对类间不平衡问题和类内不平衡问题进行介绍,并介绍在数据不平衡问题下的现有??研宄。本章详细介绍了几种基于数据采样的不平衡数据处理方法。??2.?1类间不平衡与类内不平衡??类间不平衡是指数据集内不同类别的样本数量相差很大,如图2-l(a)所示,黑色??五角星代表的样本数量远小于圆形样本的数量,可以称黑色五角星为少数类样本,圆??形为多数类样本,这两类样本数量差距很大,属于类间不平衡。在实际问题中,少数??类样本往往是关注的重点,需要较高的分类准确率。但是大多分类算法是基于数据分??布平衡设计的,分类器在分类时会更倾向于多数类样本,使大量少数类样本被误分,??造成分类结果的不准确。??,B;?G?mnil?Minority?Cia?*??f,?t??(a)?(b)??图2-1数据不平衡情况示意图??Fig.?2-1?Schematic?diagram?of?imbalance?data??类内不平衡是指数据集内某一类的样本分布不均匀,这类样本可以划分出多个子??簇,每个子簇的样本数量相差较大。如图2-1所示,A代表圆形类中数量较多的子类??集合、D代表圆形类中数量较少的子类集合、B代表五角星中数量较多的子类集合、??C代表五角星中数量较少的子类集合,可以看出无论是圆形类还是五角星类都存在类??内不平衡。类内不平衡可能引起小析取问题,即分类器通过创建规则来
。??因此,类间不平衡问题和类内不平衡问题都会影响分类结果的准确性。??2.?2数据不平衡问题下的软件缺陷预测模型??软件缺陷预测中有缺陷的样本数量远远小于无缺陷的样本数量,存在类间不平衡??问题;数据集中的有缺陷样本内部分布不均匀,存在类内不平衡问题,这两种类不平??衡将严重影响分类预测的结果。??无缺陷?无缺陷?有缺陷?有缺陷??/===?]?介?卜?pr??^^?无缺陷??原始数据粢""?数据采样?|?特征选择 ̄?|?分类器优化 ̄?评价标准??图2-2不平衡数据下软件缺陷预测模型??Fig.2-2?Defect?prediction?model?based?on?unbalanced?data??目前研宄热点主要在于如何在构建缺陷预测模型阶段减弱不平衡数据带来的影??响。图2-2描绘了软件缺陷预测模型在四个主要构建阶段对不平衡数据进行的处理。??面对无缺陷样本多于有缺陷样本,第一阶段数据采样阶段希望通过增加或减少样本数??而使数据集达到平衡,即有缺陷样本数与无缺陷样本数相差不大;第二阶段特征选择??则是结合特征选择算法,从己有特征中选取更有利于将有缺陷样本分出的特征,一方??面删除无用特征,一方面对高维特征进行降维,减少计算成本;第三阶段为分类器优??化阶段,许多机器学习算法被引入软件缺陷预测问题中来,但是单一种类的分类器在??不同数据分布下的表现程度不同,特别是在不平衡数据下,大部分分类器表现不佳,??因此需要优化分类器以实现对不平衡数据的良好分类;第四阶段为评价标准,机器学??习中最为常用的评价标准就是分类准确率,在面对不平衡问题时,如果仅以分类准确??率作为评价标准,即使将有
本文编号:3230582
【文章来源】:北京化工大学北京市 211工程院校 教育部直属院校
【文章页数】:76 页
【学位级别】:硕士
【部分图文】:
图1-1软件缺陷预测过程??Fi.?1-1?Software?Defect?Prediction?Process??
不平衡问题下的软件缺陷预测??数据不平衡包括类间不平衡和类内不平衡问题。实际的软件数据集内有缺陷样本??数远小于无缺陷样本数,存在类间不平衡。数据集内有缺陷样本分布不均匀,有缺陷??样本可以被划分为多个子簇,且子簇间的样本数量差距很大,存在类内不平衡。本章??将对类间不平衡问题和类内不平衡问题进行介绍,并介绍在数据不平衡问题下的现有??研宄。本章详细介绍了几种基于数据采样的不平衡数据处理方法。??2.?1类间不平衡与类内不平衡??类间不平衡是指数据集内不同类别的样本数量相差很大,如图2-l(a)所示,黑色??五角星代表的样本数量远小于圆形样本的数量,可以称黑色五角星为少数类样本,圆??形为多数类样本,这两类样本数量差距很大,属于类间不平衡。在实际问题中,少数??类样本往往是关注的重点,需要较高的分类准确率。但是大多分类算法是基于数据分??布平衡设计的,分类器在分类时会更倾向于多数类样本,使大量少数类样本被误分,??造成分类结果的不准确。??,B;?G?mnil?Minority?Cia?*??f,?t??(a)?(b)??图2-1数据不平衡情况示意图??Fig.?2-1?Schematic?diagram?of?imbalance?data??类内不平衡是指数据集内某一类的样本分布不均匀,这类样本可以划分出多个子??簇,每个子簇的样本数量相差较大。如图2-1所示,A代表圆形类中数量较多的子类??集合、D代表圆形类中数量较少的子类集合、B代表五角星中数量较多的子类集合、??C代表五角星中数量较少的子类集合,可以看出无论是圆形类还是五角星类都存在类??内不平衡。类内不平衡可能引起小析取问题,即分类器通过创建规则来
。??因此,类间不平衡问题和类内不平衡问题都会影响分类结果的准确性。??2.?2数据不平衡问题下的软件缺陷预测模型??软件缺陷预测中有缺陷的样本数量远远小于无缺陷的样本数量,存在类间不平衡??问题;数据集中的有缺陷样本内部分布不均匀,存在类内不平衡问题,这两种类不平??衡将严重影响分类预测的结果。??无缺陷?无缺陷?有缺陷?有缺陷??/===?]?介?卜?pr??^^?无缺陷??原始数据粢""?数据采样?|?特征选择 ̄?|?分类器优化 ̄?评价标准??图2-2不平衡数据下软件缺陷预测模型??Fig.2-2?Defect?prediction?model?based?on?unbalanced?data??目前研宄热点主要在于如何在构建缺陷预测模型阶段减弱不平衡数据带来的影??响。图2-2描绘了软件缺陷预测模型在四个主要构建阶段对不平衡数据进行的处理。??面对无缺陷样本多于有缺陷样本,第一阶段数据采样阶段希望通过增加或减少样本数??而使数据集达到平衡,即有缺陷样本数与无缺陷样本数相差不大;第二阶段特征选择??则是结合特征选择算法,从己有特征中选取更有利于将有缺陷样本分出的特征,一方??面删除无用特征,一方面对高维特征进行降维,减少计算成本;第三阶段为分类器优??化阶段,许多机器学习算法被引入软件缺陷预测问题中来,但是单一种类的分类器在??不同数据分布下的表现程度不同,特别是在不平衡数据下,大部分分类器表现不佳,??因此需要优化分类器以实现对不平衡数据的良好分类;第四阶段为评价标准,机器学??习中最为常用的评价标准就是分类准确率,在面对不平衡问题时,如果仅以分类准确??率作为评价标准,即使将有
本文编号:3230582
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/3230582.html