首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到18条相似文献,搜索用时 46 毫秒
1.
刘影  孙凤丽  郭栋  张泽奇  杨隽 《测控技术》2020,39(12):111-115
针对软件缺陷预测时缺陷数据集中存在的类别分布不平衡问题,结合上采样算法SMOTE与Edited Nearest Neighbor (ENN)数据清洗策略,提出了一种基于启发式BP神经网络算法的软件缺陷预测模型。模型中采用上采样算法SMOTE增加少数类样本以改善项目中的数据不平衡状况,并针对采样后数据噪声问题进行ENN数据清洗,结合基于启发式学习的模拟退火算法改进四层BP神经网络后建立分类预测模型,在AEEEM数据库上使用交叉验证对提出的方案进行性能评估,结果表明所提出的算法能够有效提高模型在预测类不平衡数据时的分类准确度。  相似文献   

2.
王铁建  吴飞  荆晓远 《计算机科学》2017,44(12):131-134, 168
提出一种多核字典学习方法,用以对软件模块是否存在缺陷进行预测。用于软件缺陷预测的历史数据具有结构复杂、类不平衡的特点,用多个核函数构成的合成核将这些数据映射到一个高维特征空间,通过对多核字典基的选择,得到一个类别平衡的多核字典,用以对新的软件模块进行分类和预测,并判定其中是否存在缺陷。在NASA MDP数据集上的实验表明,与其他软件缺陷预测方法相比,多核字典学习方法能够针对软件缺陷历史数据结构复杂、类不平衡的特点,较好地解决软件缺陷预测问题。  相似文献   

3.
软件缺陷预测通过预先识别出被测项目内的潜在缺陷程序模块,有助于合理分配测试资源,并最终提高被测软件产品的质量。但在搜集缺陷预测数据集的时候,由于考虑了大量与代码复杂度或开发过程相关的度量元,造成数据集内存在维数灾难问题。借助基于搜索的软件工程思想,提出一种新颖的基于搜索的包裹式特征选择框架SBFS。该框架在实现时,首先借助SMOTE方法来缓解数据集内存在的类不平衡问题,随后借助基于遗传算法的特征选择方法,基于训练集选出最优特征子集。在实证研究中,以NASA数据集作为评测对象,以基于前向选择策略的包裹式特征选择方法FW、基于后向选择策略的包裹式特征选择BW、不进行特征选择的Origin作为基准方法。最终实证研究结果表明:SBFS方法在90%的情况下,不差于Origin法。在82.3%的情况下,不差于BW法。在69.3%的情况下,不差于FW法。除此之外,我们发现若基于决策树分类器,则应用SMOTE方法后,可以在71%的情况下,提高模型性能。而基于朴素贝叶斯和Logistic回归分类器,则应用SMOTE方法后,仅可以在47%和43%的情况下,提高模型的预测性能。  相似文献   

4.
在软件缺陷预测过程中,训练集质量是影响预测结果的关键因素。近几年,训练集选择也成为跨项目缺陷预测和跨版本缺陷预测等场景下的研究热点。然而,现有研究大多针对单一预测场景,可能会在一定程度上影响训练集质量。基于跨项目缺陷预测和跨版本缺陷预测两个场景,从数据分布角度提出一种基于相似性度量的训练集推荐(similarity-based training set recommendation,STSR)方法。采用聚类将候选源项目与目标项目划分为相同个数的簇,计算簇心之间的欧氏距离衡量数据集的相似度,对目标项目进行抽样,计算候选源项目与抽样目标项目缺陷率的差值,并计算干扰类比率,最终实现训练集推荐。在PROMISE数据集的11个项目共40个版本上进行实验验证,采用F1和AUC指标评价STSR方法的性能。实验结果表明,与跨版本缺陷预测相比,STSR方法的F1更优,在AUC指标上两者相当;在时间代价方面,STSR方法的最长推荐时间为5.09 s,是可接受的。  相似文献   

5.
6.
软件缺陷预测是软件工程领域的重点研究方向,是保证软件质量的重要途径之一。其中软件缺陷数据的类不平衡问题会影响缺陷预测分类的准确性,为解决类不平衡数据对预测分类的影响,针对如何优化数据预处理的算法执行顺序进行了研究,提出了一种有效提升分类效果的软件缺陷预测模型(ASRAdaboost)。该算法模型在根据对照实验确定数据预处理最优顺序后,采用特征选择卡方检验算法,再执行SMOTE过采样与简单采样方法,解决数据类不平衡和属性冗余同时存在的问题,最后结合Adaboost集成算法,构建出软件缺陷预测模型ASRAdaboost。实验均采用J48决策树作为基分类器,实验结果表明:ASRAdaboost算法模型有效提高了软件缺陷预测的准确性,得到了更好的分类效果。  相似文献   

