[发明专利]基于集成学习的软件缺陷预测方法、存储介质和计算设备在审
申请号: | 202110192553.1 | 申请日: | 2021-02-20 |
公开(公告)号: | CN112905468A | 公开(公告)日: | 2021-06-04 |
发明(设计)人: | 陆璐;王志涵 | 申请(专利权)人: | 华南理工大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06K9/62;G06N3/04;G06N20/20 |
代理公司: | 广州市华学知识产权代理有限公司 44245 | 代理人: | 郑浦娟 |
地址: | 510640 广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 集成 学习 软件 缺陷 预测 方法 存储 介质 计算 设备 | ||
本发明公开了一种基于集成学习的软件缺陷预测方法、存储介质和计算设备,方法包括首先进行软件模块预处理;然后构建基于神经网络的特征提取网络,提取出软件模块的语义特征;再通过挖掘软件缺陷跟踪系统或软件历史仓库,设计各种可衡量软件质量好坏的内在度量元;接着基于语义特征和内在度量元,利用分类算法分别训练得到多个基分类器;最后基于集成学习融合多个基分类器,获得最终的软件模块预测结果。本发明充分利用了软件模块的不同特征,可准确预测软件缺陷。
技术领域
本发明涉及软件缺陷预测技术领域,特别涉及一种基于集成学习的软件缺陷预测方法、存储介质和计算设备。
背景技术
随着信息技术的发展,软件作为一种信息技术的主要载体,广泛应用在各个领域。如今,软件的规模越来越大,越来越复杂,其存在缺陷的可能性也逐渐提高。软件系统在运行时出现的故障不仅带来巨大的经济损失,还有可能产生安全事故,危害到人的生命安全,因此,为保证软件质量,预测软件缺陷很有必要。开发人员使用软件缺陷预测技术可以更有效地来分配有限的测试资源,在软件部署前及时发现软件中可能存在的内在缺陷或者bug,从而有效减少软件上线后出现故障所带来的损失。
目前现有的软件缺陷预测主要有:(1)基于机器学习的传统软件缺陷预测方法,首先,通过挖掘及分析软件历史仓库,设计出与软件缺陷存在强相关性的度量元,比如反映代码内在复杂度的度量元、和开发过程有关的度量元等等。基于软件模块的这些度量元,使用机器学习等方法构建软件缺陷预测模型,来预测软件模块的内在缺陷。通常,软件模块可以是一个方法,一个类,一个文件或者包含多个文件的功能模块。(2)基于深度学习的软件缺陷预测方法,使用一些神经网络来完成程序代码中语义信息的提取,比如深度信念网络DBN,卷积神经网络CNN,在预测软件模块的缺陷倾向性方面也能取得比较好的效果。
然而,不同类型的特征反映的是软件模块不同的信息,仅利用语义信息或者软件度量来构建单一的分类器,预测效果有限,即没有充分利用多种类型的特征。另一方面,度量元的选取很大程度上依赖于度量人员的经验,而语义信息提取往往导致部分信息的丢失,单单使用其中一种来进行软件缺陷预测,容易产生误差,影响预测结果。
发明内容
本发明的第一目的在于克服现有技术的缺点与不足,提供一种基于集成学习的软件缺陷预测方法,充分利用了软件模块的多种不同特征,可准确预测软件缺陷。
本发明的第二目的在于提供一种计算机可读存储介质。
本发明的第三目的在于提供一种计算设备。
本发明的第一目的通过下述技术方案实现:一种基于集成学习的软件缺陷预测方法,包括以下步骤:
S1、软件模块预处理;
S2、构建基于神经网络的特征提取网络,提取出软件模块的语义特征;
S3、通过挖掘软件缺陷跟踪系统或软件历史仓库,设计可衡量软件质量好坏的各种内在度量元;
S4、对于语义特征和内在度量元这两类软件特征中的各个特征,利用分类算法分别训练得到相应的一个基分类器,每个基分类器都能基于输入的一个特征给出相应的软件模块缺陷预测结果;
S5、基于集成学习融合多个基分类器,获得最终的软件模块预测结果。
优选的,步骤S1中,软件模块预处理,具体是指:将软件模块转化为抽象语法树,将树中节点编码进行数学化表示,以便神经网络进行特征提取。
优选的,在步骤S2中,使用卷积自动编码器来构建特征提取网络,步骤S1经过预处理后的数据作为特征提取网络的输入,特征提取网络用来提取软件模块中蕴含的语法和语义信息;
卷积自动编码器包括编码器和解码器,编码器用于将输入压缩为更低维度的中间特征,解码器用于从中间特征还原出输入。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华南理工大学,未经华南理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110192553.1/2.html,转载请声明来源钻瓜专利网。