[发明专利]一种基于长短期记忆网络的代码推荐方法有效

专利信息
申请号: 201710687197.4 申请日: 2017-08-11
公开(公告)号: CN107506414B 公开(公告)日: 2020-01-07
发明(设计)人: 余啸;殷晓飞;刘进;伍蔓;姜加明;崔晓晖 申请(专利权)人: 武汉大学
主分类号: G06F16/9535 分类号: G06F16/9535;G06F16/9536
代理公司: 42222 武汉科皓知识产权代理事务所(特殊普通合伙) 代理人: 鲁力
地址: 430072 湖*** 国省代码: 湖北;42
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明涉及一种基于长短期记忆网络的代码推荐方法,针对现有代码推荐技术普遍存在推荐准确率低、推荐效率低等问题,本发明先将源代码提取成API序列,利用长短期记忆网络构建一个代码推荐模型,学习API调用之间的关系,然后进行代码推荐。并使用了dropout技术防止模型过拟合。同时提出运用ReLu函数代替传统饱和函数,解决梯度消失问题加快模型收敛速度,提高模型性能,充分发挥神经网络的优势。本发明的技术方案具有简单、快速的特点,能够较好地提高代码推荐的准确率和推荐效率。
搜索关键词: 一种 基于 短期 记忆 网络 代码 推荐 方法
【主权项】:
1.一种基于长短期记忆网络的代码推荐方法,其特征在于,包括以下步骤:/n步骤1,通过网络爬虫从GitHub网站爬取至少一万个Java开源软件代码,且每个Java开源软件代码的更新版本次数均超过1000次,这些开源软件代码构成了源代码库,然后对源代码进行预处理形成API序列事务库,并生成API字典和API向量矩阵,具体包括:/n步骤1.1,使用网络爬虫从GitHub网站爬取至少一万个更新版本次数已超过至少1000次的Java开源软件代码,形成源代码库;/n步骤1.2,以方法为单位,对一个方法中包含的代码提取出该方法的API序列,源代码库中所有方法提取出的所有API序列组成了API序列事务库;对方法中包含的代码提取出API序列的规则为只提取新建对象语句的API和对象调用方法语句的API;新建对象语句提取出的API表示为“类名.new”,这里的类名为新建的对象所属的类的名字;对象调用方法语句提取出的API表示为“类名.方法名”,这里的类名为该对象所属的类的名字;/n步骤1.3,从API序列事务库中提取出API字典,并生成API向量矩阵;/nAPI字典定义为:设API序列事务库为D,API字典可以表示为V
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

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

本文链接:http://www.vipzhuanli.com/patent/201710687197.4/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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