[发明专利]基于生成对抗网络的Java程序方法名推荐方法及系统有效

专利信息
申请号: 202310036231.7 申请日: 2023-01-10
公开(公告)号: CN115729532B 公开(公告)日: 2023-04-18
发明(设计)人: 徐悦甡;赵新瑜;黑蕾;李瑞;蒋志平 申请(专利权)人: 西安电子科技大学
主分类号: G06F8/30 分类号: G06F8/30;G06F8/41;G06N3/0464;G06N3/0475
代理公司: 成都九鼎天元知识产权代理有限公司 51214 代理人: 黎飞
地址: 710071 陕*** 国省代码: 陕西;61
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 基于 生成 对抗 网络 java 程序 法名 推荐 方法 系统
【说明书】:

本发明涉及Java程序方法名推荐技术领域,公开了基于生成对抗网络的Java程序方法名推荐方法及系统,该方法,包括以下步骤:S1,代码预处理;S2,方法名生成;S3,方法名判别;S4,生成对抗网络训练。本发明解决了现有技术存在的模型结构臃肿、针对性强、数据准备阶段消耗了大量的人工精力、不具有实用性等问题。

技术领域

本发明涉及Java程序方法名推荐技术领域,具体是基于生成对抗网络的Java程序方法名推荐方法及系统。

背景技术

随着信息产业的快速发展,从工业自动化生产到日常生活,软件已经融入人类社会的方方面面。然而,随着软件功能的日益复杂,软件维护难、成本高已经成为了现阶段急需解决的一大问题。开发人员在软件开发、更新迭代过程中使用了不恰当的变量名、方法名等,导致后续维护人员难以理解代码,增加软件维护的时间;开发人员对方法功能的扩充且没有及时的更新方法名,导致其他开发人员错误的使用方法,得到不正确的结果。这些情况都会导致软件代码可读性差、增加软件项目维护的难度、影响软件的质量。一个不适当的方法名,不仅会降低代码可读性,还会影响开发人员的工作心情、降低开发人员工作效率。因此,一个高质量、见名知意的方法名可以增加开发人员的工作效率、提高软件项目的可读性,从而降低软件项目的维护难度、减少维护费用。

现有技术方案:

北京工业大学的专利申请“一种基于两阶段框架的Java方法名推荐方法”(专利号:202110646079.5),该方法包括:首先通过启发式规则为Java方法中的getter/setter方法、delegations方法进行命名。第一步根据不同方法的方法名前缀对方法进行分类。第二步,针对特定前缀开头的方法采用基于频率的启发式规则来推荐方法名,而对于其他类型的方法采用RecursiveRNN来生成对应的方法名。该方法的缺点是,对于不同类型的方法名,所使用的推荐方法不同,且并未使用代码本身的结构信息,模型结构臃肿,针对性强。

北京工业大学的专利申请“一种基于seq2seq模型的Java方法名推荐方法”(专利号:202110727637.0),该方法包括:Java方法名采集阶段,从知名开源组织下采集基于Java语言的项目Git仓库,并提取Git仓库中的Java方法名。建立Java方法名词库阶段:提取Java方法名中的高频率标记,并采用人工标注的方式来为标注中文语义。建立中文同义词库阶段:通过人工标注的方式来为Java方法名词库中已经标记好中文的中文标记标注其同义词。创建数据样本阶段:采用人工标注的方式来为Java方法名标注中文语义。当开发者输入中文方法名,模型seq2seq会输出英文的方法名。方法名推荐阶段帮助中文开发者将中文方法名输入到seq2seq模型中,模型输出相应的Java方法名。该方法的缺点在于,数据准备阶段消耗了大量的人工精力,且功能为输入中文方法名推荐英文方法名,不具有实用性。

发明内容

为克服现有技术的不足,本发明提供了基于生成对抗网络的Java程序方法名推荐方法及系统,解决现有技术存在的模型结构臃肿、针对性强、数据准备阶段消耗了大量的人工精力、不具有实用性等问题。

本发明解决上述问题所采用的技术方案是:

基于生成对抗网络的Java程序方法名推荐方法,包括以下步骤:

S1,代码预处理:将Java程序代码解析成为抽象语法树,并抽取出Java程序代码的抽象语法树中所有两个终端节点之间的路径作为抽象语法树路径;

S2,方法名生成:基于Java程序代码的抽象语法树路径,给出推荐的Java程序方法名;

S3,方法名判别:判别待判别方法名是否由步骤S2所生成,并给出评分;

S4,生成对抗网络训练:基于步骤S3所给出的评分,分别计算出步骤S2和步骤S3的损失值和梯度,并根据损失值和梯度优化步骤S2和步骤S3中的参数。

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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