SENov 9, 2020

Learning Autocompletion from Real-World Datasets

arXiv:2011.04542v137 citations
AI Analysis

This work addresses the gap between synthetic benchmarks and real-world performance in code completion tools for software developers, showing incremental improvements by using real-world training data.

The paper tackled the problem of neural code completion models performing poorly on real-world data by training models on real-world code completion examples, resulting in accuracy improvements of 12.8% and 13.8% over models trained on committed source code and working version snapshots, respectively, and a 6.2% increase in actual autocompletion usage by programmers.

Code completion is a popular software development tool integrated into all major IDEs. Many neural language models have achieved promising results in completion suggestion prediction on synthetic benchmarks. However, a recent study When Code Completion Fails: a Case Study on Real-World Completions demonstrates that these results may not translate to improvements in real-world performance. To combat this effect, we train models on real-world code completion examples and find that these models outperform models trained on committed source code and working version snapshots by 12.8% and 13.8% accuracy respectively. We observe this improvement across modeling technologies and show through A/B testing that it corresponds to a 6.2% increase in programmers' actual autocompletion usage. Furthermore, our study characterizes a large corpus of logged autocompletion usages to investigate why training on real-world examples leads to stronger models.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes