期刊文献+
共找到202篇文章
< 1 2 11 >
每页显示 20 50 100
膜内麻雀优化ELM的软件缺陷预测算法
1
作者 唐宇 代琪 +1 位作者 杨梦园 陈丽芳 《北京航空航天大学学报》 EI CAS CSCD 北大核心 2024年第2期643-654,共12页
原始麻雀搜索算法存在寻优精度低、迭代后期容易陷入局部极值的问题,结合高效寻优性能的改进麻雀搜索算法和具有并行计算能力的膜计算,提出一种膜内麻雀优化算法(IMSSA)。在10个CEC2017测试函数上的实验结果表明,IMSSA具有更高的寻优精... 原始麻雀搜索算法存在寻优精度低、迭代后期容易陷入局部极值的问题,结合高效寻优性能的改进麻雀搜索算法和具有并行计算能力的膜计算,提出一种膜内麻雀优化算法(IMSSA)。在10个CEC2017测试函数上的实验结果表明,IMSSA具有更高的寻优精度。为进一步验证IMSSA的性能,使用IMSSA优化极限学习机(ELM)参数,提出一种膜内麻雀优化ELM(IMSSA-ELM)算法,并将其应用于软件缺陷预测领域。实验结果表明:在15个公开的软件缺陷数据集中,IMSSA-ELM算法预测性能在G-mean、MCC这2个评价指标下明显优于其他4种先进的对比算法,表明IMSSA-ELM算法具有更好的预测精度和稳定性,其实验结果在Friedman ranking和Holm’s post-hoc test非参数检验中具有明显的统计显著性。 展开更多
关键词 改进麻雀搜索算法 膜计算 极限学习机 优化算法 软件缺陷预测
下载PDF
基于数据集扩充的即时软件缺陷预测方法
2
作者 杨帆 夏鸿崚 《南通大学学报(自然科学版)》 CAS 2024年第1期58-65,共8页
即时软件缺陷预测针对项目开发与维护过程中的代码提交来预测是否会引入缺陷。在即时软件缺陷预测研究领域,模型训练依赖于高质量的数据集,然而已有的即时软件缺陷预测方法尚未研究数据集扩充方法对即时软件缺陷预测的影响。为提高即时... 即时软件缺陷预测针对项目开发与维护过程中的代码提交来预测是否会引入缺陷。在即时软件缺陷预测研究领域,模型训练依赖于高质量的数据集,然而已有的即时软件缺陷预测方法尚未研究数据集扩充方法对即时软件缺陷预测的影响。为提高即时软件缺陷预测的性能,提出一种基于数据集扩充的即时软件缺陷预测(prediction based on data augmentation,PDA)方法。PDA方法包括特征拼接、样本生成、样本过滤和采样处理4个部分。增强后的数据集样本数量充足、样本质量高且消除了类不平衡问题。将提出的PDA方法与最新的即时软件缺陷预测方法(JIT-Fine)作对比,结果表明:在JIT-Defects4J数据集上,F_(1)指标提升了18.33%;在LLTC4J数据集上,F_(1)指标仍有3.67%的提升,验证了PDA的泛化能力。消融实验证明了所提方法的性能提升主要来源于数据集扩充和筛选机制。 展开更多
关键词 数据增强 深度学习 即时软件缺陷预测 样本生成 类不平衡问题
下载PDF
基于极限学习机的软件缺陷预测分析研究
3
作者 徐舜 《信息记录材料》 2024年第2期75-77,共3页
软件测试是软件开发生命周期中最主要的阶段,它可以最大限度地减少软件的缺陷,软件缺陷预测是近几年来软件研究人员关注的一个领域。为了提高缺陷模型的准确性,本文提出使用极限学习机(extreme learning machine, ELM)算法来预测缺陷。... 软件测试是软件开发生命周期中最主要的阶段,它可以最大限度地减少软件的缺陷,软件缺陷预测是近几年来软件研究人员关注的一个领域。为了提高缺陷模型的准确性,本文提出使用极限学习机(extreme learning machine, ELM)算法来预测缺陷。首先,从Eclipse程序库中提取3个版本控制系统用作训练数据并做预处理;其次,使用ELM算法来训练模型;最后,使用一些指标进行性能预测。基于软件包的预测结果证明ELM适合跨版本缺陷预测。 展开更多
关键词 机器学习 软件缺陷预测 软件度量 软件质量检测
下载PDF
基于GAN数据增强的软件缺陷预测聚合模型 被引量:1
4
作者 徐金鹏 郭新峰 +1 位作者 王瑞波 李济洪 《计算机科学》 CSCD 北大核心 2023年第12期24-31,共8页
在软件缺陷预测任务中,通常基于C&K等静态软件特征数据集,使用机器学习分类算法来构建软件缺陷预测(SDP)模型。然而,大多数静态软件特征数据集中缺陷数较少,数据集的类不平衡问题较为严重,导致学习到的SDP模型的预测性能较差。文中... 在软件缺陷预测任务中,通常基于C&K等静态软件特征数据集,使用机器学习分类算法来构建软件缺陷预测(SDP)模型。然而,大多数静态软件特征数据集中缺陷数较少,数据集的类不平衡问题较为严重,导致学习到的SDP模型的预测性能较差。文中基于生成对抗网络(GAN),并利用FID得分筛选生成正例样本数据,增强正例样本量,然后在组块正则化m×2交叉验证(m×2BCV)框架下,通过众数投票法聚合多个子模型的结果,最终构成SDP模型。以PROMISE数据库下的20个数据集为实验数据集,采用随机森林算法构建SDP聚合模型。实验结果表明,与传统的随机上采样、SMOTE、随机下采样相比,所提SDP聚合模型的F1平均值分别提高了10.2%,5.7%,3.4%,且F1的稳定性也得到相应提高;所提SDP聚合模型在20个数据集的评测中,有17个F1值最高。从AUC指标来看,所提方法与传统的采样方法没有明显差异。 展开更多
关键词 生成对抗网络 数据增强 组块正则化交叉验证 软件缺陷预测 聚合模型
下载PDF
基于生成式对抗网络的类不平衡软件缺陷预测过采样方法 被引量:1
5
作者 张恒伟 贾修一 《南京理工大学学报》 CAS CSCD 北大核心 2023年第2期174-182,共9页
为了解决软件缺陷预测中的类不平衡问题,该文提出了一种新颖的基于生成式对抗网络(Generative adversarial networks,GAN)的过采样方法。GAN网络能够充分利用样本分布的空间关系,挖掘出样本之间隐藏的一些关联信息,通过生成器和判别器... 为了解决软件缺陷预测中的类不平衡问题,该文提出了一种新颖的基于生成式对抗网络(Generative adversarial networks,GAN)的过采样方法。GAN网络能够充分利用样本分布的空间关系,挖掘出样本之间隐藏的一些关联信息,通过生成器和判别器交替优化的方式使得生成的新样本更加合理科学。在26个不平衡的数据集上进行了试验,并与一些过采样方法以及未采样的方法在8个分类器上进行了广泛比较。试验结果表明,该文方法在Precision、Recall、F-measure和G-mean上都取得了最好的效果。 展开更多
关键词 软件缺陷预测 类不平衡 过采样技术 生成式对抗网络
下载PDF
基于自适应聚类过采样的软件缺陷预测研究 被引量:1
6
作者 贾燕华 李英梅 《哈尔滨师范大学自然科学学报》 CAS 2023年第2期45-50,共6页
软件缺陷预测是软件质量保障领域的热点研究课题,缺陷预测模型的性能与训练数据质量有着密切关系.针对软件缺陷预测中数据类不平衡问题,该文提出一种结合局部密度和K-Means++聚类的自适应判断过采样方法(local density adaptive oversam... 软件缺陷预测是软件质量保障领域的热点研究课题,缺陷预测模型的性能与训练数据质量有着密切关系.针对软件缺陷预测中数据类不平衡问题,该文提出一种结合局部密度和K-Means++聚类的自适应判断过采样方法(local density adaptive oversampling based on K-Means++,LDKMAS).该方法首先利用K-Means++聚类算法为少数类样本聚类,获得多个子簇;其次计算各子簇中样本的局部密度,并合计为子簇密度;最后根据子簇密度自适应确定各子簇的过采样量,插值合成新样本直至数据集平衡.将LDKMAS算法与其他经典的过采样方法进行对比实验,用不同指标评价预测效果.实验表明,该文算法的软件缺陷预测效果更为出色,展现了较之于其他采样方法在软件缺陷预测不平衡数据处理上的优势. 展开更多
关键词 软件缺陷预测 类不平衡 局部密度 过采样
下载PDF
开源软件缺陷预测方法综述
7
作者 田笑 常继友 +7 位作者 张弛 荣景峰 王子昱 张光华 王鹤 伍高飞 胡敬炉 张玉清 《计算机研究与发展》 EI CSCD 北大核心 2023年第7期1467-1488,共22页
开源软件缺陷预测通过挖掘软件历史仓库的数据,利用与软件缺陷相关的度量元或源代码本身的语法语义特征,借助机器学习或深度学习方法提前发现软件缺陷,从而减少软件修复成本并提高产品质量.漏洞预测则通过挖掘软件实例存储库来提取和标... 开源软件缺陷预测通过挖掘软件历史仓库的数据,利用与软件缺陷相关的度量元或源代码本身的语法语义特征,借助机器学习或深度学习方法提前发现软件缺陷,从而减少软件修复成本并提高产品质量.漏洞预测则通过挖掘软件实例存储库来提取和标记代码模块,预测新的代码实例是否含有漏洞,减少漏洞发现和修复的成本.通过对2000年至2022年12月软件缺陷预测研究领域的相关文献调研,以机器学习和深度学习为切入点,梳理了基于软件度量和基于语法语义的预测模型.基于这2类模型,分析了软件缺陷预测和漏洞预测之间的区别和联系,并针对数据集来源与处理、代码向量的表征方法、预训练模型的提高、深度学习模型的探索、细粒度预测技术、软件缺陷预测和漏洞预测模型迁移六大前沿热点问题进行了详尽分析,最后指出了软件缺陷预测未来的发展方向. 展开更多
关键词 软件缺陷预测 漏洞预测 机器学习 深度学习 度量元 语法语义分析
下载PDF
基于相似性度量的软件缺陷预测训练集推荐 被引量:2
8
作者 王朝 于巧 韩惠 《计算机工程与应用》 CSCD 北大核心 2023年第9期86-94,共9页
在软件缺陷预测过程中,训练集质量是影响预测结果的关键因素。近几年,训练集选择也成为跨项目缺陷预测和跨版本缺陷预测等场景下的研究热点。然而,现有研究大多针对单一预测场景,可能会在一定程度上影响训练集质量。基于跨项目缺陷预测... 在软件缺陷预测过程中,训练集质量是影响预测结果的关键因素。近几年,训练集选择也成为跨项目缺陷预测和跨版本缺陷预测等场景下的研究热点。然而,现有研究大多针对单一预测场景,可能会在一定程度上影响训练集质量。基于跨项目缺陷预测和跨版本缺陷预测两个场景,从数据分布角度提出一种基于相似性度量的训练集推荐(similarity-based training set recommendation,STSR)方法。采用聚类将候选源项目与目标项目划分为相同个数的簇,计算簇心之间的欧氏距离衡量数据集的相似度,对目标项目进行抽样,计算候选源项目与抽样目标项目缺陷率的差值,并计算干扰类比率,最终实现训练集推荐。在PROMISE数据集的11个项目共40个版本上进行实验验证,采用F1和AUC指标评价STSR方法的性能。实验结果表明,与跨版本缺陷预测相比,STSR方法的F1更优,在AUC指标上两者相当;在时间代价方面,STSR方法的最长推荐时间为5.09 s,是可接受的。 展开更多
关键词 软件缺陷预测 训练集选择 跨项目缺陷预测 跨版本缺陷预测
下载PDF
基于优化随机森林的软件缺陷预测算法研究 被引量:2
9
作者 唐宇 代琪 +2 位作者 杨志伟 杨爱民 陈丽芳 《计算机工程与科学》 CSCD 北大核心 2023年第5期830-839,共10页
针对传统随机森林应用于软件缺陷预测领域存在预测精度低、参数难以优化的问题,提出一种分数阶变异麻雀优化随机森林参数的软件缺陷预测算法(FMSSA-RF)。首先,使用分数阶变异麻雀算法(FMSSA)提高麻雀算法全局寻优能力,在4个基准测试函数... 针对传统随机森林应用于软件缺陷预测领域存在预测精度低、参数难以优化的问题,提出一种分数阶变异麻雀优化随机森林参数的软件缺陷预测算法(FMSSA-RF)。首先,使用分数阶变异麻雀算法(FMSSA)提高麻雀算法全局寻优能力,在4个基准测试函数中,FMSSA具有更高的寻优精度;然后,使用分数阶变异麻雀算法优化随机森林参数;最后,将FMSSA-RF算法应用于软件缺陷预测领域。实验结果表明,在4个项目的10个公开软件缺陷数据集上,FMSSA-RF算法的评价指标明显优于其它3种对比算法的,表明FMSSA-RF算法具有更高的预测精度和更好的稳定性。Friedman ranking和Holm’s post-hoc test的检验结果表明,FMSSA-RF算法具有明显的统计显著性。 展开更多
关键词 分数阶变异麻雀算法 随机森林 软件缺陷预测
下载PDF
基于自适应混合粒子群优化的软件缺陷预测特征选择方法
10
作者 于振华 刘争气 +1 位作者 刘颖 郭城 《计算机应用》 CSCD 北大核心 2023年第4期1206-1213,共8页
特征选择是软件缺陷预测中数据预处理的关键步骤。针对现有特征选择方法存在的降维效果不显著、选取的最优特征子集分类精度低等问题,提出了一种基于自适应混合粒子群优化(SHPSO)的软件缺陷预测特征选择方法。首先,结合种群划分设计了基... 特征选择是软件缺陷预测中数据预处理的关键步骤。针对现有特征选择方法存在的降维效果不显著、选取的最优特征子集分类精度低等问题,提出了一种基于自适应混合粒子群优化(SHPSO)的软件缺陷预测特征选择方法。首先,结合种群划分设计了基于Q学习的自适应权重更新策略,其中引入Q学习根据粒子的状态自适应地调整惯性权重;其次,为了平衡算法前期的全局搜索能力和后期的收敛速度,提出了基于曲线自适应的时变学习因子;最后,采用混合位置更新策略帮助粒子尽快跳出局部最优解,并增加粒子的多样性。在12个公开软件缺陷数据集上进行实验验证的结果表明,与使用全部特征的方法、常用的传统特征选择方法及主流的基于智能优化算法的特征选择方法相比,所提方法在提高软件缺陷预测模型分类性能和降低特征空间维度上均取得了有效的结果。与改进樽海鞘群算法(ISSA)相比,所提方法的分类精度平均提高了约1.60%,特征子集规模平均降低了约63.79%。实验结果表明,所提方法可以选出分类精度较高且数量较少的特征子集。 展开更多
关键词 特征选择 软件缺陷预测 粒子群优化算法 正余弦算法 Q学习
下载PDF
软件缺陷预测模型可解释性对比 被引量:1
11
作者 李汇来 杨斌 +1 位作者 于秀丽 唐晓梅 《计算机科学》 CSCD 北大核心 2023年第5期21-30,共10页
软件缺陷预测已经成为软件测试中的重要研究方向,缺陷预测的全面与否直接影响着测试效率和程序运行。但现有的缺陷预测是根据历史数据进行推断,大多不能对预测过程给出合理的解释,这种黑盒的预测过程仅仅展现输出结果,使得人们难以得知... 软件缺陷预测已经成为软件测试中的重要研究方向,缺陷预测的全面与否直接影响着测试效率和程序运行。但现有的缺陷预测是根据历史数据进行推断,大多不能对预测过程给出合理的解释,这种黑盒的预测过程仅仅展现输出结果,使得人们难以得知测试模型内部结构对输出的影响。为解决这一问题,需挑选软件度量方法和部分典型深度学习模型,对其输入、输出及结构进行简要对比,从数据差异程度和模型对代码的处理过程两个角度进行分析,对它们的异同给出解释。实验表明,采用深度学习的方法进行缺陷预测比传统软件度量方法更加有效,这主要是由它们对原始数据处理过程不同造成的;采用卷积神经网络和长短期记忆神经网络做缺陷预测时,数据差异主要由对代码信息理解的完整程度不同造成的。综上可知,要提高对软件缺陷的预测能力,模型的计算应该对代码的语义、逻辑和上下文联系进行全面的介入,避免有用信息被遗漏。 展开更多
关键词 软件缺陷预测 可解释性 软件度量 神经网络 抽象语法树
下载PDF
基于特征优选的软件缺陷预测集成学习方法
12
作者 卫梅特 任洪敏 《计算机仿真》 北大核心 2023年第7期331-336,共6页
软件缺陷预测已经成为软件工程领域一个重要的研究方向,目前对数据集处理的方法存在特征冗余、类不平衡和特征相关性低的情况,很大程度影响了软件缺陷预测模型的分类性能。针对以上问题,对NASA MDP数据集中8个数据子集的45943条特征向... 软件缺陷预测已经成为软件工程领域一个重要的研究方向,目前对数据集处理的方法存在特征冗余、类不平衡和特征相关性低的情况,很大程度影响了软件缺陷预测模型的分类性能。针对以上问题,对NASA MDP数据集中8个数据子集的45943条特征向量进行研究,提出了基于特征优选的软件缺陷预测集成学习方法。首先,通过合成少数类过采样技术(SMOTE)对少数类样本进行分析并根据少数类样本合成新样本添加到数据集中。然后,通过信息增益(IG)分析数据集的特征属性,并且根据分析结果对特征属性进行选择。最后,使用集成学习算法Stacking构建学习器,其中初级学习器是逻辑回归(LG)和决策树(J48)、次级学习器是朴素贝叶斯(NB),对模型进行十折交叉验证。结果表明,上述模型有效提升了分类性能,与近年基于Stacking构建学习器的结果进行对比,Accuracy平均提升4.65%、F-Measure平均提升5.25%和AUC平均提升11.3%。 展开更多
关键词 软件缺陷预测 过采样 信息增益 集成学习
下载PDF
基于集成算法的软件缺陷预测方法研究
13
作者 魏比贤 刘晓燕 《化工自动化及仪表》 CAS 2023年第4期549-556,共8页
软件缺陷预测对保证软件质量至关重要,不平衡数据严重影响软件缺陷预测模型的性能,采用集成算法与不平衡学习方法相结合的方式可以有效解决该问题。基于6种集成学习算法与16种不平衡学习方法,提出一些新的集成预测方法,在14个高不平衡... 软件缺陷预测对保证软件质量至关重要,不平衡数据严重影响软件缺陷预测模型的性能,采用集成算法与不平衡学习方法相结合的方式可以有效解决该问题。基于6种集成学习算法与16种不平衡学习方法,提出一些新的集成预测方法,在14个高不平衡数据集上进行M×N路交叉验证实验,并选取3种常用机器学习算法作为对比。使用AUC、G-mean、recall和F1指标评价预测性能。实验结果表明:所提预测方法指标平均值比3种传统机器学习算法高出1.5%。 展开更多
关键词 软件缺陷预测 集成算法 机器学习 不平衡数据
下载PDF
一种基于半监督集成学习的软件缺陷预测方法
14
作者 张莹 朱丽娜 《计算机与数字工程》 2023年第10期2390-2394,共5页
软件缺陷预测是提高软件质量的有效途径。为应对软件缺陷数据的不平衡分布和特征冗余等问题,提出一种改进的基于半监督集成学习的软件缺陷预测方法SSFSAdaBoost(Semi-supervised software defect prediction based on sampling,feature ... 软件缺陷预测是提高软件质量的有效途径。为应对软件缺陷数据的不平衡分布和特征冗余等问题,提出一种改进的基于半监督集成学习的软件缺陷预测方法SSFSAdaBoost(Semi-supervised software defect prediction based on sampling,feature selection and AdaBoost)。首先对训练集进行混合采样,其次使用SMA优化算法对采样后的训练集和测试集做特征选择,最后使用改进的半监督算法SUDAdaBoost进行集成。实验在三种公共数据集上进行验证,实验结果表明,该方法优于初始的Adaboost算法,并对缓解类不平衡问题具有良好的性能。 展开更多
关键词 软件缺陷预测 半监督学习 集成学习 数据采样 特征选择
下载PDF
集成特征选择的代价敏感Boosting软件缺陷预测方法
15
作者 唐鹤龙 李英梅 《软件工程与应用》 2023年第6期975-988,共14页
软件中潜在的缺陷会产生严重的后果,通过使用软件缺陷预测技术可以及时地检测到模块中的缺陷。然而,由于软件缺陷数据集中的类不平衡和高维度特征问题,会导致模型的预测性能下降,因此提出了一种集成特征选择的代价敏感Boosting软件缺陷... 软件中潜在的缺陷会产生严重的后果,通过使用软件缺陷预测技术可以及时地检测到模块中的缺陷。然而,由于软件缺陷数据集中的类不平衡和高维度特征问题,会导致模型的预测性能下降,因此提出了一种集成特征选择的代价敏感Boosting软件缺陷预测方法(Cost-Sensitive Boosting for Feature Selection, CSBFS)。CSBFS首先采用了一种代价敏感的特征选择算法,该算法先计算每个特征对预测结果的贡献值,并根据不同错误类别的代价对贡献值进行调整,选择具有正向贡献的特征作为特征子集,解决了高维度特征的问题;接下来,将这个特征选择算法嵌入进Boosting算法中,在Boosting的每一轮迭代中,为每个基学习器选择合适的特征子集,从而增加了基学习器之间的多样性;此外,通过调整错误类别的权重,为第一类错分样本赋予更高的权重,以缓解类别不平衡问题,进一步提高了预测效果。在20个公开数据集上进行实验,以F-measure、Recall、AUC、G-mean等作为评价指标,实验结果验证了CSBFS方法的有效性。 展开更多
关键词 软件缺陷预测 代价敏感 特征选择 集成学习
下载PDF
基于过采样和代价敏感技术的软件缺陷预测 被引量:1
16
作者 王文彪 张春英 马英硕 《华北理工大学学报(自然科学版)》 CAS 2023年第3期82-89,共8页
软件缺陷预测技术是保证软件质量、提升软件测试效率的重要方法,精准发现存在潜在缺陷的软件模块,已逐渐成为软件工程领域研究的热点。针对软件动态数据流的形式,考虑软件数据流中正类样例与负类样例的严重不平衡问题,提出一种面向动态... 软件缺陷预测技术是保证软件质量、提升软件测试效率的重要方法,精准发现存在潜在缺陷的软件模块,已逐渐成为软件工程领域研究的热点。针对软件动态数据流的形式,考虑软件数据流中正类样例与负类样例的严重不平衡问题,提出一种面向动态软件数据流的类不平衡缓解方法SCS算法(Class Imbalance Mitigation Algorithms)。该方法以时间序列为前提获取软件数据流,利用过采样技术与代价敏感技术相结合,提升预测模型对潜在缺陷数据的搜索范围。实验结果表明,SCS算法可有效缓解类不平衡问题。SCS算法的准确率优于传统机器学习算法10%-20%,优于动态增量学习算法5%-10%;SCS算法的误报率低于其它学习算法5%-15%左右;SCS的AUC值稳定在0.63-0.73左右。 展开更多
关键词 软件缺陷预测 类不平衡问题 过采样技术 代价敏感技术
下载PDF
一种邻域合成的软件缺陷预测过采样方法
17
作者 纪晨辉 李英梅 《软件工程与应用》 2023年第6期930-939,共10页
在软件缺陷预测中,数据集的类不平衡是其主要挑战之一。针对该问题,提出了一种邻域合成的过采样方法,该方法充分考虑了缺陷类样本近邻的特征信息,参照周围近邻样本的特征信息合成新样本,使得生成的样本更加多样化,并在缺陷样本较少的区... 在软件缺陷预测中,数据集的类不平衡是其主要挑战之一。针对该问题,提出了一种邻域合成的过采样方法,该方法充分考虑了缺陷类样本近邻的特征信息,参照周围近邻样本的特征信息合成新样本,使得生成的样本更加多样化,并在缺陷样本较少的区域生成更多的样本,用来增强模型对稀疏缺陷类样本的识别能力。以AEEEM数据集和NASA数据集作为样本,采用F1值作为评估标准进行实验,实验结果显示,这种方法优于其他传统的过采样算法。 展开更多
关键词 软件缺陷预测 类不平衡 过采样
下载PDF
跨项目软件缺陷预测方法研究综述 被引量:42
18
作者 陈翔 王莉萍 +4 位作者 顾庆 王赞 倪超 刘望舒 王秋萍 《计算机学报》 EI CSCD 北大核心 2018年第1期254-274,共21页
软件缺陷预测首先通过挖掘与分析软件历史仓库,从中抽取程序模块并进行类型标记.随后通过分析软件代码的内在复杂度或开发过程特征,设计出与软件缺陷存在强相关性的度量元,并对这些程序模块进行度量.最后借助特定的机器学习方法基于上... 软件缺陷预测首先通过挖掘与分析软件历史仓库,从中抽取程序模块并进行类型标记.随后通过分析软件代码的内在复杂度或开发过程特征,设计出与软件缺陷存在强相关性的度量元,并对这些程序模块进行度量.最后借助特定的机器学习方法基于上述数据构建出缺陷预测模型.因此该方法可以在项目开发的早期阶段,通过预先识别出项目内的可疑缺陷模块,达到优化测试资源分配的目的.但在实际软件开发场景中,需要进行缺陷预测的项目可能是一个新启动项目,或这个项目的历史训练数据比较稀缺.一种简单的解决方案是利用其他项目已经搜集的训练数据来构建缺陷预测模型.但不同项目之间因所处的应用领域、采用的开发流程、使用的编程语言、开发人员经验等并不相同,因此对应数据集间会存在较大的分布差异性并造成该方案的实际性能并不理想,因此如何通过有效迁移源项目的相关知识来为目标项目构建预测模型,吸引了国内外研究人员的关注,并将该问题称为跨项目软件缺陷预测问题.论文针对该问题进行了系统综述.根据预测场景的不同,将已有方法分为3类:基于有监督学习的方法、基于无监督学习的方法和基于半监督学习的方法.其中基于有监督学习的方法主要基于候选源项目集的程序模块来构建模型.这类方法根据源项目与目标项目采用的度量元是否相同又可以细分为同构跨项目缺陷预测方法和异构跨项目缺陷预测方法.针对前者,研究人员主要从度量元取值转换、实例选择和权重设置、特征映射和特征选择、集成学习、类不平衡学习等角度展开研究.而后者更具研究挑战性,研究人员主要基于特征映射和典型相关分析等方法展开研究.基于无监督学习的方法直接尝试对目标项目中的程序模块进行预测.这类方法假设在软件缺陷预测问题中,有缺陷模块的度量元取值存在高于无缺陷模块的度量元取值的倾向.因此研究人员主要基于聚类方法展开研究.而基于半监督学习的方法则会综合使用候选源项目集的程序模块和目标项目中的少量已标记模块来构建模型.这类方法通过尝试从目标项目中选出少量模块进行标记,以提高跨项目缺陷预测的性能.研究人员主要借助集成学习和TrAdaBoost方法展开研究.论文依次对每一类方法的已有研究成果进行了系统梳理和点评.随后论文进一步总结了跨项目缺陷预测研究中经常使用的性能评测指标和评测数据集,其统计结果可以辅助研究人员针对该问题进行合理的实验设计.最后总结全文,并分别从数据集搜集、数据集预处理、模型构建和评估、模型应用这4个维度对未来值得关注的研究方向进行了展望. 展开更多
关键词 经验软件工程 软件缺陷预测 跨项目软件缺陷预测 迁移学习 实证研究
下载PDF
基于集成学习的软件缺陷预测技术研究
19
作者 闫忻保 《软件》 2023年第2期144-146,共3页
近年来计算机软件在信息技术、文化教育、生物医疗以及军事等领域都得到了广泛且深入的应用,并且用户需求持续增多,软件功能愈加复杂多样。软件开发使用的效率以及质量问题随之凸显出来。软件测试作为贯穿软件设计工程全过程的重要环节... 近年来计算机软件在信息技术、文化教育、生物医疗以及军事等领域都得到了广泛且深入的应用,并且用户需求持续增多,软件功能愈加复杂多样。软件开发使用的效率以及质量问题随之凸显出来。软件测试作为贯穿软件设计工程全过程的重要环节,通过多种多样的成熟的测试技术及时发现并且排除软件中存在的问题缺陷来提高软件的整体设计效率和质量、降低软件系统设计开发的成本。软件缺陷预测技术则是对软件测试任务进行指导和评估的重要途径,缺陷预测技术可以精准地进行预测软件缺陷的分布情况对软件测试工作的推进有着重要的指导作用。本文将深入研究集成学习在软件缺陷预测技术领域的发展与应用。 展开更多
关键词 软件开发 软件测试 软件缺陷预测 机械学习 集成学习
下载PDF
基于混合注意力机制的软件缺陷预测方法
20
作者 刁旭炀 吴凯 +2 位作者 陈都 周俊峰 高璞 《计算机测量与控制》 2023年第3期56-62,70,共8页
软件缺陷预测技术用于定位软件中可能存在缺陷的代码模块,从而辅助开发人员进行测试与修复;传统的软件缺陷特征为基于软件规模、复杂度和语言特点等人工提取的静态度量元信息;然而,静态度量元特征无法直接捕捉程序上下文中的缺陷信息,... 软件缺陷预测技术用于定位软件中可能存在缺陷的代码模块,从而辅助开发人员进行测试与修复;传统的软件缺陷特征为基于软件规模、复杂度和语言特点等人工提取的静态度量元信息;然而,静态度量元特征无法直接捕捉程序上下文中的缺陷信息,从而影响了软件缺陷预测的性能;为了充分利用程序上下文中的语法语义信息,论文提出了一种基于混合注意力机制的软件缺陷预测方法 DP-MHA(defect prediction via mixed attention mechanism);DP-MHA首先从程序模块中提取基于AST树的语法语义序列并进行词嵌入编码和位置编码,然后基于多头注意力机制自学习上下文语法语义信息,最后利用全局注意力机制提取关键的语法语义特征,用于构建软件缺陷预测模型并识别存在潜在缺陷的代码模块;为了验证DP-MHA的有效性,论文选取了6个Apache的开源Java数据集,与经典的基于RF的静态度量元方法、基于RBM+RF、DBN+RF无监督学习方法和基于CNN和RNN深度学习方法进行对比,实验结果表明,DP-MHA在F1值分别提升了16.6%、34.3%、26.4%、7.1%、4.9%。 展开更多
关键词 软件缺陷预测 语法语义信息 静态度量元 多头注意力机制 全局注意力机制
下载PDF
上一页 1 2 11 下一页 到第
使用帮助 返回顶部