Data Augmentation for Code Translation with Comparable Corpora and Multiple References
Not on the map. Why?
Abstract (arXiv)
One major challenge of translating code between programming languages is that parallel training data is often limited. To overcome this challenge, we present two data augmentation techniques, one that builds comparable corpora (i.e., code pairs with similar functionality), and another that augments existing parallel data with multiple reference translations. Specifically, we build and analyze multiple types of comparable corpora, including programs generated from natural language documentation using a code generation model. Furthermore, to reduce overfitting to a single reference translation, we automatically generate additional translation references for available parallel data and filter the translations by unit tests, which increases variation in target translations. Experiments show that our data augmentation techniques significantly improve CodeT5 for translation between Java, Python, and C++ by an average of 7.5% Computational Accuracy (CA@1), which verifies the correctness of translations by execution. The code is available at https://github.com/Veronicium/CMTrans.
Key facts. Cited by 9 papers in the map (data through 14 Oct 2026). Builds on 18 of its 32 references that are in the map. First posted on arXiv 1 Nov 2023.
Builds on
18 of 32 references.
References · 18
- 2021Program Synthesis with Large Language Modelscited by 3,637
- 2020CodeBERT: A Pre-Trained Model for Programming and Natural Languagescited by 1,310
- 2021CodeT5: Identifier-aware Unified Pre-trained Encoder-Decoder Models for Code Understanding and Generationcited by 906
- 2021CodeXGLUE: A Machine Learning Benchmark Dataset for Code Understanding and Generationcited by 744
- 2019CodeSearchNet Challenge: Evaluating the State of Semantic Code Searchcited by 654
- 2019Quantifying the Carbon Emissions of Machine Learningcited by 521
- 2020CodeBLEU: a Method for Automatic Evaluation of Code Synthesiscited by 479
- 2021Unified Pre-training for Program Understanding and Generationcited by 366
- 2020Unsupervised Translation of Programming Languagescited by 263
- 2021CodeNet: A Large-Scale AI for Code Dataset for Learning a Diversity of Coding Taskscited by 200
- 2022MultiPL-E: A Scalable and Extensible Approach to Benchmarking Neural Code Generationcited by 136
- 2018Tree-to-tree Neural Networks for Program Translationcited by 93
6 more
- 2021Leveraging Automated Unit Tests for Unsupervised Code Translationcited by 82
- 2021DOBF: A Deobfuscation Pre-Training Objective for Programming Languagescited by 68
- 2021AVATAR: A Parallel Corpus for Java-Python Program Translationcited by 59
- 2020Simulated Multiple Reference Training Improves Low-Resource Machine Translationcited by 22
- 2022Summarize and Generate to Back-translate: Unsupervised Translation of Programming Languagescited by 12
- 2015Harvesting comparable corpora and mining them for equivalent bilingual sentences using statistical classification and analogy- based heuristicscited by 1
Built on by
Citing papers per year: 2024: 5; 2025: 3; 2026: 1.
9 papers.
- 2024BigCodeBench: Benchmarking Code Generation with Diverse Function Calls and Complex Instructionscited by 546
- 2024OptiBench Meets ReSocratic: Measure and Improve LLMs for Optimization Modelingcited by 68
- 2024RepoTransBench: A Real-World Multilingual Benchmark for Repository-Level Code Translationcited by 23
- 2024Data Mixture Inference: What do BPE Tokenizers Reveal about their Training Data?cited by 13
- 2024TransAgent: Enhancing LLM-Based Code Translation via Fine-Grained Execution Alignmentcited by 7
- 2025Agnostics: Learning to Code in Any Programming Language via Reinforcement with a Universal Learning Environmentcited by 5
- 2025Function-to-Style Guidance of LLMs for Code Translationcited by 4
- 2025Automated Snippet-Alignment Data Augmentation for Code Translationcited by 0
- 2026ORCA: Evaluating LLMs on Data Science Code Translationcited by 0
- 2026ORCA: Evaluating LLMs on Data Science Code Translation25 Sep 2026
- 2025Automated Snippet-Alignment Data Augmentation for Code Translation16 Oct 2025
- 2025Agnostics: Learning to Code in Any Programming Language via Reinforcement with a Universal Learning Environment6 Aug 2025
- 2025Function-to-Style Guidance of LLMs for Code Translation15 Jul 2025
- 2024RepoTransBench: A Real-World Multilingual Benchmark for Repository-Level Code Translation23 Dec 2024
- 2024TransAgent: Enhancing LLM-Based Code Translation via Fine-Grained Execution Alignment30 Sep 2024
- 2024Data Mixture Inference: What do BPE Tokenizers Reveal about their Training Data?23 Jul 2024
- 2024OptiBench Meets ReSocratic: Measure and Improve LLMs for Optimization Modeling13 Jul 2024
- 2024BigCodeBench: Benchmarking Code Generation with Diverse Function Calls and Complex Instructions22 Jun 2024