RACK:基于众包知识的自动API推荐
软件工程
2018-07-10 v1
摘要
传统的代码搜索引擎通常对自然语言查询表现不佳,因为它们大多应用关键词匹配。因此这些引擎需要包含编程API信息的精心设计的查询来进行代码搜索。遗憾的是,现有研究表明,对开发者而言,准备一个有效的代码搜索查询既具挑战又耗时。在本文中,我们提出了一种新颖的API推荐技术——RACK,它通过利用Stack Overflow众包知识中的关键词-API关联,为代码搜索的自然语言查询推荐一系列相关API。我们首先使用11个核心Java包和来自Stack Overflow的344K个Java帖子通过一项探索性研究来启发我们的技术。使用从三个Java教程站点随机选择的150个代码搜索查询进行的实验表明,我们的技术在约79%的查询的前10个结果中推荐了正确的API类,这极具前景。与最先进技术两个变体的比较也表明,RACK不仅在Top-K准确率上,而且在平均精度均值和平均召回率上都大幅优于它们。
引用
@article{arxiv.1807.02953,
title = {RACK: Automatic API Recommendation using Crowdsourced Knowledge},
author = {Mohammad Masudur Rahman and Chanchal K. Roy and David Lo},
journal= {arXiv preprint arXiv:1807.02953},
year = {2018}
}
备注
The 23rd IEEE International Conference on Software Analysis, Evolution, and Reengineering (SANER 2016), pp. 349--359, Osaka, Japan, March 2016