TensorX
返回文献探索

Paper · arXiv 2305.05383

Code Execution with Pre-trained Language Models

Chenxiao Liu, Shuai Lu, Weizhu Chen, Daxin Jiang, Alexey Svyatkovskiy, Shengyu Fu, Neel Sundaresan, Nan Duan

2 upvotesMay 8, 2023arXiv 预印本
AI 摘要

CodeExecutor, a Transformer model enhanced with code execution pre-training and curriculum learning, demonstrates improved performance in code execution tasks and benefits for code intelligence tasks like zero-shot search and text-to-code generation.

Transformer modelcode execution pre-trainingcurriculum learningsemantic comprehensioncode execution taskszero-shot code-to-code searchtext-to-code generation

Abstract

Code execution is a fundamental aspect of programming language semantics that reflects the exact behavior of the code. However, most pre-trained models for code intelligence ignore the execution trace and only rely on source code and syntactic structures. In this paper, we investigate how well pre-trained models can understand and perform code execution. We develop a mutation-based data augmentation technique to create a large-scale and realistic Python dataset and task for code execution, which challenges existing models such as Codex. We then present CodeExecutor, a Transformer model that leverages code execution pre-training and curriculum learning to enhance its semantic comprehension. We evaluate CodeExecutor on code execution and show its promising performance and limitations. We also demonstrate its potential benefits for code intelligence tasks such as zero-shot code-to-code search and text-to-code generation. Our analysis provides insights into the learning and generalization abilities of pre-trained models for code execution.

北京市昌平区探索星信息技术及软件开发工作室

京ICP备2026059466号