Toward Deep Learning Software Repositories
By Martin White, Christopher Vendome, Mario Linares Vásquez, Denys Poshyvanyk. 2015
323 citations recorded by the source corpus.
Subfields: Artificial Intelligence, Information Systems, Natural Language Processing
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Artificial Intelligence
- Charles Sutton
- Miltiadis Allamanis
- Premkumar T. Devanbu
- Rafael-Michael Karampatsis
- Rishabh Singh
- Vincent J. Hellendoorn
- Romain Robbes
- Earl T. Barr
In Information Systems
- Charles Sutton
- Miltiadis Allamanis
- Premkumar T. Devanbu
- Michael Pradel
- Vincent J. Hellendoorn
- Rafael-Michael Karampatsis
- Rishabh Singh
- Earl T. Barr
In Natural Language Processing
- Charles Sutton
- Premkumar T. Devanbu
- Miltiadis Allamanis
- Vincent J. Hellendoorn
- Earl T. Barr
- Rafael-Michael Karampatsis
- Rishabh Singh
- Michael Pradel
Citations in the corpus
- A Survey of Machine Learning for Big Code and Naturalness (2017, background): “adrepresentingthecontextusingadistributedvectorrepresentation (Section 4.2). Following this trend, Karpathy et al. [103] and Cummins et al. [48] use characterlevel LSTMs [91]. Similarly, White et al. [188] and Dam et al. [49] use token-level RNNs. Recently, Bhoopchand et al. [26] used a token sparse”
- An Empirical Study on Learning Bug-Fixing Patches in the Wild via Neural Machine Translation (2018, background): “such as deep learning, to learn from relatively large software engineering datasets. Some examples of recent models that can be used in a number of software engineering tasks include: code completion [68, 92], defect prediction [85], bug localization [40], clone detection [81, 91], code search [24],”
- Big Code != Big Vocabulary: Open-Vocabulary Models for Source Code (2020, methodology): “Other models of source code include probabilistic higher order grammars (PHOG) [14], which use ASTs, and several types of RNNs, including LSTMs [26, 41, 88].”
- When Code Completion Fails: A Case Study on Real-World Completions (2019, methodology): “Other models have been proposed, both using natural language models (e.g., [4], [22], [23]) and traditional feature selection (e.g., [5]–[7]); we leave the analysis of such models to future work and provide our dataset to support such efforts.”
- Easy over hard: a case study on deep learning (2017, methodology): “• Report deep learning’s benets, but not its CPU/GPU cost [15, 52, 71, 77]; • Or simply show the cost, without further analysis [24, 39, 68, 70, 74].”
- Neural Networks for Modeling Source Code Edits (2018, unknown): “…code models based on n-grams (Hindle et al., 2012; Allamanis & Sutton, 2013), grammars (Allamanis & Sutton, 2014), neural networks (Raychev et al., 2014; White et al., 2015; Ling et al., 2016; Bhoopchand et al., 2016), and combinations of the two (Maddison & Tarlow, 2014; Yin & Neubig, 2017).”
- Code Completion with Neural Attention and Pointer Networks (2017, background): “Torender effective code completion for dynamically-typed languages, recently, researchers turn to learning-based language models (Hindle et al. 2012; White et al. 2015; Bielik, Raychev, and Vechev 2016).”
- Global Relational Models of Source Code (2020, background): “Many approaches use neural language models to embed programs as sequences of tokens (Bhoopchand et al., 2016; White et al., 2015).”
- CURE: Code-Aware Neural Machine Translation for Automatic Program Repair (2021, background): “Language Model in Software Engineering: Different programming language models have been developed [75]–[87].”
- Learning API Usages from Bytecode: A Statistical Approach (2015, background): “[42] proposed deep learning approach modeling source code.”
- CoCoNuT: combining context-aware neural translation models using ensemble for program repair (2020, methodology): “tasks such as defects prediction [40, 79, 81], source code representation [6, 7, 66, 80], source code summarization [4, 22] source code modeling [5, 11, 26, 83], code clone detection [41, 84], and pro-”
- RepoBench: Benchmarking Repository-Level Code Auto-Completion Systems (2023, background): “The inception of Language Models (LMs) in code completion can be traced back to the usage of n-gram based LMs [37, 20], RNN models [41], and probabilistic grammar-models [7, 32, 19], which laid the foundation for the subsequent introduction of more advanced LMs in this field.”
- A deep language model for software code (2016, methodology): “Our evaluation aims to compare the performance of our LSTM language model against the traditional RNNs model as used in previous work [12].”
- On Learning Meaningful Code Changes Via Neural Machine Translation (2019, background): “They show that DL models make code suggestions based upon contextual features learned by the model rather than the predictive power of the past n tokens [65].”
- Deep API learning (2016, methodology): “Deep Learning has also been applied to code completion [37, 48].”
- Neural Code Completion (2017, background): “Raychev et al. (2014) and White et al. (2015) explore how to use recurrent neural networks (RNNs) to facilitate the code completion task.”