基于层次上下文的API推荐技术研究

来源 :东南大学 | 被引量 : 0次 | 上传用户:Tiki0127
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
应用程序编程接口(API)技术为程序开发提供了便利,为针对复杂问题的成熟解决方案拓展了复用,被认为是解决软件危机,提高软件开发质量和效率的现实有效途径。在应用API进行开发时,梳理可用API的成本较为高昂,通常需要API推荐技术来辅助。而基于上下文的API推荐技术是其中最广泛使用的方法之一,使用历史项目代码和代码上下文匹配来推荐目标API方法,以提高推荐精确性和成功率,以及软件开发的效率和质量。传统的基于上下文API推荐技术忽略了项目自有API的使用。这种限制项目自有方法使用的方式会导致上下文信息的缺失,影响了API推荐结果的有效性。为了充分利用项目自有方法隐含的上下文信息,本文提出了一种基于层次上下文的API推荐技术:(1)提出了基于调用图的代码上下文模型,即层次上下文,它可以通过分析项目中方法的调用图来获取代码上下文中多层次结构信息。(2)通过层次上下文模型对API方法、尤其是项目自有方法进行表示和建模,挖掘了API之间的层次结构关系,增强了上下文的表达能力。(3)基于层次上下文模型,提出了层次推断模型,该模型以历史项目的层次上下文作为训练集,充分考虑上下文中不同类型API的特点,区分不同API类型对目标对象候选API方法的贡献程度。基于层次上下文的API推荐技术能够准确分析项目自有方法,更高效利用上下文中API间的隐含关联关系,提高API推荐的准确率。同时,本文实现了基于层次上下文的API推荐工具Hi Rec,通过运用层次上下文技术,该工具可在不同编程场景下同时支持推荐第三方API和自有方法。本文选取了108个开源项目构建评估实验,使用多类Top-N指标对推荐精度进行对比论证,并分析推荐时间,与现有方法的推荐效率进行比较。结果表明,基于层次上下文的API推荐技术可以在Top-5和Top-10准确率上得到比同类技术更准确的推荐结果。而且在Top-1准确率方面与同类技术表现非常接近;在实验环境下,推荐运行的平均时间少于1秒,满足IDE对于推荐工具交互的效率要求。此外,与同类技术相比,本技术的推荐效果不会受推荐位置的影响。并且推荐结果精度随着训练数据集和层次上下文长度的增加而提升。
其他文献
中国人口老龄化等问题的加剧,给监护和安防等领域带来了巨大挑战。由于视频监控的逐渐普及化、低廉化以及视频的可视化、易存储等优点,它迅速成为替代人工管理的重要手段。如何高效地处理得到的视频数据,使其在满足特定场合的人体行为检测的精度要求的同时,又能兼顾效率,尽量满足实时性需求,一直是算法研究人员不断追求的目标。目前大多数的视频处理任务都基于特定场合,行为检测和识别的种类相对固定且较为单一。当传统方法利
在软件工程领域,软件开发的质量、效率和成本是软件开发过程中关注的三个核心问题。进入二十一世纪以来,随着互联网的普及,信息技术呈现爆炸性地增长,软件系统的规模和复杂性也在不断增加,软件开发的效率问题也越来越受到关注。为了提高开发的效率,许多软件开发的技术被陆续提出,开发者们希望通过代码搜索等技术手段实现高效的代码重用。因此代码搜索技术的研究有着重要的意义。然而,现有的代码搜索技术在表示代码时并不全面
随着开发语言和各种软件社区的发展,API的数量急剧上升。为了降低API的使用难度,提高API使用效率,研究人员提出了很多种API推荐方法,这些推荐方法可以帮助编程人员更加高效地使用API。随着推荐技术的不断增加,选择合适的推荐方法对编程人员来说尤为重要。API推荐结果的评估可以为编程人员选择推荐技术提供依据,目前已有的评估方法研究较少,且主要关注于推荐结果的正确性,缺乏对推荐结果质量的关注,难以完
数据世系用于描述数据产生、演化流程和数据源信息,在数据质量评估、数据溯源、信息安全领域发挥着日益重要的作用。世系工作流是数据世系的主要描述结构,随着人们对数据质量、溯源要求的日益提高,对世系工作流进行共享的需求愈加迫切,世系工作流中包含数据产生关键操作、流程等敏感信息,对其进行共享发布不可避免地带来隐私泄露问题。本文针对已有世系工作流结构隐私保护方法存在的不足,研究能够有效维持工作流时序约束和拓扑
视频拼接作为实现全景视频的重要手段,在移动设备拍摄能力越来越强的时代里,能够将移动设备拍摄的视频轻松拼接成稳定的具有大视野的全景视频可以很大程度上增强人们的影音使用体验。但是由于移动设备不是固定的,拍摄出的视频天然的会带有剧烈的抖动以及较大的视差,这些因素都会影响最后拼接的效果。本文提出了一个适合手持设备拍摄的带有抖动的视频拼接的联合视频防抖和视频拼接的拼接算法,该算法可以有效的去除抖动、处理重影
近年来,作为一种新型的软件开发方式,群智化软件开发已经受到了学术界和工业界的广泛关注。相比于传统的软件开发,群智化软件开发可以最大限度地利用世界各地的开发人员资源来完成复杂的开发任务,能够有效降低开发成本,提高开发效率。但是,由于群智化平台中任务众多且复杂,不准确的任务匹配会影响任务完成的进度和质量,因此,研究开发者和任务的匹配问题对于群智化软件开发模式来说非常重要。推荐技术作为传统领域解决信息过
文本生成图像(Text-to-image Generation)旨在基于自然语言描述的文本生成相关图像,实现从文本模态到图像模态的转化,并保持语义。文本生成图像对于新闻自动配图,用户需求画像等图像生成应用具有重要意义。文本生成图像研究,作为一个交叉问题,涉及到自然语言理解和图像生成两个热门研究领域。该问题的研究也为文本嵌入和生成模型技术提供支撑。当前的文本描述通常是一个描述物体属性的说明性语句,比
随着互联网的迅速普及和数字信息的爆炸式增长,各种海量化、碎片化的内容不断涌现,如何从这些异构驳杂的数据中检索有效信息对于搜索引擎挑战巨大。以网页链接为中心的传统搜索引擎通过关键字匹配的方式从互联网中检索信息,然后返回给用户相关链接。这种方式不能准确理解用户搜索意图,且返回的结果过于单一,包含的语义信息不够丰富,需要用户做多次检索。为了改善这种搜索模式的弊端,基于知识的搜索引擎已引起了业界的广泛关注
临床路径(Clinical Pathway)是针对某种特定疾病建立的标准化诊疗模式,旨在规范临床诊疗流程。头痛是一种较为常见的神经内科临床症状,然而我国目前面临着头痛相关医学人才匮乏以及头痛临床诊断路径不够完善等问题。现阶段,国内头痛相关临床路径主要参考国际头痛疾患分类(ICHD)。然而由于其涵盖头痛种类多,部分诊断标准差异小,更新换代等因素,增加了医生在临床中完整正确运用ICHD的难度。基于IC
近年来,随着移动互联网的快速发展以及“互联网+”国家战略的深入实施,电子商务迎来了高速发展的黄金时代,针对电商平台用户评论文本的情感信息抽取技术逐渐成为自然语言处理领域中的研究热点。已有的研究主要针对非交互式的传统用户评论文本开展评价属性(简称“属性”)抽取研究。与以往研究不同,本文针对一种新颖的问答式评论文本开展属性抽取方法研究。该新型问答式评论文本中,答案通常是由随机邀请有过购买行为的用户提供