收藏 分销(赏)

基于集成算法的软件缺陷预测方法研究.pdf

上传人:自信****多点 文档编号:649287 上传时间:2024-01-23 格式:PDF 页数:8 大小:1,007.42KB
下载 相关 举报
基于集成算法的软件缺陷预测方法研究.pdf_第1页
第1页 / 共8页
基于集成算法的软件缺陷预测方法研究.pdf_第2页
第2页 / 共8页
基于集成算法的软件缺陷预测方法研究.pdf_第3页
第3页 / 共8页
亲,该文档总共8页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、第 50 卷第 4 期化 工 自 动 化 及 仪 表DOI:10.20030/ki.1000鄄3932.202304022基于集成算法的软件缺陷预测方法研究魏比贤刘晓燕渊昆明理工大学信息工程与自动化学院冤摘要软件缺陷预测对保证软件质量至关重要袁不平衡数据严重影响软件缺陷预测模型的性能袁采用集成算法与不平衡学习方法相结合的方式可以有效解决该问题遥 基于 6 种集成学习算法与 16 种不平衡学习方法袁提出一些新的集成预测方法袁在 14 个高不平衡数据集上进行 M伊N 路交叉验证实验袁并选取 3种常用机器学习算法作为对比遥 使用 AUC尧G鄄mean尧recall 和 F1 指标评价预测性能遥 实验

2、结果表明院所提预测方法指标平均值比 3 种传统机器学习算法高出 1.5%遥关键词软件缺陷预测集成算法机器学习不平衡数据中图分类号TP311.5文献标识码A文章编号1000鄄3932渊2023冤04鄄0549鄄08作者简介院魏比贤渊1997-冤袁硕士研究生袁从事机器学习尧集成算法等的研究遥通讯作者院刘晓燕渊1964-冤袁副教授袁从事软件工程及数据库应用尧基于 WEB 的软件开发技术尧基于构件的实时软件系统分析与设计等的研究袁遥引用本文院魏比贤袁刘晓燕.基于集成算法的软件缺陷预测方法研究咱J暂.化工自动化及仪表袁2023袁50渊4冤院549-556.软件质量是软件工程领域非常重视的问题咱1暂遥然而

3、随着软件规模的扩大袁软件系统复杂性快速增长袁模块中存在缺陷的风险也越来越高咱2暂遥软件缺陷修复占据维护成本的很大比例袁资源和预算并不允许对整个系统进行严格全面的测试遥 因此袁识别出有缺陷的软件模块可以帮助人们快速合理分配有限的时间和宝贵的资源袁从而获得更好的质量遥 软件缺陷预测被看作是一个二分类问题袁把模块分为有缺陷模块或无缺陷模块遥 在实际的缺陷预测中袁有缺陷的类只占少数渊阳性样本冤袁无缺陷的类占大多数渊阴性样本冤袁因此缺陷数据的分布是高度倾斜的袁在机器学习领域也被称为类不平衡数据遥 这种高度不平衡的数据集在很大程度上影响了机器学习分类算法预测少数类咱3暂的能力遥为了解决这个问题袁一些研究人

4、员提出将不平衡学习方法嵌入到机器学习算法中袁建立更加适用于解决不平衡数据集分类问题的集成学习分类器遥文中的主要贡献有院为了进一步提升软件缺陷预测模型的性能袁引入6种集成学习算法袁具体为院AdaboostM1咱4暂尧Decorate咱5暂尧Logit Boost咱6暂尧Multi鄄Boost AB咱7暂尧MultiClass Classifier咱8暂尧Rotation Forest咱9暂袁将其与常用的不平衡学习方法结合袁 提出一些新的集成预测算法曰 在14个高不平衡数据集上采用M伊N路交叉验证方法对提出的算法进行较全面客观的测试遥 通过测试结果分析哪种集成预测算法综合表现最好袁哪种集成算法某一

