[发明专利]一种基于CodeBert和空间结构的代码缺陷预测方法在审

专利信息
申请号: 202210849413.1 申请日: 2022-07-19
公开(公告)号: CN115185730A 公开(公告)日: 2022-10-14
发明(设计)人: 鞠小林;沈逸恒;沈昊;陈翔 申请(专利权)人: 南通大学
主分类号: G06F11/07 分类号: G06F11/07;G06F8/75;G06N3/04;G06N3/08
代理公司: 南京经纬专利商标代理有限公司 32200 代理人: 张俊俊
地址: 226019 *** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 codebert 空间结构 代码 缺陷 预测 方法
【权利要求书】:

1.一种基于CodeBert和空间结构的代码缺陷预测方法,其特征在于,包括以下步骤:

S1、挖掘Git Hub中Stars数排名靠前的java项目,然后通过爬虫程序从issues中收集提交的缺陷代码段、缺陷描述及修复后的代码段,对非英文语言的缺陷描述翻译为英文,得到数据集D,设定数据集的格式为项目名,缺陷代码,修复后代码,缺陷描述;

S2、使用CodeBert提取代码语义特征,并通过BERT-whitening进行关键特征提取和降维;

S3、考虑数据集代码的抽象语法树信息,通过最短路径长度表示代码空间结构信息;

S4、对构建的数据集随机划分成训练集、验证集和测试集,同时构建bi-LSTM及LSTM神经网络;

S5、将步骤S2中提取的语义特征向量输入bi-LSTM神经网络,其最后一层输出hiddenstate信息;

S6、用所述步骤S3得到的代码空间结构信息和所述步骤S5得到的hidden state作为输入重新进入LSTM神经网络;

S7、对所述步骤S5和S7得到的hidden state引入Attention机制进一步获取比较重要的hidden state信息;

S8、使用softmax回归模型对步骤S7得到的hidden state信息归一化,从而判断代码是否有缺陷。

2.根据权利要求1所述的基于CodeBert和空间结构的代码缺陷预测方法,其特征在于,所述S2包括如下步骤:

S21:对于给定的代码段,根据大小写规则对其进行分割,得到输入序列;

S22:将序列输入到CodeBert中,提取输出中第一层和最后一层的隐藏状态,并对它们取平均值,得到代码段的语义特征向量;

S23:使用BERT-whitening来处理语义向量,通过线性变换进行关键特征提取和降维。

3.根据权利要求1所述的基于CodeBert和空间结构的代码缺陷预测方法,其特征在于,所述S3包括如下步骤:

S31:首先根据solidity-parser-antlr将代码生成相应的抽象语法树,记作ASTs;

S32:使用广度优先搜索的算法生成AST的最短路径长度矩阵,记作A;

S33:对矩阵A中的非零元素Aij取倒数,得到空间结构信息矩阵,记作Aast。

4.根据权利要求1所述的基于CodeBert和空间结构的代码缺陷预测方法,其特征在于,所述S4包括如下步骤:

S41:对于S1得到的数据集进行划分,按照80%:10%:10%的比例进行随机划分训练集、测试集和验证集;

S42:神经网络使用bi-LSTM和LSTM堆叠,bi-LSTM在前,LSTM在后,同时将bi-LSTM的隐状态向量hi作为LSTM的输入。

5.根据权利要求1所述的基于CodeBert和空间结构的代码缺陷预测方法,其特征在于,所述步骤S5将S2得到的语义特征向量Xi作为bi-LSTM的输入,其最后一层的隐状态向量为hi。

6.根据权利要求1所述的基于CodeBert和空间结构的代码缺陷预测方法,其特征在于,所述步骤S6将步骤S3得到的空间结构信息矩阵Aast和步骤S5得到的隐状态向量hi作为LSTM的输入,其最后一层的隐状态向量为hj。

7.根据权利要求1所述的基于CodeBert和空间结构的代码缺陷预测方法,其特征在于,所述步骤S7引入Attention机制,对所有step的hidden state进行加权,把注意力集中到比较重要的hidden state信息上。

8.根据权利要求1所述的基于CodeBert和空间结构的代码缺陷预测方法,其特征在于,所述步骤S8使用softmax回归模型对步骤S7得到的hidden state信息归一化,从而判断代码是否有缺陷。

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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