[发明专利]一种树序列化嵌入的软件代码推荐方法在审

专利信息
申请号: 202210336803.9 申请日: 2022-03-31
公开(公告)号: CN114647418A 公开(公告)日: 2022-06-21
发明(设计)人: 文万志;陆晓虹;梁文栋;陈志强;宋梦婷;赵甜;支宝;胡彬 申请(专利权)人: 南通大学
主分类号: G06F8/41 分类号: G06F8/41;G06F8/30;G06F8/73;G06F16/33;G06K9/62
代理公司: 南通一恒专利商标代理事务所(普通合伙) 32553 代理人: 梁金娟
地址: 226019 *** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 种树 序列 嵌入 软件 代码 推荐 方法
【说明书】:

发明提供一种树序列化嵌入的软件代码推荐方法,主要用于解决开发过程中出现的代码功能实现问题,包括如下步骤:步骤1、通过解析抽象语法树AST分别将向量化的代码和注释嵌入到向量空间中并计算相似度,建立TCDEnn模型;步骤2、收集java代码,通过AST节点提取进行预处理构建训练集和测试集,用来训练和测试TCDEnn模型;步骤3、收集高质量的java代码,建立代码搜索库,开发人员输入描述查询代码搜素库,对搜索代码库中的AST向量与功能描述向量计算相似度,将相似度值最高的k个代码向量返回给开发人员。本发明可以通过直接描述功能需求的形式得到对应代码,有效节省开发时间,提高开发效率。

技术领域

本发明属于信息检索技术领域,具体涉及一种树序列化嵌入的软件代码推荐方法,根据开发过程中的功能需求进行代码推荐。

背景技术

面对IT发展的黄金时期,越来越多的专业或非专业人员加入到开发行列中。在开发人员开发软件时,一些功能需求或者任务要求可能涉及开发人员此前没有接触过的编程方式或者领域。现有的搜索引擎,大多是根据自然语言的关键字匹配来寻找答案的,这样的搜索方式显然并不能够反应代码的语义和结构信息,也就难以找到真正符合功能需求的目标代码。这造成了开发人员需要浪费很多时间,浏览大量无用信息。

技术知识和开发经验的不足,使得软件的开发效率难以提升。互联网行业迎来裁员浪潮。为了降低开发门槛,提高开发效率,无代码开发和低代码开发成为人们关注的下一个焦点。无代码开发的一种体现形式就是利用自然语言的描述来实现开发过程。

为了响应无代码开发的时代需求,为了提高开发人员的编程效率,提出了根据开发需求自动生成代码段的代码推荐方法。

发明内容

本发明要解决的技术问题是提供一种树序列化嵌入的软件代码推荐方法,通过直接描述功能需求的形式得到对应代码,有效节省开发时间,提高开发效率。

为解决上述技术问题,本发明的实施例提供一种树序列化嵌入的软件代码推荐方法,包括如下步骤:

S1、通过解析抽象语法树AST分别将向量化的代码和注释嵌入到向量空间中并计算相似度,建立TCDEnn模型;

S2、收集java代码,通过AST节点提取进行预处理构建训练集和测试集,用来训练和测试TCDEnn模型;

S3、收集高质量的java代码,建立代码搜索库,开发人员输入描述查询代码搜素库,对搜索代码库中的AST向量与功能描述向量计算相似度,将相似度值最高的k个代码向量返回给开发人员。

其中,步骤S1中的TCDEnn模型包括三部分:AST嵌入、自然语言嵌入和相似度计算,其中,

S1.1、AST嵌入:将java代码解析成AST,并遍历节点,将AST嵌入到向量空间中;

S1.2、自然语言嵌入:将代码注释中用自然语言描述的代码功能内容嵌入到向量空间中;

S1.3、相似度计算:组合使用余弦相似度和曼哈顿距离来计算AST向量和功能描述向量在表达语义上的相似性。

其中,步骤S1.1包括如下步骤:

S1.1.1、使用Eclipse的JDT编译器将java代码解析成可视化的AST,提取代码和注释;

S1.1.2、通过观察AST结构特征,递归遍历AST节点,将AST转化成节点序列ASTseq,假设输入序列ASTseq={b1,b2,b3,…,bn},使用GRU网络将ASTseq嵌入向量:

ht=G(ht-1,bt),t∈{1,2,...,n};

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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