5、性能表现最好袁以便后续研究者从不同侧重点挑选合适的模型遥1相关研究软件缺陷预测是在开发早期就识别系统缺陷的一种方法遥 通过大量历史缺陷数据建立代码特征与缺陷之间的关系袁预测哪些模块容易出现缺陷遥 近年来袁研究人员探索各种方法对软件缺陷模块进行预测袁大量传统的分类算法被直接用于构建软件缺陷预测模型袁 常用的分类算法有院文献咱10暂采用的人工神经网络算法袁文献咱11暂使用的贝叶斯网络算法袁文献咱12暂用的SVM算法以及文献咱13暂用于测试对比性能的决策树尧逻辑回归等算法袁除此以外还有字典学习咱14暂尧关联规则咱15暂尧进化算法咱16暂等若干算法遥然而这类直接由分类算法构建的模型忽略了缺陷数据集的类

6、分布不平衡问题袁很可能会为5492023 年化 工 自 动 化 及 仪 表了达到更高的准确率而将所有模块都预测为无缺陷模块遥 例如袁对于一个缺陷模块只占总体2%的数据集袁即使把所有的模块都归类为无缺陷模块袁也会获得98%的高准确率遥显然这种忽视少数类预测结果的模型不是我们想要的遥 于是一些研究人员提出可以从数据层面和算法层面来解决该问题遥 数据层面主要包括欠采样尧过采样和混合采样方法遥 算法层面主要有集成方法和代价敏感学习方法遥2方法2.1指标在软件缺陷预测领域袁有故障模块的预测准确度是最重要的遥 虽然精确度渊Accuracy冤是最基本的模型评估指标袁 但在更关注少数类的时候袁整体精确度几乎没

7、有参考价值咱17暂遥 基于这种情况袁本实验放弃了常用的精确度指标袁采用了更能反映少数类分类准确度的指标袁这些指标是基于混淆矩阵提出的袁见表1遥表1混淆矩阵预测阳性TPFP预测阴性FNTN实际阳性实际阴性混淆矩阵包括4种可能的分类情况袁即院真阳性渊TP冤袁假阳性渊FP冤袁真阴性渊TN冤袁假阴性渊FN冤遥除了真阳性和真阴性是期望预测模型达到的结果外袁假阳性会导致资源浪费袁而假阴性则是一种更为严重的分类错误袁指把原本有缺陷的模块预测成无缺陷模块袁 使其在开发早期被忽视袁导致后期测试需要花费更多的资源来检测定位该模块遥 因此袁应该选择可以直观反映假阴性和假阳性的指标遥 本实验采用AUC尧G鄄mean尧

8、Recall和F1指标来评价预测性能遥AUC渊Area Under the Curve冤遥 AUC被定义为ROC的曲线下面积袁它的值可以有效评价二分类模型的性能袁 值越大表示该模型的预测性能越好遥 AUC的计算式为院AUC=12TPTP+FN+TNTN+FP蓸蔀渊1冤G鄄mean遥 它是真阳性分类精度和真阴性分类精度的几何均值遥 从式渊2冤中可以看出袁G鄄mean指标同时考虑了多数类和少数类的分类精确度袁一旦分类器偏向多数类就会影响少数类的精确度袁进而影响G鄄mean的值遥 因此袁只有当多数类和少数类的分类精度都高时袁G鄄mean的值才会高遥 G鄄mean的计算式为院G鄄mean=TPTP+F

9、N伊TNTN+FP 姨渊2冤Recall渊查全率冤遥 查全率是正确预测的阳性样本数量与阳性样本总数的比值袁可以清楚地反映出某一预测模型对有缺陷模块的预测是否完全遥 Recall的计算式为院Recall=TPTP+FN渊3冤F1遥F1指标是查全率Recall和查准率Precision的组合袁同等重视预测模型对少数类的查全和查准两方面的分类性能遥 从式渊4冤中可以看出袁只有当Recall和Precision都尽可能高的情况下F1才会高遥 F1和Precision的计算式为院F1=2伊Precision伊RecallPrecision+Recall=2伊TP2伊TP+FP+FN渊4冤Precisio

10、n=TPTP+FN渊5冤2.2数据集实验选取了来自PROMISE和AEEEM的14个高不平衡公共数据集袁具体信息见表2遥序号数据集名称实例数不平衡比率IR数据集来源1jedit鄄4.349243.727PROMISE2camel鄄1.033925.077PROMISE3Lucene6919.797AEEEM4synapse鄄1.01578.813PROMISE表2公共数据集550第 50 卷第 4 期化 工 自 动 化 及 仪 表序号数据集名称实例数不平衡比率IR数据集来源5ant鄄1.52938.156PROMISE6ivy鄄2.03527.800PROMISE7poi鄄2.03147.48

