LLM2D
ObscuraCoder:通过混淆基础训练高效的代码LM预训练
ObscuraCoder: Powering Efficient Code LM Pre-Training Via Obfuscation Grounding
作者: Indraneil Paul, Haoyi Yang, Goran Glava\v{s}, Kristian Kersting, Iryna Gurevych
发布日期: 4/2/2025
arXiv ID: oai:arXiv.org:2504.00019v1

摘要

arXiv:2504.00019v1 宣告类型: cross 摘要: 语言模型(LMs)已经成为代码编写工具箱中的必备工具。然而,它们的预训练配方在近年来几乎没有变化,除了偶尔的数据来源和筛选策略的变化。特别是针对代码-LMs预训练目标的研究,旨在提高数据效率并更好地区分语法和语义方面的变化,相关研究明显较少,尤其是在自然语言LMs方面做出了相应的努力。在这项工作中,我们研究了对混淆代码的 grounding 作为一种手段,帮助代码-LMs超越表面形式的语法,并增强其预训练样本效率。为此,我们编译了 ObscuraX 数据集,其中包括七种语言的大约 5500 万对源代码和混淆代码。随后,我们基于包含 ObscuraX 的 272 亿个标记的语料库,预训练了参数范围从 2.55 亿到 28 亿的 ObscuraCoder 模型,并证明了我们基于混淆的预训练配方与传统的 Vanilla 自回归预训练以及现有的去混淆(DOBF)目标相比,能够在代码-LMs 的能力上提供一致的改进。ObscuraCoder 在多个语法和语义代码理解测试中表现出显著的改进,并且在多语言代码补全、多语言代码提交总结以及多用途库导向的代码生成方面也展示了增强的能力。