mlsanityData to 7 Oct 2026

A Library for Representing Python Programs as Graphs for Machine Learning

arXiv 2208.07461 ↗First posted 15 Aug 2022cs.LG cs.PL cs.SEcited by 4

Not on the map. Why?

Abstract (arXiv)

Graph representations of programs are commonly a central element of machine learning for code research. We introduce an open source Python library python_graphs that applies static analysis to construct graph representations of Python programs suitable for training machine learning models. Our library admits the construction of control-flow graphs, data-flow graphs, and composite ``program graphs'' that combine control-flow, data-flow, syntactic, and lexical information about a program. We present the capabilities and limitations of the library, perform a case study applying the library to millions of competitive programming submissions, and showcase the library's utility for machine learning research.

Key facts. Cited by 4 papers in the map (data through 7 Oct 2026). Builds on 30 of its 44 references that are in the map. First posted on arXiv 15 Aug 2022.

Builds on

30 of 44 references.

References · 30

  1. 2015Gated Graph Sequence Neural Networkscited by 792
  2. 2020GraphCodeBERT: Pre-training Code Representations with Data Flowcited by 600
  3. 2019Devign: Effective Vulnerability Identification by Learning Comprehensive Program Semantics via Graph Neural Networkscited by 266
  4. 2018code2vec: Learning Distributed Representations of Codecited by 249
  5. 2017Learning to Represent Programs with Graphscited by 219
  6. 2021CodeNet: A Large-Scale AI for Code Dataset for Learning a Diversity of Coding Taskscited by 199
  7. 2018code2seq: Generating Sequences from Structured Representations of Codecited by 177
  8. 2017Abstract Syntax Networks for Code Generation and Semantic Parsingcited by 92
  9. 2018TRANX: A Transition-based Neural Abstract Syntax Parser for Semantic Parsing and Code Generationcited by 88
  10. 2020Code Prediction by Feeding Trees to Transformerscited by 70
  11. 2021Language-Agnostic Representation Learning of Source Code from Structure and Contextcited by 63
  12. 2021Self-Supervised Bug Detection and Repaircited by 59
18 more
  1. 2020Learning to Execute Programs with Instruction Pointer Attention Graph Neural Networkscited by 35
  2. 2021Code Completion by Modeling Flattened Abstract Syntax Trees as Graphscited by 30
  3. 2019Learning to Fix Build Errors with Graph2Diff Neural Networkscited by 26
  4. 2019ATOM: Commit Message Generation Based on Abstract Syntax Tree and Hybrid Rankingcited by 25
  5. 2020InferCode: Self-Supervised Learning of Code Representations by Predicting Subtreescited by 23
  6. 2020Learning Semantic Program Embeddings with Graph Interval Neural Networkcited by 20
  7. 2021Fault Localization with Code Coverage Representation Learningcited by 16
  8. 2020Learning to Represent Programs with Heterogeneous Graphscited by 13
  9. 2022HEAT: Hyperedge Attention Networkscited by 13
  10. 2022Static Prediction of Runtime Errors by Learning to Execute Programs with External Resource Descriptionscited by 11
  11. 2020Learning Graph Structure With A Finite-State Automaton Layercited by 10
  12. 2022Scalpel: The Python Static Analysis Frameworkcited by 9
  13. 2018Convolutional Neural Networks over Control Flow Graphs for Software Defect Predictioncited by 8
  14. 2018Path-Based Function Embedding and its Application to Specification Miningcited by 8
  15. 2021Modular Tree Network for Source Code Representation Learningcited by 8
  16. 2021Learning to Extend Program Graphs to Work-in-Progress Codecited by 3
  17. 2014The Correlation among Software Complexity Metrics with Case Studycited by 2
  18. 2019Using GGNN to recommend log statement levelcited by 1

Built on by

Cited by year

Citing papers per year: 2023: 2; 2024: 2.

4 papers.