[发明专利]图神经网络模型训练方法、软件缺陷检测方法及系统在审
申请号: | 202011286945.6 | 申请日: | 2020-11-17 |
公开(公告)号: | CN112288079A | 公开(公告)日: | 2021-01-29 |
发明(设计)人: | 高栋栋;江云松;陈睿;高猛;于婷婷;李超;滕俊元;贾春鹏;王峥;杨帆 | 申请(专利权)人: | 北京轩宇信息技术有限公司 |
主分类号: | G06N3/04 | 分类号: | G06N3/04;G06N3/08;G06F11/36 |
代理公司: | 中国航天科技专利中心 11009 | 代理人: | 陈鹏 |
地址: | 100190 北京市海淀区科学院*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 神经网络 模型 训练 方法 软件 缺陷 检测 系统 | ||
本发明公开了一种图神经网络模型训练方法、软件缺陷检测方法及系统。包括:根据软件缺陷数据集,获取训练软件函数及测试软件函数,训练软件函数和测试软件函数预先标注有初始缺陷数据;根据训练软件函数的多维代码属性,构建初始多维代码属性图,根据测试软件函数的多维代码属性,构建目标多维代码属性图;基于初始多维代码属性图对初始图神经网络模型进行训练,得到训练后的图神经网络模型;基于目标多维代码属性图对训练后的图神经网络模型进行测试,获取预测缺陷数据;在初始缺陷数据和预测缺陷数据匹配时,将训练后的图神经网络模型作为目标图神经网络模型。本发明可以提高软件缺陷检测精度,减少了人工干预的过程,易于扩展检测的缺陷类型。
技术领域
本发明涉及软件测试技术领域,特别是一种图神经网络模型训练方法、软件缺陷检测方法及系统。
背景技术
软件缺陷是计算机程序中的错误、故障、失效,可能引起不正确或非预期的结果,或破坏软件的正常运行。特别是在安全关键领域,软件缺陷可能造成巨大的经济损失或安全威胁,尽可能的降低软件缺陷来提高软件质量是业界一直追求的目标,而软件缺陷的自动化检测可以降低人工测试的成本,提高测试效率和质量,已成为软件测试中必不可少的手段。
传统的软件缺陷自动检测方法多数是基于程序分析来完成的,根据已有代码中发现的缺陷,将其总结为缺陷特征/模式,然后提出相应的检测算法。根据是否需要运行软件,一般可以分为静态检测方法与动态检测方法两类。静态检测方法由于不涉及被测软件的动态执行,并且可以在运行程序之前的早期阶段检测可能的缺陷而被广泛使用,但存在以下不足:1)自动检测的误报率高。目前静态检测方法是通过对程序的某种特性或某个层次进行建模分析,并没有综合利用代码不同维度的信息,误报率普遍在30%以上,大量的误报带来大量的人工审查成本,当误报率太高时会造成真正的缺陷淹没在检测结果中而无法实际应用;2)软件缺陷特征/模式需要人工提取,泛化性差。软件的缺陷通常与触发缺陷的场景、代码上下文密切相关,人工提取的缺陷特征完全依赖软件测试人员具备的先验知识,泛化能力弱,从而也造成了可检测的缺陷类型难以扩展。
发明内容
本发明解决的技术问题是:克服现有技术的不足,提供了一种图神经网络模型训练方法、软件缺陷检测方法及系统。
为了解决上述技术问题,本发明实施例提供了一种图神经网络模型训练方法,包括:
根据构建的软件缺陷数据集,获取用于进行图神经网络模型训练的训练软件函数,及用于图神经网络模型训练的测试软件函数,所述训练软件函数和所述测试软件函数预先标注有初始缺陷数据;
根据所述训练软件函数对应的多维代码属性,构建所述训练软件函数对应的初始多维代码属性图,并根据所述测试软件函数对应的多维代码属性,构建所述测试软件函数对应的目标多维代码属性图;
基于所述初始多维代码属性图对初始图神经网络模型进行训练,得到训练后的图神经网络模型;
基于所述目标多维代码属性图对所述训练后的图神经网络模型进行测试,获取由所述训练后的图神经网络模型输出所述测试软件函数对应的预测缺陷数据;
在所述初始缺陷数据和所述预测缺陷数据匹配的情况下,将所述训练后的图神经网络模型作为最终的目标图神经网络模型。
可选地,所述根据所述训练软件函数对应的多维代码属性,构建所述训练软件函数对应的初始多维代码属性图,并根据所述测试软件函数对应的多维代码属性,构建所述测试软件函数对应的目标多维代码属性图,包括:
根据所述训练软件函数的源代码对应的静态结构信息、控制流信息、变量的传递信息和函数调用信息,构建得到所述初始多维代码属性图;
根据所述测试软件函数的源代码对应的静态结构信息、控制流信息、变量的传递信息和函数调用信息,构建得到所述目标多维代码属性图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京轩宇信息技术有限公司,未经北京轩宇信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011286945.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种多功能烹饪装置
- 下一篇:一种用于阀门的智能防火气动执行机构