[发明专利]基于学习算法实现缺陷修复推荐的方法在审
申请号: | 201910623765.3 | 申请日: | 2019-07-11 |
公开(公告)号: | CN110442514A | 公开(公告)日: | 2019-11-12 |
发明(设计)人: | 孙小兵;朱轩锐;李斌 | 申请(专利权)人: | 扬州大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06K9/62;G06N3/04;G06N3/08 |
代理公司: | 南京理工大学专利中心 32203 | 代理人: | 马鲁晋 |
地址: | 225009*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于学习算法实现缺陷修复推荐的方法,包括以下步骤:针对收集的bug修复前和修复后的源代码,分别通过GumTree进行抽象语法树AST提取,获得bug修复前、修复后代码各自的AST编辑操作序列;对AST编辑操作序列进行筛选过滤;结合筛选过滤后的AST编辑操作序列,利用解析器抽象bug修复前和修复后的源代码,并分别映射为向量特征表示;根据映射后的向量特征表示训练神经网络,获得缺陷语句识别模型,由此识别出缺陷语句;基于源代码的语义特征为识别出的缺陷语句推荐修复方案。本发明方法根据代码之间的AST编辑操作,通过细粒度的代码分析实现模型特征表示,并联系上下文关系对缺陷代码进行定位,能获得具有细粒度性质的修复推荐方案,使得修复更加准确。 | ||
搜索关键词: | 修复 编辑操作 源代码 缺陷修复 向量特征 学习算法 细粒度 映射 语句 过滤 训练神经网络 筛选 抽象语法树 上下文关系 代码分析 模型特征 缺陷代码 语句识别 语义特征 解析器 抽象 后代 | ||
【主权项】:
1.一种基于学习算法实现缺陷修复推荐的方法,其特征在于,包括以下步骤:步骤1、针对收集的bug修复前和修复后的源代码,分别通过GumTree进行抽象语法树AST提取,获得bug修复前、修复后代码各自的AST编辑操作序列;步骤2、对AST编辑操作序列进行筛选过滤;步骤3、结合筛选过滤后的AST编辑操作序列,利用解析器抽象bug修复前和修复后的源代码,并分别映射为向量特征表示;步骤4、根据映射后的向量特征表示训练神经网络,获得缺陷语句识别模型,由此识别出缺陷语句;步骤5、基于源代码的语义特征为步骤4识别出的缺陷语句推荐修复方案。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于扬州大学,未经扬州大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201910623765.3/,转载请声明来源钻瓜专利网。