Data Augmentation for Supervised Code Translation Learning

Data-driven program translation has been recently the focus of several lines of research. A common and robust strategy is supervised learning. However, there is typically a lack of parallel training data, i.e., pairs of code snippets in the source and target language. While many data augmentation te...

Full description

Saved in:
Bibliographic Details
Published in2024 IEEE/ACM 21st International Conference on Mining Software Repositories (MSR) pp. 444 - 456
Main Authors Chen, Binger, Golebiowski, Jacek, Abedjan, Ziawasch
Format Conference Proceeding
LanguageEnglish
Published ACM 15.04.2024
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:Data-driven program translation has been recently the focus of several lines of research. A common and robust strategy is supervised learning. However, there is typically a lack of parallel training data, i.e., pairs of code snippets in the source and target language. While many data augmentation techniques exist in the domain of natural language processing, they cannot be easily adapted to tackle code translation due to the unique restrictions of programming languages. In this paper, we develop a novel rule-based augmentation approach tailored for code translation data, and a novel retrieval-based approach that combines code samples from unorganized big code repositories to obtain new training data. Both approaches are language-independent. We perform an extensive empirical evaluation on existing Java-C#-benchmarks showing that our method improves the accuracy of state-of-the-art supervised translation techniques by up to 35%.
ISSN:2574-3864