11、6PROMISE8jedit鄄4.23676.646PROMISE11xerces鄄1.34535.565PROMISE12ant鄄1.31255.250PROMISE13xerces鄄1.24405.197PROMISE14camel鄄1.48725.014PROMISE9Mylyn1 8626.600AEEEM10PED1 4976.163AEEEM渊续表2冤序号方法类型算法1学习方法Bagging渊Bag冤2Boosting渊Bst冤3成本敏感方法Cost鄄sensitive learning渊COS冤4子采样方法Under鄄Sampling渊US冤5Over鄄Sampling渊OS冤6

12、Underover鄄Sampling渊UOS冤7SMOTE8与子采样方法结合的学习方法1鄄against鄄1渊1v1冤9OverBagging渊OBag冤10OverBoosting渊OBst冤11SMOTEBagging渊SBag冤12SMOTEBoosting渊SBst冤13UnderBagging渊UBag冤14UnderBoosting渊UBst冤15UnderoverBagging渊UOBag冤16UnderoverBoosting渊UOBst冤表 316 种不平衡学习方法表2中的不平衡比率渊IR冤指多数类数量与少数类数量的比值袁定义为IR=Major/Minor遥 其中12个数据集

13、的IR在5耀10袁这也是大多数高不平衡缺陷数据集的IR所在范围袁因此该数据集具有代表性遥 此外袁实验还选取了两个IR异常高的数据集来验证所提模型预测准确度是否稳定遥2.3集成预测算法首先介绍实验中采用的3种典型的机器学习 算法渊支持向量机渊Support Vector Machine袁SVM冤尧决策树渊Decision Tree C4.5冤和逻辑回归渊LogisticRegression袁LR冤冤尧6 种 集 成 算 法渊Adaboost M1 渊AB冤尧Decorate尧Logit Boost 渊LB冤尧MultiBoost AB渊MAB冤尧Multi Class Classifier渊MC

14、C冤和Rotation Forest渊ROF冤冤以及16种不平衡学习方法袁其中袁16种不平衡学习方法的具体信息见表3遥5512023 年化 工 自 动 化 及 仪 表BagAB鄄BagDec鄄BagLB鄄BagMAB鄄BagMCC鄄BagROF鄄BagBstAB鄄BstDec鄄BstLB鄄BstMAB鄄BstMCC鄄BstROF鄄BstCOSAB鄄COSDec鄄COSLB鄄COSMAB鄄COSMCC鄄COSROF鄄COS1v1AB鄄1v1Dec鄄1v1LB鄄1v1MAB鄄1v1MCC鄄1v1ROF鄄1v1OBagAB鄄OBagDec鄄OBagLB鄄OBagMAB鄄OBagMCC鄄OBagROF

15、鄄OBagOBstAB鄄OBstDec-OBstLB鄄OBstMAB鄄OBstMCC鄄OBstROF鄄OBstOSAB鄄OSDec鄄OSLB鄄OSMAB鄄OSMCC鄄OSROF鄄OSSBagAB鄄SBagDec鄄SBagLB鄄SBagMAB鄄SBagMCC鄄SBagROF鄄SBagSBstAB鄄SBstDec鄄SBstLB鄄SBstMAB鄄SBstMCC鄄SBstROF鄄SBstSMOTEAB鄄SMOTEDec鄄SMOTELB鄄SMOTEMAB鄄SMOTEMCC鄄SMOTEROF鄄SMOTEUBagAB鄄UBagDec鄄UBagLB鄄UBagMAB鄄UBagMCC鄄UBagROF鄄UBagUB

