[发明专利]一种Github开源平台数据的获取方法及源代码缺陷修复系统有效

专利信息
申请号: 202110312352.0 申请日: 2021-03-24
公开(公告)号: CN113127339B 公开(公告)日: 2023-02-10
发明(设计)人: 房鼎益;范子茜;徐榕泽;赵佳琪;叶贵鑫;汤战勇 申请(专利权)人: 西北大学
主分类号: G06F11/36 分类号: G06F11/36;G06F8/41;G06N3/08;G06N3/0464
代理公司: 西安恒泰知识产权代理事务所 61216 代理人: 史玫
地址: 710069 *** 国省代码: 陕西;61
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 github 平台 数据 获取 方法 源代码 缺陷 修复 系统
【权利要求书】:

1.一种Github开源平台数据的获取方法,其特征在于,方法包括

步骤1,获取Github开源平台的数据作为源数据,并筛选出源数据中的Type类型为“fix”的commit记录;

步骤2,删除Type类型为“fix”的commit记录中不符合缺陷修复正则表达式规则的commit记录;

步骤3,采用commit记录分类网络对步骤2获得的commit记录进行分类,获取包含单一修改意图的commit message的commit记录;所述commit记录分类网络是将commit记录分为包含单一修改意图的commit message的commit记录和包含多个修改意图的commitmessage的commit记录;

步骤4,删除步骤3所获得的commit记录中变更方法涉及多个项目文件的commit记录及变更范围大于1M的commit记录,并去重后得到获取的数据。

2.如权利要求1所述的Github开源平台数据的获取方法,其特征在于,步骤1中根据fork数排序获取Github开源平台的数据作为源数据。

3.如权利要求1所述的Github开源平台数据的获取方法,其特征在于,所述commit记录分类网络采用Bi-LSTM网络。

4.一种源代码缺陷修复模型的构建方法,其特征在于,方法包括:

Step1,采用权利要求1所述方法获取数据;

Step2,对所获取的数据中的commit记录进行缺陷类型分类;

Step3,获取各种缺陷类型commit记录的变更前的文件对象Bug file和变更后的文件对象Fix file;

Step4,对获取的所有变更前的文件对象Bug file和变更后的文件对象Fix file进行解析,提取Bug func和Fix func,之后进行切片得到Bug func的至少一个切片函数和Fixfunc的至少一个切片函数,所有commit记录的Bug func的切片函数和Fix func的切片函数构成训练集;

Step5,对各切片函数进行序列化和第一向量化处理后,以同一缺陷类型的Bug func的切片函数向量为源输入、Fix func的切片函数向量为输出目标对Encoder-Decoder网络进行训练,得到各缺陷类型的补丁生成模型;

采用基于AST路径的源代码向量化对Bug func的至少一个切片函数进行第二向量化处理后,以所有Bug func的切片函数的向量为输入,缺陷类型为标签对Bi-LSTM网络进行训练得到源代码缺陷分类模型。

5.如权利要求4所述的源代码缺陷修复模型的构建方法,其特征在于,Step2中具体根据缺陷类型的关键字进行分类;所述缺陷类型采用CWE描述的缺陷类型。

6.如权利要求4所述的源代码缺陷修复模型的构建方法,其特征在于,Step5中采用分词算法对各切片函数进行序列化,接着采用Word2Vec方法对序列化结果进行第一向量化处理。

7.一种源代码缺陷修复模型修复系统,其特征在于,所述系统包括:

数据预处理模块、权利要求4所构建的源代码缺陷分类模型和各缺陷类型的补丁生成模型;所述数据预处理模块对待修复的源代码缺陷定位及预处理获得所述源代码缺陷分类模型和各缺陷类型的补丁生成模型可识别的输入数据。

8.一种源代码缺陷修复模型修复方法,其特征在于,方法包括:

对待修复的源代码的进行缺陷定位,之后对缺陷所在数据进行预处理;

采用权利要求4所构建的源代码缺陷分类模型对预处理后的数据进行缺陷分类;

对分类后的数据进行解析、切片、序列化和第一向量化处理后,输入权利要求4所构建的各缺陷类型的补丁生成模型进行修复。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西北大学,未经西北大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202110312352.0/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top