7.
针对半监督软件缺陷预测中的类不平衡以及特征中含有过多无关特征和冗余特征的问题,提出一种改进的半监督集成软件缺陷预测方法FeSSTri(semi-supervised software prediction using Feature Selecting and Sample and Tri-training).首先使用...  相似文献   

8.
在软件缺陷预测中,标记样本不足与类不平衡问题会影响预测结果.为了解决这些问题,文中提出基于半监督集成学习的软件缺陷预测方法.该方法利用大量存在的未标记样本进行学习,得到较好的分类器,同时能集成一系列弱分类器,减少多数类数据对预测产生的偏倚.考虑到预测风险成本问题,文中还采用训练样本集权重向量更新策略,降低有缺陷模块预测为无缺陷模块的风险.在NASA MDP数据集上的对比实验表明,文中方法具有较好的预测效果.  相似文献   

9.
10.
软件缺陷预测通过预先识别出被测项目内的潜在缺陷程序模块,可以优化测试资源的分配并提高软件产品的质量。论文对跨项目缺陷预测问题展开了深入研究,在源项目实例选择时,考虑了三种不同的实例相似度计算方法,并发现这些方法的缺陷预测结果存在多样性,因此提出了一种基于Box-Cox转换的集成跨项目软件缺陷预测方法BCEL,具体来说,首先基于不同的实例相似度计算方法,从候选集中选出不同的训练集,随后针对这些数据集,进行针对性的Box-Cox转化,并借助特定分类方法构造出不同的基分类器,最后将这三个基分类器进行有效集成。基于实际项目的数据集,验证了BCEL方法的有效性,并深入分析了BCEL方法内的影响因素对缺陷预测性能的影响。  相似文献   

11.
    
The class imbalance problem in software defect prediction datasets leads to prediction results that are biased toward the majority class, and the class overlap problem leads to fuzzy boundaries for classification decisions, both of which affect the model's prediction performance on the dataset. A neighbor cleaning learning (NCL) is an effective technique for defect prediction. To solve the class overlap problem and class imbalance problem, the NCL-based cost-sensitive ensemble learning approach for software defect prediction (NCL_CSEL) model is proposed. First, the bootstrap resampled data are trained using the base classifier. Subsequently, multiple classifiers are integrated by a static ensemble to obtain the final classification results. As the base classifier, the Adaptive Boosting (AdaBoost) classifier combining NCL and cost-sensitive learning is proposed, and the class overlap problem and class imbalance problem are solved by balancing the proportion of overlap sample removal in NCL and the size of the cost factor in cost-sensitive learning. Specifically, the NCL algorithm is used to initialize the sample weights, while the cost-sensitive method is employed to update the sample weights. Experiments based on the NASA dataset and AEEEM dataset show that the defect prediction model can improve the bal value by approximately 7% and the AUC value by 9.5% when the NCL algorithm is added. NCL_CSEL can effectively solve the class imbalance problem and significantly improve the prediction performance compared with existing methods for solving the class imbalance problem.  相似文献   

12.
    
Software defect prediction (SDP) has been a very important research topic in software engineering, since it can provide high‐quality results when given sufficient historical data of the project. Unfortunately, there are not abundant data to bulid the defect prediction model at the beginning of a project. For this scenario, one possible solution is to use data from other projects in the same company. However, using these data practically would get poor performance because of different distributional characteristics among projects. Also, software has more non‐defective instances than defective instances that may cause a significant bias towards defective instances. Considering these two problems, we propose an improved transfer adaptive boosting (ITrAdaBoost) approach for being given a small number of labeled data in the testing project. In our approach, ITrAdaBoost can not only employ the Matthews correlation coefficient (MCC) as the measure instead of accuracy rate but also use the asymmetric misclassification costs for non‐defective and defective instances. Extensive experiments on 18 public projects from four datasets indicate that: (a) our approach significantly outperforms state‐of‐the‐art cross‐project defect prediction (CPDP) approaches, and (b) our approach can obtain comparable prediction performances in contrast with within project prediction results. Consequently, the proposed approach can build an effective prediction model with a small number of labeled instances for mixed‐project defect prediction (MPDP).  相似文献   

13.
为了缓解软件缺陷预测的类不平衡问题,避免过拟合影响缺陷预测模型的准确率,本文提出一种面向软件缺陷预测的基于异类距离排名的过采样方法(HDR).首先,对少数类实例进行3类实例区分,去除噪声实例,减少噪声数据导致的过拟合的情况,然后基于异类距离将实例进行排名,选取相似度高的实例两两组合产生新实例,以此来提升新实例的多样性,...  相似文献   

