应用程序接口(Application Programming Interfaces,API)在现代软件开发中起着重要的作用,开发人员经常需要为他们的编程任务搜索合适的API。但是随着信息产业的发展,API参考文档变得越发庞大,传统的搜索方式会因为互联网上的冗余和错...应用程序接口(Application Programming Interfaces,API)在现代软件开发中起着重要的作用,开发人员经常需要为他们的编程任务搜索合适的API。但是随着信息产业的发展,API参考文档变得越发庞大,传统的搜索方式会因为互联网上的冗余和错误信息给工程师的查询带来不便。与此同时,由于编程任务的自然语言描述与API文档中的描述之间存在词汇和知识上的差距,很难找到合适的API。基于这些问题,提出一种融合领域知识的API推荐算法ARDSQ(Recommendation base on Documentation and Solved Question)。ARDSQ能够根据工程师对某个功能的自然语言描述去知识库里检索到最为贴近的API。实验表明,与两种先进的API推荐算法(BIKER,DeepAPILearning)比较,ARDSQ在推荐系统关键评价指数(Hit-n,MRR,MAP)上都有较大的优势。展开更多
文摘应用程序接口(Application Programming Interfaces,API)在现代软件开发中起着重要的作用,开发人员经常需要为他们的编程任务搜索合适的API。但是随着信息产业的发展,API参考文档变得越发庞大,传统的搜索方式会因为互联网上的冗余和错误信息给工程师的查询带来不便。与此同时,由于编程任务的自然语言描述与API文档中的描述之间存在词汇和知识上的差距,很难找到合适的API。基于这些问题,提出一种融合领域知识的API推荐算法ARDSQ(Recommendation base on Documentation and Solved Question)。ARDSQ能够根据工程师对某个功能的自然语言描述去知识库里检索到最为贴近的API。实验表明,与两种先进的API推荐算法(BIKER,DeepAPILearning)比较,ARDSQ在推荐系统关键评价指数(Hit-n,MRR,MAP)上都有较大的优势。