[发明专利]面向自然语言形式基于讲义和网站的API信息检索方法有效
申请号: | 201910228664.6 | 申请日: | 2019-03-25 |
公开(公告)号: | CN109933660B | 公开(公告)日: | 2019-11-12 |
发明(设计)人: | 荆晓远;吴迪;黄鹤;谢宇;姚永芳;訾璐;李云鹤 | 申请(专利权)人: | 广东石油化工学院 |
主分类号: | G06F16/332 | 分类号: | G06F16/332;G06F16/33;G06N3/08 |
代理公司: | 北京金智普华知识产权代理有限公司 11401 | 代理人: | 杨采良 |
地址: | 525*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 讲义 自然语言形式 检索 信息检索领域 鉴别模型 降序排列 排序策略 构建 整合 排序 匹配 鉴别 返回 提问 分析 开发 | ||
本发明属于信息检索领域,公开了一种面向自然语言形式的基于讲义和Stack Overflow的API信息检索方法,构建API与知识项的API‑KI库;API‑KI库包含API与讲义段的API‑段对、API与问答帖的API‑Q&A对,并进行提取;对自然语言形式的提问进行分析,获取与问题对应的潜在API;使用相关性鉴别模型TDML对相关的API‑KI对进行鉴别;将潜在API与相关的API‑KI对匹配生成候选列表,并根据排序策略对候选列表进行降序排列,最后返回排序后的API‑KI列表作为问题的解答。本发明提出的检索方法整合了API讲义和SO的信息,有效提高了检索精度,并能为开发者提供更多更有用的API相关知识。
技术领域
本发明属于信息检索领域,尤其涉及一种面向自然语言形式的基于讲义和StackOverflow的API信息检索方法。
背景技术
目前,业内常用的现有技术是这样的:
现有的方法大多基于全文检索,比如利用基于VSM的Lucene全文检索引擎包,直接根据自然语言问题在文档库中进行关键词的检索和匹配,以及使用基于神经网络的Word2Vec词向量模型可以很好的挖掘词之间的上下文关系,因此可以先将问题和文档分别进行词向量表示,再根据两者之间的相似性返回结果。除此之外,CK方法则利用了源码中软件领域的概念知识,通过提取API图谱进行API相关文档推荐。
开发者们通常使用API来加速软件开发进程或提高软件质量。但随着API库规模的扩大和API数目的增加,开发者们往往会遇到不熟悉的API或是新的API库。此时,他们需要知道用什么API和怎样使用它们,而现实中一些学习资料和论坛比如API讲义和StackOverflow(SO)能够帮助查找和使用API。前者整合了用于解释API的文字描述和代码实例,并按编程任务进行分组。后者是一个供开发者们学习和分享编程知识的问答(Q&A)网站,汇集的大量问答帖可以被认为是群智的一种,作为官方文档(比如API讲义)的补充。有研究表明,API讲义能够帮助开发者们理解泛型编程环境中API的某些行为,而SO中的问答帖则倾向于对特定编程环境中的API用法进行解释,将两者结合能够提供更多类型的API相关信息。
现有的方法不能为开发者们同时提供两种资料上的API相关信息检索。为了尽快的使用多种资料对API进行熟悉,开发者们不得不使用SO自带的搜索引擎检索所需的API或浏览相关的问答帖人工对有用的API进行识别,或是使用先进的API讲义推荐工具(例如FRAPT)查找API相关的讲义片段,两个过程往往不能同步进行。这样的检索方法不仅效率不高,而且将两种资料分开处理可能导致返回的结果不相关。
另一个影响检索精度的因素是问题的质量。例如,SO的搜索引擎关于某个问题会返回大量问答帖,问题中包含的API名称和关键词有助于提升问答帖的相关度。但实际应用中,开发者们有可能对能够使用什么API不了解,也不知道具体的API名称,这种情况下,他们会将与API相关的问题用自然语言描述,而SO返回的问答帖和API就需要人工进一步筛选。
综上所述,现有技术存在的问题是:
(1)现有的方法不能为开发者们同时提供两种资料上的API相关信息检索。比如FRAPT方法只提供API讲义的推荐,或是根据Stack Overflow的搜索引擎进行检索。检索方法不仅效率不高,而且将两种资料分开处理可能导致返回的结果不相关。
(2)现有的方法没有深入挖掘提问语义层的信息,基于关键字匹配的方法容易造成大量有用信息的丢失,最终导致检索精度的损失。特别是在自然语言形式下,提问可能并不直接包含API名称,直接计算问题和文档之间关键词相关度的方法如VSM只能利用了极少的文字信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东石油化工学院,未经广东石油化工学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910228664.6/2.html,转载请声明来源钻瓜专利网。