Show HN: Autocomplete Python with Deep Learning
github.com
github.com
It's quite simple to synthetically inject lots of noise into code, simply use the wrong variables, operators, numbers, structures, reverse statement ordering, transforming code at the AST level.
Then you can learn mappings of bad code => good code!
The same idea has worked for natural languages as well, correcting typos.
This one should be the closest to the Microsoft model: https://miltos.allamanis.com/publicationfiles/allamanis2018l...
Btw, simple neural networks are far from doing the best for code. The kind of accuracy LSTM gives is already achieved with good n-gram models. E.g. see this one on a Linux code prediction: https://arxiv.org/pdf/1506.02078.pdf Also, there are other techniques that improve on top of the n-gram models: https://files.sri.inf.ethz.ch/website/papers/charmodel-iclr2...
"We found that scaling up the model almost entirely eliminates errors in the n-gram category."