LGPLSEMLApr 26, 2019

Learning Semantic Vector Representations of Source Code via a Siamese Neural Network

arXiv:1904.11968v13 citationsHas Code
Originality Incremental advance
AI Analysis

This work addresses the challenge of improving code embeddings for software engineering tasks, but it is incremental as it builds on existing deep learning methods applied to source code.

The authors tackled the problem of learning semantic vector representations of Python source code using a Siamese recurrent neural network, resulting in a model that significantly outperformed a bag-of-tokens embedding in identifying which programming competition problem the code solves.

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.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes