2017 · 297 citations · 37 references
ComputingComputer ScienceComputational LinguisticsMachine LearningNatural Language ProcessingDeep LearningLanguage ModelingLanguage ModelsWord EmbeddingsN-gram RepresentationNested ScopesNeural Language ModelsRecurrent Neural Language ModelsRecurrent Neural Network Language Models
Current statistical language modeling techniques, including deep-learning based models, have proven to be quite effective for source code. We argue here that the special properties of source code can be exploited for further improvements. In this work, we enhance established language modeling approaches to handle the special challenges of modeling source code, such as: frequent changes, larger, changing vocabularies, deeply nested scopes, etc. We present a fast, nested language modeling toolkit specifically designed for software, with the ability to add & remove text, and mix & swap out many models. Specifically, we improve upon prior cache-modeling work and present a model with a much more expansive, multi-level notion of locality that we show to be well-suited for modeling software. We present results on varying corpora in comparison with traditional N-gram, as well as RNN, and LSTM deep-learning language models, and release all our source code for public use. Our evaluations suggest that carefully adapting N-gram models for source code can yield performance that surpasses even RNN and LSTM based deep-learning models.
37
Sepp Hochreiter, Jürgen Schmidhuber · Neural Computation · 1997 · 98.1K citations
Recurrent neural network based language model
Tomáš Mikolov, Martin Karafiát, Lukáš Burget et al. · 2010 · 5.4K citations
Character-Aware Neural Language Models
Yoon Kim, Yacine Jernite, David Sontag et al. · arXiv (Cornell University) · 2015 · 1K citations · Full text
Computing, Computer Science, French +17
Exploring the Limits of Language Modeling
Rafał Józefowicz, Oriol Vinyals, Mike Schuster et al. · arXiv (Cornell University) · 2016 · 919 citations · Full text