Improved Code Summarization via a Graph Neural Network

By Alexander LeClair, Sakib Haque, Lingfei Wu, Collin McMillan. IEEE International Conference on Program Comprehension, 2020

335 citations recorded by the source corpus.

Automatic source code summarization is the task of generating natural language descriptions for source code. Automatic code summarization is a rapidly expanding research area, especially as the community has taken greater advantage of advances in neural network and AI technologies. In general, source code summarization techniques use the source code as input and outputs a natural language description. Yet a strong consensus is developing that using structural information as input leads to improved performance. The first approaches to use structural information flattened the AST into a sequence. Recently, more complex approaches based on random AST paths or graph neural networks have improved on the models using flattened ASTs. However, the literature still does not describe the using a graph neural network together with source code sequence as separate inputs to a model. Therefore, in this paper, we present an approach that uses a graph-based neural architecture that better matches the default structure of the AST to generate these summaries. We evaluate our technique using a data set of 2.1 million Java method-comment pairs and show improvement over four baseline techniques, two from the software engineering literature, and two from machine learning literature.

Subfields: Artificial Intelligence, Information Systems

View Paper: https://www.semanticscholar.org/paper/c345b74be9f98cca9592cc376465118df5c9f2da

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

  1. Prem Devanbu
  2. Yoshua Bengio
  3. Toufique Ahmed
  4. Baishakhi Ray
  5. Saikat Chakraborty
  6. Daniel Tarlow
  7. Wasi Uddin Ahmad
  8. Kai-Wei Chang

In Information Systems

  1. Prem Devanbu
  2. Baishakhi Ray
  3. Vincent J. Hellendoorn
  4. Saikat Chakraborty
  5. Daniel Tarlow
  6. Toufique Ahmed
  7. Pierre-Antoine Manzagol
  8. Petros Maniatis

Citations in the corpus