location: Current position: jianghe >> Scientific Research >> Paper Publications

Bridging Semantic Gaps between Natural Languages and APIs with Word Embedding

Hits:

Indexed by:期刊论文

First Author:Li, Xiaochen

Correspondence Author:jianghe,Kamei, Yasutaka,Chen, Xin

Date of Publication:2020-10-01

Journal:IEEE TRANSACTIONS ON SOFTWARE ENGINEERING

Volume:46

Issue:10

Page Number:1081-1097

ISSN No.:0098-5589

Key Words:Tools; Natural languages; Training; Software; Task analysis; Semantics; Estimation; Relatedness estimation; word embedding; word2Vec; query expansion; API documents linking

Abstract:Developers increasingly rely on text matching tools to analyze the relation between natural language words and APIs. However, semantic gaps, namely textual mismatches between words and APIs, negatively affect these tools. Previous studies have transformed words or APIs into low-dimensional vectors for matching; however, inaccurate results were obtained due to the failure of modeling words and APIs simultaneously. To resolve this problem, two main challenges are to be addressed: the acquisition of massive words and APIs for mining and the alignment of words and APIs for modeling. Therefore, this study proposes Word2API to effectively estimate relatedness of words and APIs. Word2API collects millions of commonly used words and APIs from code repositories to address the acquisition challenge. Then, a shuffling strategy is used to transform related words and APIs into tuples to address the alignment challenge. Using these tuples, Word2API models words and APIs simultaneously. Word2API outperforms baselines by 10-49.6 percent of relatedness estimation in terms of precision and NDCG. Word2API is also effective on solving typical software tasks, e.g., query expansion and API documents linking. A simple system with Word2API-expanded queries recommends up to 21.4 percent more related APIs for developers. Meanwhile, Word2API improves comparison algorithms by 7.9-17.4 percent in linking questions in Question&Answer communities to API documents.

Pre One:Mining Design Pattern Use Scenarios and Related Design Pattern Pairs: A Case Study on Online Posts

Next One:Unsupervised Deep Bug Report Summarization