mlsanityData to 13 Oct 2026

NatGen: Generative pre-training by "Naturalizing" source code

arXiv 2206.07585 ↗First posted 15 Jun 2022cs.PL cs.AI cs.LGcited by 54

Not on the map. Why?

Abstract (arXiv)

Pre-trained Generative Language models (e.g. PLBART, CodeT5, SPT-Code) for source code yielded strong results on several tasks in the past few years, including code generation and translation. These models have adopted varying pre-training objectives to learn statistics of code construction from very large-scale corpora in a self-supervised fashion; the success of pre-trained models largely hinges on these pre-training objectives. This paper proposes a new pre-training objective, "Naturalizing" of source code, exploiting code's bimodal, dual-channel (formal & natural channels) nature. Unlike natural language, code's bimodal, dual-channel nature allows us to generate semantically equivalent code at scale. We introduce six classes of semantic preserving transformations to introduce un-natural forms of code, and then force our model to produce more natural original programs written by developers. Learning to generate equivalent, but more natural code, at scale, over large corpora of open-source code, without explicit manual supervision, helps the model learn to both ingest & generate code. We fine-tune our model in three generative Software Engineering tasks: code generation, code translation, and code refinement with limited human-curated labeled data and achieve state-of-the-art performance rivaling CodeT5. We show that our pre-trained model is especially competitive at zero-shot and few-shot learning, and better at learning code properties (e.g., syntax, data flow).

Key facts. Cited by 54 papers in the map (data through 13 Oct 2026). Builds on 41 of its 68 references that are in the map. First posted on arXiv 15 Jun 2022.

Builds on

41 of 68 references.

References · 41

  1. 2017Attention Is All You Needcited by 60,106
  2. 2018BERT: Pre-training of Deep Bidirectional Transformers for Language Understandingcited by 40,304
  3. 2020Language Models are Few-Shot Learnerscited by 32,320
  4. 2019Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformercited by 14,549
  5. 2019RoBERTa: A Robustly Optimized BERT Pretraining Approachcited by 13,322
  6. 2021Evaluating Large Language Models Trained on Codecited by 8,205
  7. 2019BART: Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translation, and Comprehensioncited by 5,884
  8. 2016Overcoming catastrophic forgetting in neural networkscited by 4,753
  9. 2020CodeBERT: A Pre-Trained Model for Programming and Natural Languagescited by 1,304
  10. 2021CodeT5: Identifier-aware Unified Pre-trained Encoder-Decoder Models for Code Understanding and Generationcited by 905
  11. 2021CodeXGLUE: A Machine Learning Benchmark Dataset for Code Understanding and Generationcited by 743
  12. 2019CodeSearchNet Challenge: Evaluating the State of Semantic Code Searchcited by 651
29 more
  1. 2020GraphCodeBERT: Pre-training Code Representations with Data Flowcited by 609
  2. 2017Zero-Shot Learning -- A Comprehensive Evaluation of the Good, the Bad and the Uglycited by 538
  3. 2020CodeBLEU: a Method for Automatic Evaluation of Code Synthesiscited by 475
  4. 2019Generalizing from a Few Examples: A Survey on Few-Shot Learningcited by 462
  5. 2021Unified Pre-training for Program Understanding and Generationcited by 366
  6. 2018Meta-Transfer Learning for Few-Shot Learningcited by 306
  7. 2020Unsupervised Translation of Programming Languagescited by 262
  8. 2017A Survey of Machine Learning for Big Code and Naturalnesscited by 221
  9. 2017Learning to Represent Programs with Graphscited by 220
  10. 2021Retrieval Augmented Code Generation and Summarizationcited by 148
  11. 2020A Transformer-based Approach for Source Code Summarizationcited by 132
  12. 2018The Adverse Effects of Code Duplication in Machine Learning Models of Codecited by 125
  13. 2018An Empirical Study on Learning Bug-Fixing Patches in the Wild via Neural Machine Translationcited by 108
  14. 2018Mapping Language to Code in Programmatic Contextcited by 104
  15. 2020Retrieval-Augmented Generation for Code Summarization via Hybrid GNNcited by 89
  16. 2021Studying the Usage of Text-To-Text Transfer Transformer to Support Code-Related Taskscited by 70
  17. 2021DOBF: A Deobfuscation Pre-Training Objective for Programming Languagescited by 68
  18. 2021CoTexT: Multi-task Learning with Code-Text Transformercited by 61
  19. 2021AVATAR: A Parallel Corpus for Java-Python Program Translationcited by 59
  20. 2019On Learning Meaningful Code Changes via Neural Machine Translationcited by 50
  21. 2018CODIT: Code Editing with Tree-Based Neural Modelscited by 40
  22. 2015On the "Naturalness" of Buggy Codecited by 35
  23. 2020Typilus: Neural Type Hintscited by 29
  24. 2020Code to Comment "Translation": Data, Metrics, Baselining & Evaluationcited by 29
  25. 2021On Multi-Modal Learning of Editing Source Codecited by 25
  26. 2019Coupling Retrieval and Meta-Learning for Context-Dependent Semantic Parsingcited by 18
  27. 2021Towards Learning (Dis)-Similarity of Source Code from Program Contrastscited by 17
  28. 2020Neural Software Analysiscited by 11
  29. 2017Neural Attribute Machines for Program Generationcited by 3

Built on by

Cited by year (2026 to 13 Oct)

Citing papers per year: 2022: 2; 2023: 21; 2024: 16; 2025: 9; 2026: 6.

