SemRep:基于代码转换的生成式代码表示学习
机器学习
2026-03-17 v1 软件工程
摘要
代码转换是软件开发过程中的基础能力,其有效性依赖于构建高质量的代码表示来刻画输入代码语义并指导转换。现有方法将代码转换视为端到端学习任务,使表示构建隐含于模型权重或依赖刚性编译器级抽象。我们提出SemRep,通过生成式代码表示学习来提升代码转换。我们的关键洞察是采用语义保持转换作为中间表示,其既作为生成式中间训练任务,也为后续特定指令的代码转换提供指导。在通用代码编辑和优化任务(如 GPU 内核优化)上,SemRep在严格相同训练预算下相较于广泛微调的基线以6.9%提升正确性、1.1倍提升性能、13.9%提升泛化性和6.7%提升鲁棒性。通过更好地探索多样化代码转换,SemRep特别适合进化搜索。结合进化编码代理,SemRep发现了685B更大规模基线无法发现的优化,同时以25%更少的推理计算实现相同性能。
引用
@article{arxiv.2603.13640,
title = {SemRep: Generative Code Representation Learning with Code Transformations},
author = {Weichen Li and Jiamin Song and Bogdan Alexandru Stoica and Arav Dhoot and Gabriel Ryan and Shengyu Fu and Kexin Pei},
journal= {arXiv preprint arXiv:2603.13640},
year = {2026}
}