基于极限学习机的软件缺陷预测研究
发布时间:2021-08-29 22:56
当前互联网行业下,软件的规模愈来愈大,导致其复杂度也愈来愈高,这意味着软件中隐藏的缺陷会随之增多,严重时还会给软件公司造成经济损失,甚至会威胁人们的安全。因此,如何有效地发现软件缺陷显得尤为重要。软件缺陷预测是借助于已有项目数据构建预测模型,预测目标项目中的缺陷。目前主流方法主要基于机器学习构建缺陷预测模型,且大多已取得较好的预测效果。然而,现有缺陷预测模型仍存在不足,如:模型性能提高,数据集不平衡和部分目标项目数据稀少等问题。因此,针对现有问题,本文提出基于极限学习机(extreme learning machine,ELM)的软件缺陷预测模型,具体包括以下工作:1)在缺陷预测模型的预测精度和训练速度有待提高的问题上,本文借助于极限学习机泛化能力强、训练速度快的特点,在软件缺陷预测上构造了有监督分类和无监督聚类两种预测模型,提出了ELM-CLA(ELM-Classification)和ELM-CLU(ELM-Clustering)两种算法。在NASA的11个数据集上,所提方法ELM-CLA和现有分类算法相比,得到较好的预测结果,且大大提高了模型的训练速度。同时,ELM-CLU方法,较...
【文章来源】:江苏科技大学江苏省
【文章页数】:80 页
【学位级别】:硕士
【部分图文】:
软件缺陷预测的整体处理过程
图 2. 2 同项目缺陷预测与跨项目缺陷预测模型Fig 2. 2 With-project defect prediction and cross-project defect prediction model尽管研究人员从预测精度、代价敏感、实际应用等方面初步验证了 CPDP 的可行性,但较之 WPDP,其预测性能并不乐观。研究者们针对跨项目缺陷预测的问题提出了多种方法,大致可分为三类:有监督学习方法、半监督学习方法和无监督学习方法。[1] 有监督学习基于有监督的学习方法,适用于仅存在和目标项目相关的候选源项目的场景,该类方法将候选源项目中有标签的数据作为训练集,在该训练集上构建缺陷预测模型,然后对目标项目进行预测。[2] 半监督学习基于半监督的学习方法适用的场景为:除了存在一些和目标项目相关的候选源项目外,还在目标项目中含有少量含标签的目标项目模块。该方法主要将候选源项目中含标签的所有数据和目标项目中少量的标签数据放在一起作为训练集,构建缺陷预测模型,然后对目标项目中的无标签数据进行预测。
图 2. 3 跨项目缺陷预测的研究框架图Fig 2. 3 Framework of the research on CPDP陷预测性能评价指标软件缺陷预测中,合理的评价指标能更好地评估预测结果。下文将介中的常用评价指标。件缺陷预测可以看作是二分类问题,若将有缺陷模块设为正例,无缺,则每个实例的分类过程中可能出现以下四种情况:实际为有缺陷类缺陷类,即真正例(true positive, TP);实际为无缺陷类被错误划分为有例(false positive, FP);实际为无缺陷类被正确划分为无缺陷类,即真反, TN);实际为有缺陷类被错误划分为无缺陷类,即假反例(false negat智能中,混淆矩阵是表示精度评价的一种标准格式,用 n 行 n 列的矩本章所用混淆矩阵如表 2.1 所示:表 2. 1 混淆矩阵Tab 2. 1 Confusion matrix
【参考文献】:
期刊论文
[1]跨项目软件缺陷预测方法研究综述[J]. 陈翔,王莉萍,顾庆,王赞,倪超,刘望舒,王秋萍. 计算机学报. 2018(01)
硕士论文
[1]基于迁移学习的软件缺陷预测方法研究[D]. 倪超.南京大学 2017
本文编号:3371532
【文章来源】:江苏科技大学江苏省
【文章页数】:80 页
【学位级别】:硕士
【部分图文】:
软件缺陷预测的整体处理过程
图 2. 2 同项目缺陷预测与跨项目缺陷预测模型Fig 2. 2 With-project defect prediction and cross-project defect prediction model尽管研究人员从预测精度、代价敏感、实际应用等方面初步验证了 CPDP 的可行性,但较之 WPDP,其预测性能并不乐观。研究者们针对跨项目缺陷预测的问题提出了多种方法,大致可分为三类:有监督学习方法、半监督学习方法和无监督学习方法。[1] 有监督学习基于有监督的学习方法,适用于仅存在和目标项目相关的候选源项目的场景,该类方法将候选源项目中有标签的数据作为训练集,在该训练集上构建缺陷预测模型,然后对目标项目进行预测。[2] 半监督学习基于半监督的学习方法适用的场景为:除了存在一些和目标项目相关的候选源项目外,还在目标项目中含有少量含标签的目标项目模块。该方法主要将候选源项目中含标签的所有数据和目标项目中少量的标签数据放在一起作为训练集,构建缺陷预测模型,然后对目标项目中的无标签数据进行预测。
图 2. 3 跨项目缺陷预测的研究框架图Fig 2. 3 Framework of the research on CPDP陷预测性能评价指标软件缺陷预测中,合理的评价指标能更好地评估预测结果。下文将介中的常用评价指标。件缺陷预测可以看作是二分类问题,若将有缺陷模块设为正例,无缺,则每个实例的分类过程中可能出现以下四种情况:实际为有缺陷类缺陷类,即真正例(true positive, TP);实际为无缺陷类被错误划分为有例(false positive, FP);实际为无缺陷类被正确划分为无缺陷类,即真反, TN);实际为有缺陷类被错误划分为无缺陷类,即假反例(false negat智能中,混淆矩阵是表示精度评价的一种标准格式,用 n 行 n 列的矩本章所用混淆矩阵如表 2.1 所示:表 2. 1 混淆矩阵Tab 2. 1 Confusion matrix
【参考文献】:
期刊论文
[1]跨项目软件缺陷预测方法研究综述[J]. 陈翔,王莉萍,顾庆,王赞,倪超,刘望舒,王秋萍. 计算机学报. 2018(01)
硕士论文
[1]基于迁移学习的软件缺陷预测方法研究[D]. 倪超.南京大学 2017
本文编号:3371532
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/3371532.html