14.
简艺恒  余啸 《计算机应用》2018,38(9):2637-2643
预测软件缺陷的数目有助于软件测试人员更多地关注缺陷数量多的模块,从而合理地分配有限的测试资源。针对软件缺陷数据集不平衡的问题,提出了一种基于数据过采样和集成学习的软件缺陷数目预测方法——SMOTENDEL。首先,对原始软件缺陷数据集进行n次过采样,得到n个平衡的数据集;然后基于这n个平衡的数据集利用回归算法训练出n个个体软件缺陷数目预测模型;最后对这n个个体模型进行结合得到一个组合软件缺陷数目预测模型,利用该组合预测模型对新的软件模块的缺陷数目进行预测。实验结果表明SMOTENDEL相比原始的预测方法在性能上有较大提升,当分别利用决策树回归(DTR)、贝叶斯岭回归(BRR)和线性回归(LR)作为个体预测模型时,提升率分别为7.68%、3.31%和3.38%。  相似文献   

15.
    
Data imbalance and parameter selection have always been two important factors affecting the accuracy of software defect prediction. However, the existing methods have been poor in balancing these two factors. To address this challenge, a multi-objective software defect prediction model is employed to describe the under sampled software defect prediction problem. And in this model, defect detection rate and defect false alarm rate are deemed as two objectives which should be optimized. Simultaneously, we design a novel multi-objective immune optimization algorithm based on the comprehensive fitness of evaluation mechanism to effectively address the employed model. In the algorithm, the original mechanism based on neighborhood individual selection is replaced based on comprehensive fitness evaluation,which have better selection ability to attaining the predicted effect of software to improving in the process of selection solution of population evolution and further effectively help decision makers choose better scheme that meets requirements. In addition, in order to verify the effectiveness of the designed algorithm, the proposed algorithm is compared on eight different public data sets. Simulation results show that the proposed algorithm has better performance in handling with the multi-objective under sampling software defect prediction problem.  相似文献   

16.
软件缺陷预测的目的是预先识别容易出现缺陷的代码模块以帮助软件质量保障团队适当的分配资源和人力;当前基于稳定学习的软件缺陷预测方法在特征提取过程中缺乏代码图像的全局信息,并忽视了不平衡数据对模型性能的影响;为了解决上述问题,论文提出了一种基于注意力和代价敏感的软件缺陷预测方法;该方法在SDP-SL的神经网络中增加了全局注意力模块,重点关注图像中和缺陷代码相关的特征,并将分类器的损失函数改进为代价敏感的损失函数,降低类不平衡对模型性能的影响;为了评估SDP-SLAC的性能,在PROMISE数据库中的10个开源Java项目上进行了多组比较实验;实验结果表明,SDP-SLAC方法可以有效提升缺陷预测模型的性能。  相似文献   

17.
软件缺陷预测是提升软件质量的有效方法,而软件缺陷预测方法的预测效果与数据集自身的特点有着密切的相关性。针对软件缺陷预测中数据集特征信息冗余、维度过大的问题,结合深度学习对数据特征强大的学习能力,提出了一种基于深度自编码网络的软件缺陷预测方法。该方法首先使用一种基于无监督学习的采样方法对6个开源项目数据集进行采样,解决了数据集中类不平衡问题;然后训练出一个深度自编码网络模型。该模型能对数据集进行特征降维,模型的最后使用了三种分类器进行连接,该模型使用降维后的训练集训练分类器,最后用测试集进行预测。实验结果表明,该方法在维数较大、特征信息冗余的数据集上的预测性能要优于基准的软件缺陷预测模型和基于现有的特征提取方法的软件缺陷预测模型,并且适用于不同分类算法。  相似文献   

18.
软件缺陷预测是软件质量保障领域的热点研究课题,缺陷预测模型的质量与训练数据有密切关系。用于缺陷预测的数据集主要存在数据特征的选择和数据类不平衡问题。针对数据特征选择问题,采用软件开发常用的过程特征和新提出的扩展过程特征,然后采用基于聚类分析的特征选择算法进行特征选择;针对数据类不平衡问题,提出改进的Borderline-SMOTE过采样方法,使得训练数据集的正负样本数量相对平衡且合成样本的特征更符合实际样本特征。采用bugzilla、jUnit等项目的开源数据集进行实验,结果表明:所采用的特征选择算法在保证模型F-measure值的同时,可以降低57.94%的模型训练时间;使用改进的Borderline-SMOTE方法处理样本得到的缺陷预测模型在Precision、Recall、F-measure、AUC指标上比原始方法得到的模型平均分别提高了2.36个百分点、1.8个百分点、2.13个百分点、2.36个百分点;引入了扩展过程特征得到的缺陷预测模型比未引入扩展过程特征得到的模型在F-measure值上平均提高了3.79%;与文献中的方法得到的模型相比,所提方法得到的模型在F-measure值上平均提高了15.79%。实验结果证明所提方法能有效提升缺陷预测模型的质量。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号