Unsupervised software repositories mining and its application to code search

SOFTWARE-PRACTICE & EXPERIENCE(2020)

引用 13|浏览876
暂无评分
摘要
Software repositories are crucial resources for many software tasks, including code retrieval and annotation. Programming forums provide questions and answers (Q&A) from software developers, containing abundant code-description posts for exchanging knowledge about programming issues. However, most posts provide personal opinions of users that are often not adequately confirmed or outdated. Mining software repositories in such open and unrestricted forums is challenging. Since the posts can be arbitrary and noisy, it is difficult to get unified labels for supervised noise elimination. Different from existing mining approaches, this paper proposes Code-Description Mining Framework (CodeMF), an unsupervised framework to eliminate noisy posts and extract high quality software repositories from programming forums. CodeMF treats all social features of the posts as discrete-time signals for kernel principal component analysis and further performs wavelet transform feature fusion to find the delicate changes (noises in temporal signals). We conduct comprehensive experiments on StackOverflow. Experimental results demonstrate that CodeMF can effectively reduce running time and improve precision via mining high-quality software repositories for various programming languages, especially for the large-scale codebases. To further illustrate the effect of CodeMF applied in software tasks, we introduce it to improve the performance of query-expansion code search. Meanwhile, for SQL and C# programs, compared to the state-of-the-art query-expansion method QECK, the improvement of QECK(CodeMF) is 2% and 6% on Recall@10, and 4% and 14% on mean reciprocal rank, respectively.
更多
查看译文
关键词
code search,feature fusion,software repositories,wavelet transformation
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要