Language-Agnostic Representation Learning of Source Code from Structure and Context
Not on the map. Why?
Abstract (arXiv)
Source code (Context) and its parsed abstract syntax tree (AST; Structure) are two complementary representations of the same computer program. Traditionally, designers of machine learning models have relied predominantly either on Structure or Context. We propose a new model, which jointly learns on Context and Structure of source code. In contrast to previous approaches, our model uses only language-agnostic features, i.e., source code and features that can be computed directly from the AST. Besides obtaining state-of-the-art on monolingual code summarization on all five programming languages considered in this work, we propose the first multilingual code summarization model. We show that jointly training on non-parallel data from multiple programming languages improves results on all individual languages, where the strongest gains are on low-resource languages. Remarkably, multilingual training only from Context does not lead to the same improvements, highlighting the benefits of combining Structure and Context for representation learning on code.
Key facts. Cited by 63 papers in the map (data through 7 Oct 2026). Builds on 38 of its 61 references that are in the map. First posted on arXiv 21 Mar 2021.
Builds on
38 of 61 references.
References · 38
- 2017Attention Is All You Needcited by 59,932
- 2016Semi-Supervised Classification with Graph Convolutional Networkscited by 11,282
- 2017Graph Attention Networkscited by 8,854
- 2017Inductive Representation Learning on Large Graphscited by 6,284
- 2018How Powerful are Graph Neural Networks?cited by 4,355
- 2019XLNet: Generalized Autoregressive Pretraining for Language Understandingcited by 2,801
- 2020Open Graph Benchmark: Datasets for Machine Learning on Graphscited by 2,148
- 2016Convolutional Neural Networks on Graphs with Fast Localized Spectral Filteringcited by 2,085
- 2019Transformer-XL: Attentive Language Models Beyond a Fixed-Length Contextcited by 1,830
- 2017Modeling Relational Data with Graph Convolutional Networkscited by 1,684
- 2018Relational inductive biases, deep learning, and graph networkscited by 1,341
- 2018Self-Attention with Relative Position Representationscited by 1,112
26 more
- 2019Cross-lingual Language Model Pretrainingcited by 1,088
- 2018Predict then Propagate: Graph Neural Networks meet Personalized PageRankcited by 987
- 2015Pointer Networkscited by 882
- 2018Link Prediction Based on Graph Neural Networkscited by 829
- 2015Gated Graph Sequence Neural Networkscited by 792
- 2018Hierarchical Graph Representation Learning with Differentiable Poolingcited by 786
- 2015Convolutional Networks on Graphs for Learning Molecular Fingerprintscited by 751
- 2019CodeSearchNet Challenge: Evaluating the State of Semantic Code Searchcited by 638
- 2020Directional Message Passing for Molecular Graphscited by 556
- 2019Diffusion Improves Graph Learningcited by 414
- 2015Improved Semantic Representations From Tree-Structured Long Short-Term Memory Networkscited by 305
- 2018code2vec: Learning Distributed Representations of Codecited by 249
- 2017Learning to Represent Programs with Graphscited by 219
- 2019Position-aware Graph Neural Networkscited by 203
- 2018code2seq: Generating Sequences from Structured Representations of Codecited by 177
- 2020Scaling Graph Neural Networks with Approximate PageRankcited by 174
- 2016Discriminative Embeddings of Latent Variable Models for Structured Datacited by 130
- 2018Ordered Neurons: Integrating Tree Structures into Recurrent Neural Networkscited by 101
- 2016A Convolutional Attention Network for Extreme Summarization of Source Codecited by 90
- 2018Structured Neural Summarizationcited by 53
- 2017Code Completion with Neural Attention and Pointer Networkscited by 49
- 2014Learning Natural Coding Conventionscited by 28
- 2018A General Path-Based Representation for Predicting Program Propertiescited by 28
- 2014Structured Generative Models of Natural Source Codecited by 19
- 2016A deep language model for software codecited by 14
- 2016Learning Python Code Suggestion with a Sparse Pointer Networkcited by 12
Built on by
Citing papers per year: 2021: 12; 2022: 24; 2023: 19; 2024: 3; 2025: 5.
63 papers.
Sort:
By area:
- 2021CodeT5: Identifier-aware Unified Pre-trained Encoder-Decoder Models for Code Understanding and Generationcited by 890
- 2022Multimodal Learning with Transformers: A Surveycited by 399
- 2022A Systematic Evaluation of Large Language Models of Codecited by 360
- 2021Do Transformers Really Perform Bad for Graph Representation?cited by 318
- 2021SynCoBERT: Syntax-Guided Multi-Modal Contrastive Pre-Training for Code Representationcited by 63
- 2022XLCoST: A Benchmark Dataset for Cross-lingual Code Intelligencecited by 54
- 2023Transformers Meet Directed Graphscited by 39
- 2022StructCoder: Structure-Aware Transformer for Code Generationcited by 33
- 2024AST-T5: Structure-Aware Pretraining for Code Generation and Understandingcited by 32
- 2021CodeQA: A Question Answering Dataset for Source Code Comprehensioncited by 30
- 2023Distilled GPT for Source Code Summarizationcited by 30
- 2021Code Structure Guided Transformer for Source Code Summarizationcited by 29
38 more
- 2021Project-Level Encoding for Neural Source Code Summarization of Subroutinescited by 24
- 2022DOM-LM: Learning Generalizable Representations for HTML Documentscited by 24
- 2022Transformers over Directed Acyclic Graphscited by 23
- 2023Deep Learning for Code Intelligence: Survey, Benchmark and Toolkitcited by 22
- 2022Deep Learning Meets Software Engineering: A Survey on Pre-Trained Models of Source Codecited by 20
- 2021Towards Learning (Dis)-Similarity of Source Code from Program Contrastscited by 17
- 2025cAST: Enhancing Code Retrieval-Augmented Generation with Structural Chunking via Abstract Syntax Treecited by 17
- 2022On Distribution Shift in Learning-based Bug Detectorscited by 15
- 2022M2TS: Multi-Scale Multi-Modal Approach Based on Transformer for Source Code Summarizationcited by 14
- 2023Learning to Parallelize with OpenMP by Augmented Heterogeneous AST Representationcited by 14
- 2023The potential of LLMs for coding with low-resource and domain-specific programming languagescited by 11
- 2025Towards an Understanding of Context Utilization in Code Intelligencecited by 10
- 2021Programming Knowledge Tracing: A Comprehensive Dataset and A New Modelcited by 9
- 2023Towards Modeling Human Attention from Eye Movements for Neural Source Code Summarizationcited by 8
- 2023Syntax and Domain Aware Model for Unsupervised Program Translationcited by 7
- 2022MetaTPTrans: A Meta Learning Approach for Multilingual Code Representation Learningcited by 6
- 2022Learning Program Representations with a Tree-Structured Transformercited by 6
- 2022CAT-probing: A Metric-based Approach to Interpret How Pre-trained Models for Programming Language Attend Code Structurecited by 6
- 2021On the ability of monolingual models to learn language-agnostic representationscited by 5
- 2022A Neural Network Architecture for Program Understanding Inspired by Human Behaviorscited by 5
- 2022Language Model Decoding as Likelihood-Utility Alignmentcited by 5
- 2023Semantic Similarity Loss for Neural Source Code Summarizationcited by 5
- 2022A Survey of Deep Learning Models for Structural Code Understandingcited by 4
- 2022InvAASTCluster: On Applying Invariant-Based Program Clustering to Introductory Programming Assignmentscited by 4
- 2022A Library for Representing Python Programs as Graphs for Machine Learningcited by 4
- 2021Learning to Extend Program Graphs to Work-in-Progress Codecited by 3
- 2021Senatus -- A Fast and Accurate Code-to-Code Recommendation Enginecited by 3
- 2022NS3: Neuro-Symbolic Semantic Code Searchcited by 3
- 2022Evaluation of Contrastive Learning with Various Code Representations for Code Clone Detectioncited by 3
- 2022A Survey on Natural Language Processing for Programmingcited by 3
- 2023Neural Machine Translation for Code Generationcited by 3
- 2023Revisiting File Context for Source Code Summarizationcited by 3
- 2024Structured Code Representations Enable Data-Efficient Adaptation of Code Language Modelscited by 3
- 2024Structure-aware Fine-tuning for Code Pre-trained Modelscited by 3
- 2023APIContext2Com: Code Comment Generation by Incorporating Pre-Defined API Documentationcited by 2
- 2023Neuro-symbolic Zero-Shot Code Cloning with Cross-Language Intermediate Representationcited by 2
- 2023Statement-based Memory for Neural Source Code Summarizationcited by 2
- 2025Deep Learning-Based Identification of Inconsistent Method Names: How Far Are We?cited by 2
50 most cited of 63 All 63 (JSON)
- 2025cAST: Enhancing Code Retrieval-Augmented Generation with Structural Chunking via Abstract Syntax Tree18 Jun 2025
- 2025Simple and Effective Baselines for Code Summarisation Evaluation26 May 2025
- 2025Towards an Understanding of Context Utilization in Code Intelligence11 Apr 2025
- 2025LLM-Aided Customizable Profiling of Code Data Based On Programming Language Concepts19 Mar 2025
- 2025Deep Learning-Based Identification of Inconsistent Method Names: How Far Are We?22 Jan 2025
- 2024Structure-aware Fine-tuning for Code Pre-trained Models11 Apr 2024
- 2024Structured Code Representations Enable Data-Efficient Adaptation of Code Language Models19 Jan 2024
- 2024AST-T5: Structure-Aware Pretraining for Code Generation and Understanding5 Jan 2024
- 2023Deep Learning for Code Intelligence: Survey, Benchmark and Toolkit30 Dec 2023
- 2023KEN: Kernel Extensions using Natural Language9 Dec 2023
- 2023Revisiting File Context for Source Code Summarization5 Sep 2023
- 2023Distilled GPT for Source Code Summarization28 Aug 2023
38 more
- 2023Semantic Similarity Loss for Neural Source Code Summarization14 Aug 2023
- 2023The potential of LLMs for coding with low-resource and domain-specific programming languages24 Jul 2023
- 2023Graph Neural Networks For Mapping Variables Between Programs -- Extended Version24 Jul 2023
- 2023Statement-based Memory for Neural Source Code Summarization21 Jul 2023
- 2023An Exploratory Literature Study on Sharing and Energy Use of Language Models for Source Code5 Jul 2023
- 2023Neural Machine Translation for Code Generation22 May 2023
- 2023Towards Modeling Human Attention from Eye Movements for Neural Source Code Summarization16 May 2023
- 2023Learning to Parallelize with OpenMP by Augmented Heterogeneous AST Representation9 May 2023
- 2023Neuro-symbolic Zero-Shot Code Cloning with Cross-Language Intermediate Representation26 Apr 2023
- 2023Knowledge Transfer for Pseudo-code Generation from Low Resource Programming Language16 Mar 2023
- 2023Implant Global and Local Hierarchy Information to Sequence based Code Representation Models14 Mar 2023
- 2023Judging Adam: Studying the Performance of Optimization Methods on ML4SE Tasks6 Mar 2023
- 2023APIContext2Com: Code Comment Generation by Incorporating Pre-Defined API Documentation3 Mar 2023
- 2023Syntax and Domain Aware Model for Unsupervised Program Translation8 Feb 2023
- 2023Transformers Meet Directed Graphs31 Jan 2023
- 2022A Survey on Natural Language Processing for Programming12 Dec 2022
- 2022Transformers over Directed Acyclic Graphs24 Oct 2022
- 2022Language Model Decoding as Likelihood-Utility Alignment13 Oct 2022
- 2022CAT-probing: A Metric-based Approach to Interpret How Pre-trained Models for Programming Language Attend Code Structure7 Oct 2022
- 2022Learning Program Representations with a Tree-Structured Transformer18 Aug 2022
- 2022A Library for Representing Python Programs as Graphs for Machine Learning15 Aug 2022
- 2022CSSAM:Code Search via Attention Matching of Code Semantics and Structures8 Aug 2022
- 2022InvAASTCluster: On Applying Invariant-Based Program Clustering to Introductory Programming Assignments28 Jun 2022
- 2022Evaluation of Contrastive Learning with Various Code Representations for Code Clone Detection17 Jun 2022
- 2022Evaluating the Impact of Source Code Parsers on ML4SE Models17 Jun 2022
- 2022XLCoST: A Benchmark Dataset for Cross-lingual Code Intelligence16 Jun 2022
- 2022Multimodal Learning with Transformers: A Survey13 Jun 2022
- 2022MetaTPTrans: A Meta Learning Approach for Multilingual Code Representation Learning13 Jun 2022
- 2022StructCoder: Structure-Aware Transformer for Code Generation10 Jun 2022
- 2022Assessing Project-Level Fine-Tuning of ML4SE Models7 Jun 2022
- 2022Deep Learning Meets Software Engineering: A Survey on Pre-Trained Models of Source Code24 May 2022
- 2022NS3: Neuro-Symbolic Semantic Code Search21 May 2022
- 2022CV4Code: Sourcecode Understanding via Visual Code Representations11 May 2022
- 2022A Neural Network Architecture for Program Understanding Inspired by Human Behaviors10 May 2022
- 2022A Survey of Deep Learning Models for Structural Code Understanding3 May 2022
- 2022On Distribution Shift in Learning-based Bug Detectors21 Apr 2022
- 2022M2TS: Multi-Scale Multi-Modal Approach Based on Transformer for Source Code Summarization18 Mar 2022
- 2022A Systematic Evaluation of Large Language Models of Code26 Feb 2022
50 newest of 63 All 63 (JSON)
- 2021CodeT5: Identifier-aware Unified Pre-trained Encoder-Decoder Models for Code Understanding and Generationcited by 890
- 2022Multimodal Learning with Transformers: A Surveycited by 399
- 2022A Systematic Evaluation of Large Language Models of Codecited by 360
- 2021Do Transformers Really Perform Bad for Graph Representation?cited by 318
- 2021SynCoBERT: Syntax-Guided Multi-Modal Contrastive Pre-Training for Code Representationcited by 63
- 2022XLCoST: A Benchmark Dataset for Cross-lingual Code Intelligencecited by 54
- 2023Transformers Meet Directed Graphscited by 39
- 2022StructCoder: Structure-Aware Transformer for Code Generationcited by 33
- 2024AST-T5: Structure-Aware Pretraining for Code Generation and Understandingcited by 32
- 2021CodeQA: A Question Answering Dataset for Source Code Comprehensioncited by 30
- 2023Distilled GPT for Source Code Summarizationcited by 30
- 2021Code Structure Guided Transformer for Source Code Summarizationcited by 29
12 most cited of 62 All 62 (JSON)
- 2025Simple and Effective Baselines for Code Summarisation Evaluation26 May 2025
- 2025Towards an Understanding of Context Utilization in Code Intelligence11 Apr 2025
- 2025LLM-Aided Customizable Profiling of Code Data Based On Programming Language Concepts19 Mar 2025
- 2025Deep Learning-Based Identification of Inconsistent Method Names: How Far Are We?22 Jan 2025
- 2024Structure-aware Fine-tuning for Code Pre-trained Models11 Apr 2024
- 2024Structured Code Representations Enable Data-Efficient Adaptation of Code Language Models19 Jan 2024
- 2024AST-T5: Structure-Aware Pretraining for Code Generation and Understanding5 Jan 2024
- 2023Deep Learning for Code Intelligence: Survey, Benchmark and Toolkit30 Dec 2023
- 2023KEN: Kernel Extensions using Natural Language9 Dec 2023
- 2023Revisiting File Context for Source Code Summarization5 Sep 2023
- 2023Distilled GPT for Source Code Summarization28 Aug 2023
- 2023Semantic Similarity Loss for Neural Source Code Summarization14 Aug 2023
12 newest of 62 All 62 (JSON)