[发明专利]在API知识图谱上基于Q学习的API序列搜索方法在审

专利信息
申请号: 202210743639.3 申请日: 2022-06-27
公开(公告)号: CN114969272A 公开(公告)日: 2022-08-30
发明(设计)人: 苏小红;魏宏巍;张浚哲;郑伟宁;陶文鑫;蒋远 申请(专利权)人: 哈尔滨工业大学
主分类号: G06F16/33 分类号: G06F16/33;G06F16/36;G06N5/02;G06F16/35;G06N3/04;G06N7/00;G06N20/00
代理公司: 哈尔滨龙科专利代理有限公司 23206 代理人: 李智慧
地址: 150001 黑龙*** 国省代码: 黑龙江;23
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: api 知识 图谱 基于 学习 序列 搜索 方法
【说明书】:

发明公开了一种在API知识图谱上基于Q学习的API序列搜索方法,首先,设计了API本体结构,并从API文档与开源软件项目中抽取API知识用于构建API知识图谱。其次,通过Word2Vec词嵌入方法以及TransE表示学习方法生成强化学习的状态表示。再次,基于DQN方法,给出了基于强化学习的API序列搜索模型的训练算法。最后,基于训练好的强化学习模型,实现API序列搜索。本发明将API使用序列搜索任务转化为基于API知识图谱的路径搜索任务,能更好地保证搜索到的API序列的合法性。本发明采用强化学习实现API使用序列搜索,其独特的探索机制能探索更丰富的API调用方式,从而增强模型的泛化能力。

技术领域

本发明涉及一种API序列搜索方法,具体涉及一种在API知识图谱上基于Q学习的API序列搜索方法。

背景技术

在软件开发过程中,为了提高软件产品的开发效率,减少时间成本,开发者往往会采用代码复用的方式。其中,调用库或框架中的应用程序编程接口(ApplicationProgramming Interface,API)是一种最常见的代码复用方式。在软件开发过程中,开发者往往需要按照特定的顺序调用一组API去实现某个特定的功能。例如,为了实现蓝牙通讯模块,开发者可以调用如下所示的API序列:

notifier.acceptAndOpen()

→streamConnection.openInputStream()

→streamConnection.openOutputStream()

→inputStream.close()→outputStream.close()

然而近年来,API的数量爆炸式增长,即便是最优秀的开发者也难以掌握所有的API使用方法。以较为常见的.NET和JDK框架为例,其中包含的API数量有几百甚至上千之多。此外,微软在2009年发表的一项研究表明,由于缺少学习资料、API文档不规范等问题,67.7%的开发者都会在学习API的使用方法时遇到困难。为了弥补自身API知识的不足,开发者往往需要手动从不同的软件数据库(如官方API说明文档、第三方库说明文档和StackOverflow问答社区等)检索可以满足其需求的API序列。但是,现有的搜索引擎难以精准搜索到可以满足功能需求的API序列,而手动搜索API序列往往效率较低。

针对这一问题,部分研究聚焦于针对给定功能描述的API序列的生成方法,用于辅助开发者快速获得可以实现其功能需求的API序列。目前最有代表性的工作是DeepAPI(DeepAPI Learning,2016),该方法认为API调用序列与自然语言相似,具有自然性,因此可以使用机器翻译模型将给定的功能描述翻译为对应的API序列。但是,与自然语言不同的是API调用序列往往存在一些隐性的调用规则,如必须要先调用打开文件的API才可以调用关闭文件的API,机器翻译模型往往难以保证生成满足这种调用规则的合法API调用序列。

目前,尚未检索到有文献构建包含API调用规则相关知识的API知识图谱,也未检索到有文献使用强化学习在API知识图谱上实现API序列的搜索。

发明内容

为了保证API序列的合法性,本发明提供了一种在API知识图谱上基于Q学习的API序列搜索方法。该方法通过构建API知识图谱来整合API及其调用规则的相关知识,并通过强化学习技术实现在API知识图谱上的API序列搜索。

本发明的目的是通过以下技术方案实现的:

一种在API知识图谱上基于Q学习的API序列搜索方法,包括如下步骤:

步骤1:API知识图谱的构建

设计API本体模型,并在API本体模型的指导下分别从API文档和开源软件项目等数据源中抽取API知识,用于构建API知识图谱;

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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