16、stAB鄄UBstDec鄄UBstLB鄄UBstMAB鄄UBstMCC鄄UBstROF鄄UBstUOBagAB鄄UOBagDec鄄UOBagLB鄄UOBagMAB鄄UOBagMCC鄄UOBagROF鄄UOBagUOBstAB鄄UOBstDec鄄UOBstLB鄄UOBstMAB鄄UOBstMCC鄄UOBstROF鄄UOBstUOSAB鄄UOSDec鄄UOSLB鄄UOSMAB鄄UOSMCC鄄UOSROF鄄UOSUSAB鄄USDec鄄USLB鄄USMAB鄄USMCC鄄USROF鄄US预测算法ABDecorateLBMABMCCROF表4集成预测算法图1实验流程表4中列出了全部96种基于集成算法与不平

17、衡学习方法提出的集成预测算法遥2.4实验设计实验主要程序流程如图1所示遥552第 50 卷第 4 期化 工 自 动 化 及 仪 表图2预测模型的构建与测试伪代码先利用不平衡学习方法对数据集进行平衡化处理袁然后用处理后的训练集对集成算法进行训练袁构建预测模型遥 实验中每一个数据集被分成10份袁轮流将其中的9份作为训练集袁剩下的1份作为测试集袁待一轮实验结束后再将该数据集实例随机排序袁整个过程重复10次遥 整个实验结束后每个模型都会得到100个混淆矩阵袁 用于评估该模型的性能遥实验采用M伊N路交叉验证方法袁主要基于以下考虑院a.通过大量的训练来获得稳定且可靠的预测模型曰b.许多学习算法都表现出顺序

18、缺陷问题袁数据集中某些顺序可能会提高或降低性能遥 因此袁需要对数据集中的实例进行随机排序袁以消除顺序对预测性能的影响遥 其中袁M和N取10遥实验程序基于WEKA咱18暂设计袁除1鄄against鄄1学习方法的迭代次数由其自身决定外袁其余方法的迭代次数均设为10次袁 参数选择WEKA中的默认值遥 数据预处理用均值补充缺失值袁并用主成分分析法进行特征分析遥 其中袁预测模型的构建与测试伪代码如图2所示遥3实验结果分析图3是集成算法与机器学习算法的对比袁图中数值取自所有模型的平均值遥 显然袁无论哪一种指标袁集成算法的值都高于机器学习算法遥5532023 年化 工 自 动 化 及 仪 表预测模型ABDe

19、corateLBMABMCCROFBag0.399Bst0.3740.371COS0.6100.6130.3240.4850.5491v10.6150.5920.6110.5900.4840.621OBag0.6070.4860.5970.6040.4540.458OBst0.4760.3950.4370.5030.4480.386AUCG鄄meanRecallF1集成预测算法平均值集成预测算法平均值集成预测算法平均值集成预测算法平均值AB鄄UOBag0.765AB鄄1v10.672AB鄄SBst0.685AB鄄SBag0.374Decorate鄄UOBag0.765Decorate鄄UBag

20、0.639Decorate鄄UBst0.635Decorate鄄UBag0.361LB鄄UOBag0.760LB鄄COS0.670LB鄄UBst0.635LB鄄UOBag0.371MAB鄄UOBag0.762MAB鄄UOBag0.648MAB鄄SBst0.665MAB鄄OBag0.375MCC鄄UBag0.734MCC鄄SBst0.589MCC鄄SBst0.517MCC鄄UBst0.331ROF鄄UOBag0.778ROF鄄1v10.674ROF鄄UBst0.694ROF鄄UOBag0.385图3集成算法与机器学习算法的对比表54种指标的比较结果表6基于4种指标平均值的综合评价表5展示了6种集

21、成算法在4种不同的指标下的预测性能对比遥 其中ROF鄄UOBag在AUC指标下表现得最好袁ROF鄄1v1组合在G鄄mean指标下表现最好袁ROF鄄UBst在Recall指标下表现最好袁ROF鄄UOBag在F1指标下表现最好遥 综合分析上述表现袁在6种集成算法中ROF算法的表现相对较好袁UOBag在16种不平衡学习方法中表现相对较好遥表6展示了所有集成预测模型的性能对比袁表中数值是该模型4种指标的平均值遥 红色部分表示该模型不可采用袁 其中Dec鄄COS模型将所有模块都预测为无缺陷模块袁而其他模型则将所有模块预测为有缺陷模块遥 显然ROF鄄1v1模型的综合性能最好遥554第 50 卷第 4 期化

