Learning Semantic Vector Representations of Source Code via a Siamese Neural Network
Machine Learning
2019-04-29 v1 Programming Languages
Software Engineering
Machine Learning
Abstract
The abundance of open-source code, coupled with the success of recent advances in deep learning for natural language processing, has given rise to a promising new application of machine learning to source code. In this work, we explore the use of a Siamese recurrent neural network model on Python source code to create vectors which capture the semantics of code. We evaluate the quality of embeddings by identifying which problem from a programming competition the code solves. Our model significantly outperforms a bag-of-tokens embedding, providing promising results for improving code embeddings that can be used in future software engineering tasks.
Keywords
Cite
@article{arxiv.1904.11968,
title = {Learning Semantic Vector Representations of Source Code via a Siamese Neural Network},
author = {David Wehr and Halley Fede and Eleanor Pence and Bo Zhang and Guilherme Ferreira and John Walczyk and Joseph Hughes},
journal= {arXiv preprint arXiv:1904.11968},
year = {2019}
}