54 papers.

Sort:

By area:

  1. 2023CodeT5+: Open Code Large Language Models for Code Understanding and Generationcited by 333
  2. 2022ReCode: Robustness Evaluation of Code Generation Modelscited by 102
  3. 2023DiverseVul: A New Vulnerable Source Code Dataset for Deep Learning Based Vulnerability Detectioncited by 101
  4. 2023Is ChatGPT the Ultimate Programming Assistant -- How far is it?cited by 74
  5. 2023CodeTransOcean: A Comprehensive Multilingual Benchmark for Code Translationcited by 56
  6. 2025LLMs in Software Security: A Survey of Vulnerability Detection Techniques and Insightscited by 44
  7. 2023Large Language Model-Aware In-Context Learning for Code Generationcited by 43
  8. 2023A New Era in Software Security: Towards Self-Healing Software via Large Language Models and Formal Verificationcited by 42
  9. 2023Recommending Root-Cause and Mitigation Steps for Cloud Incidents using Large Language Modelscited by 38
  10. 2023Code Execution with Pre-trained Language Modelscited by 34
  11. 2023Measuring The Impact Of Programming Language Distributioncited by 32
  12. 2023Natural Language Generation and Understanding of Big Code for AI-Assisted Programming: A Reviewcited by 32
38 more
  1. 2023Better patching using LLM prompting, via Self-Consistencycited by 29
  2. 2023CodeTF: One-stop Transformer Library for State-of-the-art Code LLMscited by 21
  3. 2024IRCoder: Intermediate Representations Make Language Models Robust Multilingual Code Generatorscited by 21
  4. 2023Towards Efficient Fine-tuning of Pre-trained Code Models: An Experimental Study and Beyondcited by 20
  5. 2023The Vault: A Comprehensive Multilingual Dataset for Advancing Code Understanding and Generationcited by 20
  6. 2024Towards Neural Synthesis for SMT-Assisted Proof-Oriented Programmingcited by 19
  7. 2024Selective Prompt Anchoring for Code Generationcited by 16
  8. 2025Large Language Models (LLMs) for Source Code Analysis: applications, models and datasetscited by 15
  9. 2023Do Large Language Models Pay Similar Attention Like Human Programmers When Generating Code?cited by 14
  10. 2024Transformer-Based Models Are Not Yet Perfect At Learning to Emulate Structural Recursioncited by 14
  11. 2024What can Large Language Models Capture about Code Functional Equivalence?cited by 14
  12. 2022Who Evaluates the Evaluators? On Automatic Metrics for Assessing AI-based Offensive Code Generatorscited by 11
  13. 2024Enhancing LLM-Based Coding Tools through Native Integration of IDE-Derived Static Contextcited by 10
  14. 2023Towards Causal Deep Learning for Vulnerability Detectioncited by 9
  15. 2023Functional Overlap Reranking for Neural Code Generationcited by 9
  16. 2025Do LLMs Consider Security? An Empirical Study on Responses to Programming Questionscited by 9
  17. 2023Learning from Teaching Assistants to Program with Subgoals: Exploring the Potential for AI Teaching Assistantscited by 7
  18. 2024CodeArt: Better Code Models by Attention Regularization When Symbols Are Lackingcited by 7
  19. 2024VulScribeR: Exploring RAG-based Vulnerability Augmentation with LLMscited by 7
  20. 2024Defending Code Language Models against Backdoor Attacks with Deceptive Cross-Entropy Losscited by 5
  21. 2025ObscuraCoder: Powering Efficient Code LM Pre-Training Via Obfuscation Groundingcited by 4
  22. 2023Towards Understanding What Code Language Models Learnedcited by 3
  23. 2023Challenging Bug Prediction and Repair Models with Synthetic Bugscited by 3
  24. 2024Pinning "Reflection" on the Agenda: Investigating Reflection in Human-LLM Co-Creation for Creative Codingcited by 3
  25. 2024Exploring Data-Efficient Adaptation of Large Language Models for Code Generationcited by 3
  26. 2024SCoPE: Evaluating LLMs for Software Vulnerability Detectioncited by 3
  27. 2024CodeCipher: Learning to Obfuscate Source Code Against LLMscited by 3
  28. 2024Genetic Auto-prompt Learning for Pre-trained Code Intelligence Language Modelscited by 2
  29. 2024LLMs in the Heart of Differential Testing: A Case Study on a Medical Rule Enginecited by 2
  30. 2025Semantic-Preserving Transformations as Mutation Operators: A Study on Their Effectiveness in Defect Detectioncited by 2
  31. 2026A Jagged Frontier: Evaluating Robustness of Code Agents to Semantics-Preserving Transformationscited by 1
  32. 2023On ML-Based Program Translation: Perils and Promisescited by 0
  33. 2024Perspective of Software Engineering Researchers on Machine Learning Practices Regarding Research, Review, and Educationcited by 0
  34. 2025T3: Multi-level Tree-based Automatic Program Repair with Large Language Modelscited by 0
  35. 2025Fine-Tuning Code Language Models to Detect Cross-Language Bugscited by 0
  36. 2025CLASP: Training-Free LLM-Assisted Source Code Watermarking via Semantic-Preserving Transformationscited by 0
  37. 2025Auto-SPT: Automating Semantic Preserving Transformations for Codecited by 0
  38. 2026The New Compiler Stack: A Survey on the Synergy of LLMs and Compilerscited by 0

50 most cited of 54 All 54 (JSON)