22、 工 自 动 化 及 仪 表预测模型ABDecorateLBMABMCCROFOS0.5980.4570.5860.5940.4530.459SBag0.6070.4950.5900.6030.4720.491SBst0.5980.5840.6030.5890.5340.608US0.5690.5560.5680.5670.4720.563UBst0.6000.5940.6120.5650.5270.611UOBag0.6130.5550.6050.6040.4700.563UOBst0.4820.4080.4550.5020.4550.400UOS0.5930.5270.5770.5900.

23、4680.542SMOTE0.5640.5040.5600.5740.4870.545UBag0.6090.5940.6070.5930.4980.617渊续表6冤4结束语实验验证了提出的集成预测算法比传统的机器学习算法更加适用于解决高不平衡缺陷数据集的预测问题遥 并且通过指标数据分析出了哪个模型的综合性能最好袁哪些模型在单个指标下性能最好遥由于旋转森林算法在实验中表现突出袁下一步将尝试改进旋转森林算法袁进一步提高该算法对高不平衡缺陷数据集的预测性能遥参考文献咱1暂PIZZI N J.A fuzzy classifier approach to estimating soft鄄ware qua

24、lity咱J暂.Information Sciences袁2013袁241院1-11.咱2暂张献袁贲可荣袁曾杰.基于代码自然性的切片粒度缺陷预测方法咱J暂.软件学报袁2021袁32渊7冤院2219-2241.咱3暂MAHMOOD Z袁BOWES D袁LANE P C R袁et al.What isthe impact of imbalance on software defect predictionperformance?咱C暂/Proceedings of the 11th InternationalConference on Predictive Models and Data Anal

25、ytics inSoftware Engineering.2015院1-4.咱4暂张梦娇袁叶庆卫袁陆志华.基于模糊弱分类器的Ada鄄Boost算法咱J暂.数据通信袁2021渊5冤院35-41.咱5暂TUYEN T T袁JAAFARI A袁YEN H P H袁et al.Mappingforest fire susceptibility using spatially explicit ensem鄄ble models based on the locally weighted learning algo鄄rithm咱J暂.Ecological Informatics袁2021袁63院10129

26、2.咱6暂PREETHI I袁SURYAPRAKASH S袁MATHANKUMARM.A State鄄of鄄Art Approach on Fault Detection in ThreePhase Induction Motor Using AI Techniques咱C暂/20215th International Conference on Computing Methodolo鄄giesandCommunication渊ICCMC冤.IEEE袁2021院567-573.咱7暂ADHIKARY D D袁GUPTA D.Applying over 100 classi鄄fiers for

27、churn prediction in telecom companies 咱J暂.Multimedia Tools and Applications袁2021袁80 渊28冤院35123-35144.咱8暂SASAO T袁HORIKAWA Y袁IGUCHI Y.A Design Meth鄄od for Multiclass Classifiers 咱C暂/2021 IEEE 51stInternational Symposium on Multiple鄄Valued Logic渊ISMVL冤.IEEE袁2021院148-153.咱9暂JIANG Z袁HU W袁WU Y袁et al.Inter

28、action Gain and Ro鄄tation Forest Based Key Feature Selection Method forPower System Transient Stability Assessment 咱C暂/2021 IEEE Sustainable Power and Energy Conference渊iSPEC冤.IEEE袁2021院3939-3943.咱10暂VASHISHT V袁LAL M袁SURESHCHANDAR G.A fram鄄ework for software defect prediction using neural net鄄works

29、咱J暂.Journal of Software Engineering and Appli鄄cations袁2015袁8渊8冤院384-399.咱11暂OKUTAN A袁YILDIZ O T.Software Defect PredictionUsing Bayesian Networks 咱J暂.Empirical Software En鄄gineering袁2014袁19渊1冤院154-181.咱12暂SHEYKHMOUSA M袁MAHDIANPARI M袁GHANBA鄄RI H袁et al.Support vector machine versus random for鄄est for

