[发明专利]一种基于注释语义信息的代码搜索方法有效

专利信息
申请号: 202011296561.2 申请日: 2020-11-18
公开(公告)号: CN112507065B 公开(公告)日: 2022-07-12
发明(设计)人: 银正强;周尔强;曹黛;罗纪杰 申请(专利权)人: 电子科技大学
主分类号: G06F16/33 分类号: G06F16/33;G06F16/338;G06F40/126;G06K9/62;G06N3/08
代理公司: 成都东恒知盛知识产权代理事务所(特殊普通合伙) 51304 代理人: 何健雄;廖祥文
地址: 610000 *** 国省代码: 四川;51
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 注释 语义 信息 代码 搜索 方法
【权利要求书】:

1.一种基于注释语义信息的代码搜索方法,其特征在于:所述搜索方法包括:

从收集的代码仓库中得到存储为“自然语言描述,函数代码”形式的代码样本,对代码样本进行数据处理后通过神经网络模型编码器进行编码,并对神经网络模型进行训练;

通过神经网络模型编码器将代码仓库中的所有代码函数和用户的输入转化为向量形式并构建代码向量仓库,计算代码向量仓库中与用户输入转化后的向量最接近的多个代码向量,并返回对应的代码作为检索结果;

所述从收集的代码仓库中得到存储为“自然语言描述,函数代码”形式的代码样本,对代码样本进行数据处理后通过神经网络模型编码器进行编码,并对神经网络模型进行训练包括:

收集现有的代码仓库提取代码片段,将具备函数注释的函数代码作为一个样本,并存储为“自然语言描述,函数代码”形式;

清理样本数据,将代码样本中的自然语言描述,函数代码部分文本进行清理,使用移除非法字符或拆分令牌或构建新词的方法构建令牌token列表形式;

采用替换“自然语言描述,函数代码”形式中对应部分为其他样本对应部分的方法构造新的代码样本,其中,发生替换的样本为负样本,没有发生替换的样本为正样本;

使用两个Transformer神经网络模型编码器E1和E2分别对“自然语言描述,函数代码”形式的代码样本进行编码,编码为向量形式即自然描述的向量Vq和代码的向量Vc

训练神经网络模型,使得正样本的自然语言描述的向量Vq和代码的向量Vc无限的接近,负样本无限的远离,采用余弦相似度作为衡量向量接近程度,并通过反向传播调整模型参数。

2.根据权利要求1所述的一种基于注释语义信息的代码搜索方法,其特征在于:所述通过神经网络模型编码器将代码仓库中的所有代码函数和用户的输入转化为向量形式并构建代码向量仓库,计算代码向量仓库中与用户输入转化后的向量最接近的多个代码向量,并返回对应的代码作为检索结果包括:

将代码仓库中的所有代码函数采用编码器E2转化为向量形式进行存储,构建代码向量仓库R;

用户搜索代码仓库时,将用户的输入使用编码器E1转化为向量形式,计算代码向量仓库R中与用户输入向量最接近的N个代码向量,返回其对应的代码作为检索结果。

3.根据权利要求1所述的一种基于注释语义信息的代码搜索方法,其特征在于:所述清理样本数据,将代码样本中的自然语言描述,函数代码部分文本进行清理,使用移除非法字符或拆分令牌或构建新词的方法构建令牌token列表形式包括:

基于空格、括号和控制符将文本分为小块token形式,对于以注释符号开头的token进行移除,字符串token采用特殊标记进行替换;

对每一个token根据常见的代码命名方式进行切分,产生更细粒度的token;

重新组合token以空格形式进行拼接为文本形式;

采用BPE方法进行数据压缩与编码,生成新的token。

4.根据权利要求3所述的一种基于注释语义信息的代码搜索方法,其特征在于:所述使用两个Transformer神经网络模型编码器E1和E2分别对“自然语言描述,函数代码”形式的代码样本进行编码,编码为向量形式即自然描述的向量Vq和代码的向量Vc包括:

对文本的token列表的长度进行判断,并根据对比其与指定长度M或超过指定长度M的关系后对文本进行处理;

将token映射为一个随机初始化的N维向量形式,则文本被表示为一个M×N的矩阵;

将矩阵输入一个语义提取网络Transformer中,Transformer网络的输出为M×K维矩阵,表示提取的语义矩阵;

使用池化的方法将语义矩阵转换为一个1×K维向量形式,该向量可以认为是这个文本的稠密向量表示。

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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