COSET: A Benchmark for Evaluating Neural Program Embeddings

By Ke Wang, Mihai Christodorescu. 2019

41 citations recorded by the source corpus.

Neural program embedding can be helpful in analyzing large software, a task that is challenging for traditional logic-based program analyses due to their limited scalability. A key focus of recent machine-learning advances in this area is on modeling program semantics instead of just syntax. Unfortunately evaluating such advances is not obvious, as program semantics does not lend itself to straightforward metrics. In this paper, we introduce a benchmarking framework called COSET for standardizing the evaluation of neural program embeddings. COSET consists of a diverse dataset of programs in source-code format, labeled by human experts according to a number of program properties of interest. A point of novelty is a suite of program transformations included in COSET. These transformations when applied to the base dataset can simulate natural changes to program code due to optimization and refactoring and can serve as a "debugging" tool for classification mistakes. We conducted a pilot study on four prominent models: TreeLSTM, gated graph neural network (GGNN), AST-Path neural network (APNN), and DYPRO. We found that COSET is useful in identifying the strengths and limitations of each model and in pinpointing specific syntactic and semantic characteristics of programs that pose challenges.

Subfields: Artificial Intelligence, Information Systems, Software, Evaluation & Benchmarks, Code Generation & Program Synthesis

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. Sergey Levine
  2. Mohit Bansal
  3. Jianfeng Gao
  4. Yoshua Bengio
  5. Kyunghyun Cho
  6. Quoc V. Le
  7. Pieter Abbeel
  8. Percy Liang

In Information Systems

  1. Joseph E. Gonzalez
  2. Raymond Li
  3. Goutham Ramakrishnan
  4. Harm de Vries
  5. Ajay Jain
  6. Pieter Abbeel
  7. Aws Albarghouthi
  8. Tianjun Zhang

In Software

  1. Goutham Ramakrishnan
  2. Ajay Jain
  3. Pieter Abbeel
  4. Aws Albarghouthi
  5. Tianjun Zhang
  6. Paras Jain
  7. Ion Stoica
  8. Joseph E. Gonzalez

In Evaluation & Benchmarks

  1. Harm de Vries
  2. Ajay Jain
  3. Pieter Abbeel
  4. Tianjun Zhang
  5. Paras Jain
  6. Yacine Jernite
  7. Ion Stoica
  8. Dzmitry Bahdanau

In Code Generation & Program Synthesis

  1. Raymond Li
  2. Goutham Ramakrishnan
  3. Aws Albarghouthi
  4. Dzmitry Bahdanau
  5. Joseph E. Gonzalez

Citations in the corpus