30、remote sensing image classification院A meta鄄analysis and systematic review咱J暂.IEEE Journal of Se鄄lected Topics in Applied Earth Observations and Re鄄mote Sensing袁2020袁13院6308-6325.咱13暂MOSER R袁PEDRYCZ W袁SUCCI G.A comparative an鄄alysisof the efficiency of change metricsand static codeattributes for defe

31、ct prediction咱C暂/Proceedings of the5552023 年化 工 自 动 化 及 仪 表Research on Software Defect Prediction Method Based onIntegrated AlgorithmWEI Bi鄄xian,LIU Xiao鄄yan渊Faculty of Information Engineering and Automation,Kunming University of Science and Technology冤AbstractSoftware defect prediction is critical

32、to ensuring software quality袁 and imbalanced data has a se鄄rious impact on the performance of software defect prediction models袁 which can be effectively reduced bycombining integrated algorithms and imbalanced learning methods.In this paper袁 some new predictionmethods based on six integrated learni

33、ng algorithms and sixteen imbalanced learning methods were pro鄄posed袁 which subjected to M伊N cross鄄validation experiments on fourteen highly imbalanced datasets袁 andthree commonly鄄used machine learning algorithms were selected as comparison experiments.Making use ofAUC袁 G鄄mean袁 recall and F1 indicat

34、ors evaluate the prediction performance shows that袁 the average valueof the proposed prediction methods is 1.5%higher than that of the three conventional machine learning al鄄gorithms.Key wordssoftware defect prediction袁 integrated algorithm袁 machine learning袁 imbalanced data30th International Confer

35、ence on Software Engineer鄄ing袁F袁2008.咱14暂JING X Y袁YING S袁ZHANG Z W袁et al.Dictionarylearning based software defect prediction 咱C暂/Pro鄄ceedings of the 36th International Conference on Soft鄄ware Engineering袁F袁2014.咱15暂CZIBULA G袁MARIAN Z袁CZIBULA I G.Software de鄄fect prediction using relational associati

36、on rule mining咱J暂.Information Sciences袁2014袁264院260-278.咱16暂RATHORE S S袁KUMAR S.Predicting number offaults in software system using genetic programming咱J暂.Procedia Computer Science袁2015袁62院303-311.咱17暂BORANDAG姚E袁Y CALAR F袁AKARSU K.SoftwareFault Prediction in Object Oriented Software SystemsUsing Ens

37、emble Classifiers咱J暂.Celal Bayar UniversityJournal of Science袁2018袁14渊3冤院297-302.咱18暂HALL M袁FRANK E袁HOLMES G袁et al.The WEKAdata mining software院An update 咱J暂.ACM SIGKDDExplorations Newsletter袁2009袁11渊1冤院10-18.渊收稿日期院2022-11-24袁修回日期院2023-02-10冤渊Continued from Page 492冤AbstractIn view of the difficulti

38、es in online measuring direct health indicators 渊capacity and internal re鄄sistance冤 of lithium鄄ion batteries and predicting the remaining useful life 渊RUL冤袁 an indirect RUL predic鄄tion method for lithium鄄ion batteries based on the combination of parallel CNN鄄Self attention and LSTM wasproposed.First

39、ly袁 having the discharge cycle data of lithium鄄ion battery based to screen indirect health in鄄dicator that can highly reflect battery capacity attenuation are screened through the gray correlation analy鄄sis曰 then袁 having convolutional neural network渊CNN冤 used to extract features of the indirect heal

40、th indica鄄tor and the self attention mechanism used to adjust feature weights so as to obtain corresponding featurematrix曰 finally袁 having feature matrix fused and the long and short鄄term memory渊LSTM冤 network adopted toperform RUL prediction of the lithium battery.The experiment using NASA lithium鄄i

41、on battery data showsthat袁 compared with traditional CNN袁 LSTM and CNN鄄LSTM models袁 the capacity attenuation curve ob鄄tained by the parallel CNN鄄Self attention and LSTM model in this paper becomes closer to actual capacityattenuation curve along with a smaller error fluctuation range.It performs better on the three evaluation in鄄dexes of RMSE袁 MAE and R2coefficients.Key wordslithium鄄ion battery袁 residual service life袁 CNN袁 self鄄attention mechanism袁 LSTM袁 indirecthealth indictor556

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 论文指导/设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服