Affiliation:
1. ETH Zurich, Switzerland
Abstract
In this paper we introduce a new approach for learning precise and general probabilistic models of code based on decision tree learning. Our approach directly benefits an emerging class of statistical programming tools which leverage probabilistic models of code learned over large codebases (e.g., GitHub) to make predictions about new programs (e.g., code completion, repair, etc).
The key idea is to phrase the problem of learning a probabilistic model of code as learning a decision tree in a domain specific language over abstract syntax trees (called TGen). This allows us to condition the prediction of a program element on a dynamically computed context. Further, our problem formulation enables us to easily instantiate known decision tree learning algorithms such as ID3, but also to obtain new variants we refer to as ID3+ and E13, not previously explored and ones that outperform ID3 in prediction accuracy.
Our approach is general and can be used to learn a probabilistic model of any programming language. We implemented our approach in a system called Deep3 and evaluated it for the challenging task of learning probabilistic models of JavaScript and Python. Our experimental results indicate that Deep3 predicts elements of JavaScript and Python code with precision above 82% and 69%, respectively. Further, Deep3 often significantly outperforms state-of-the-art approaches in overall prediction accuracy.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Reference36 articles.
1. Mining idioms from source code
2. Suggesting accurate method and class names
3. M.
Allamanis D.
Tarlow A. D.
Gordon and
Y.
Wei
.
Bimodal modelling of source code and natural language. In F. R. Bach and D. M. Blei editors ICML volume
37
of
JMLR Proceedings pages 2123–
2132
. JMLR.org 2015. M. Allamanis D. Tarlow A. D. Gordon and Y. Wei. Bimodal modelling of source code and natural language. In F. R. Bach and D. M. Blei editors ICML volume 37 of JMLR Proceedings pages 2123–2132. JMLR.org 2015.
Cited by
99 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献