[发明专利]基于CNN-SVM的软件缺陷预测方法在审
申请号: | 202011430269.5 | 申请日: | 2020-12-09 |
公开(公告)号: | CN112631898A | 公开(公告)日: | 2021-04-09 |
发明(设计)人: | 雷杨;朱耀琴 | 申请(专利权)人: | 南京理工大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06N3/04 |
代理公司: | 南京理工大学专利中心 32203 | 代理人: | 封睿 |
地址: | 210094 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 cnn svm 软件 缺陷 预测 方法 | ||
本发明提出了一种基于CNN‑SVM的软件缺陷预测方法,从软件历史开发数据中提取软件数据特征,将获得的数据特征进行归一化处理;对归一化后的缺陷样本的数据特征进行SMOTE样本扩充;构建CNN‑SVM模型,正常样本和扩充后的缺陷样本一起输入到CNN‑SVM模型中,先由CNN网络进行卷积、下采样和扁平化处理,完成特征提取后,输入到SVM层进行缺陷预测;采用RMSProp优化器,基于binary_cross_entroy损失函数进行优化拟合,完成CNN‑SVM模型的训练;将目标软件缺陷特征输入训练好的CNN‑SVM模型,输出预测结果。本发明在较为复杂和不平衡问题较大的数据集上,其性能相较于目前性能较好的无监督学习和半监督学习更优。
技术领域
本发明涉及软件可靠性检测技术,具体涉及一种基于CNN-SVM的软件缺陷预测方法。
背景技术
随着社会信息化持续深入发展,软件在我们的日常生活中变得无处不在、无所不在。但随之而来的是,软件缺陷导致的软件出错、失效、崩溃等质量问题层出不穷。软件缺陷是计算机中存在的某种破坏软件和程序正常运行的错误,或者尚未发现的功能缺陷。提前发现软件缺陷并提供解决方案有助于提高软件质量、降低维护成本并增强用户信任度。
如何有效的进行软件缺陷预测一直是软件工程师研究的重要领域。其中,基于机器学习的软件缺陷预测方法是技术研究人员研究的热点内容之一。主要是根据软件历史开发数据中的软件数据特征以及已发现的缺陷,通过机器学习来对目标软件项目中的缺陷数目或缺陷类型等进行预测。一般可以考虑代码、注释、参数、操作数符、调用关系等因素对软件缺陷的影响,或者基于Halstead度量法、 McCabe度量法去提取软件数据特征信息。缺陷的产生与各类软件数据特征具有不尽相同的非线性相关性,同时软件数据特征之间也具有一定的相关性。除此之外,在软件历史开发数据中,缺陷数据数目远小于正常数据,由此带来了样本类不平衡的问题。目前大多缺陷预测算法都在某一特定数据集上进行实验,其不能保证在各类不同的软件数据上具有一致的效果。
发明内容
本发明的目的在于提出一种基于CNN-SVM的软件缺陷预测方法。
实现本发明目的的技术解决方案为:一种基于CNN-SVM的软件缺陷预测方法,包括如下步骤:
步骤1,从软件历史开发数据中提取软件数据特征,将获得的数据特征进行归一化处理;
步骤2,对归一化后的缺陷样本的数据特征进行SMOTE样本扩充;
步骤3,构建CNN-SVM模型,正常样本和扩充后的缺陷样本一起输入到 CNN-SVM模型中,先由CNN网络进行卷积、下采样和扁平化处理,完成特征提取后,输入到SVM层进行缺陷预测;
步骤4,采用RMSProp优化器,基于binary_cross_entroy损失函数进行优化拟合,完成CNN-SVM模型的训练;
步骤5,将目标软件缺陷特征输入训练好的CNN-SVM模型,输出预测结果。
进一步的,步骤1,从软件历史开发数据中提取软件数据特征,将获得的数据特征进行归一化处理,具体方法为:
从软件历史开发数据中提取软件数据特征,包括代码结构信息、代码行数信息、数符信息、可读性信息、McCabe度量信息、Halstead度量信息以及缺陷信息;
将获得的数据特征进行归一化处理,公式为:
其中,xmax与xmin分别为某一数据特征信息列中的最大、最小值,x'为对每一个数据特征信息x作归一化后得到结果。
进一步的,步骤2,对归一化后的缺陷样本的数据特征进行SMOTE样本扩充,其中,SMOTE算法是一种合成少数类的随机过采样技术,算法步骤如下:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京理工大学,未经南京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011430269.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种实现多服务器免密登录的方法及相关装置
- 下一篇:一种高效散热配电箱