[发明专利]基于深度神经网络和概率决策森林的软件缺陷预测模型在审
申请号: | 201811282618.6 | 申请日: | 2018-10-31 |
公开(公告)号: | CN109446090A | 公开(公告)日: | 2019-03-08 |
发明(设计)人: | 邱宇;徐思涵;刘奥;朱静雯;许静 | 申请(专利权)人: | 南开大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06K9/62 |
代理公司: | 天津耀达律师事务所 12223 | 代理人: | 侯力 |
地址: | 300071*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 神经网络 森林 概率 决策 代码修改 缺陷预测 软件缺陷 特征学习 预测模型 端到端 参数优化 传统特征 分类结果 集成学习 模型集成 模型使用 使用概率 输出节点 随机森林 自动学习 分类器 决策树 分裂 准确率 高维 映射 分类 全局 改进 网络 | ||
1.一种基于深度神经网络和概率决策森林的软件缺陷预测模型,其特征在于含有以下步骤:
步骤1、从软件代码修改中提取用来区分有缺陷修改和无缺陷修改的传统特征;
步骤2、使用深度神经网络对所提取的传统特征进行高维映射,学习出传统特征的高维特征表达;
步骤3、设计一种概率决策森林作为分类器,并将此概率决策森林和深度神经网络的特征学习相结合得到预测模型,对该预测模型进行端到端的训练,进行完整的、联合的、全局的深度学习参数优化;该预测模型能够将深度神经网络学习到的特征输入到概率决策森林中实现分类,分为有缺陷和无缺陷两类,同时,通过分类性能来限制深度神经网络的学习过程,从而使深度神经网络学习出使得分类性能最优的高维特征,因此可以最大限度的提高预测性能;
步骤4、使用集成学习的思想将步骤3中的预测模型进行集成,并进行最终的缺陷预测。
2.根据权利要求1所述的一种基于深度神经网络和概率决策森林的软件缺陷预测模型,其特征在于:所述预测模型的预测过程是将一系列软件代码修改的特征输入到该预测模型,该预测模型将这些代码修改预测为有缺陷的修改和无缺陷的修改两类。
3.根据权利要求1所述的一种基于深度神经网络和概率决策森林的软件缺陷预测模型,其特征在于:步骤2中所述的高维特征表达比原始特征更有利于最终的预测性能;其中,深度神经网络使用的是四层全连接网络,即深度神经网络由输入层、两个隐藏层和输出层组成,其中层与层之间是全连接;将传统特征作为输入传入到深度神经网络中,然后经过两个隐藏层后,得到高维输出,即一组传统特征的高维特征表达。
4.根据权利要求1所述的一种基于深度神经网络和概率决策森林的软件缺陷预测模型,其特征在于:步骤3中所述使用概率决策森林做分类器并实现深度神经网络和概率决策森林的端到端训练中,提出了一套完整的、联合的、全局的深度学习参数优化方法,该方法是:
改进了传统的随机森林,提出了概率决策森林;即该预测模型中的概率决策森林中决策树的决策节点是一个路径计算函数,即每个样本最终落入到某一叶子结点的概率值;此外,概率决策树中的决策节点和深度神经网络的输出是一一对应的,因此其决策节点并不是由某一算法固定得到的,而是使用神经网络自动学习得到的;由神经网络学习到的特征即为决策树中的相应的决策节点,为实现深度神经网络和概率决策森林的端到端训练,本发明设计了一个全局损失函数,并且训练的目标就是使此损失函数的值最小,这样就能够学习出使得分类性能最优的高维特征从而提高最终的分类性能。
5.根据权利要求1所述的一种基于深度神经网络和概率决策森林的软件缺陷预测模型,其特征在于:步骤4中所述使用集成学习的思想将步骤3中的预测模型进行集成并进行缺陷预测的方法是:集成学习本身不是一个单独的机器学习算法,而是通过构建并结合多个机器学习模型来完成学习任务,其中的单个模型能够单独进行训练,并且它们的预测能以某种方式结合起来去做出一个总体预测;本发明中,使用集成方式bootstrapaggregation(bagging)进行集成;bagging方法又称自助聚集,具体是指将原始数据集进行N次随机采样,得到N个子数据集,使用这N个子数据集训练得到N个弱分类器,然后使用弱分类器进行投票,结合成一个强分类器;并使用该预测模型进行缺陷预测;预测过程是,将一系列软件代码修改输入到预测模型,预测模型将这些代码修改分成有缺陷的修改和无缺陷的修改两类。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南开大学,未经南开大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811282618.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于区块链技术的软件测试平台
- 下一篇:业务实体对象测试方法及装置