中文

短文件即是智慧:代码生成的裁剪

计算与语言 2024-07-02 v1

摘要

数据 curated 常被视为 LLM 训练的“秘方”,通常高质量的数据会导致更好的 LLM性能。鉴于互联网抓取语料的规模,数据裁剪正变得愈发重要。许多研究表明,去除重复数据或挑选更高质量的数据可导致效率或性能的提升。通常,三种方法用于过滤大规模语料库:基于嵌入、基于启发式和基于分类器。在本工作中,我们对前两种方法在针对代码生成微调 LLM 的领域进行对比分析。我们发现,基于嵌入的方法常因长度问题而受到干扰,而一种简单的启发式方法——裁剪长文件——在计算受限的情形下优于其他方法。我们的 метод 可在保持性能相当的前提下实现训练效率提升最高可达 2 倍,或在保持计算量相当的前提下在 HumanEval 上实现约 3.5% 的绝对性能提升。然而,我们发现对 held-out 长文件的 perplexity 会增加,这引发了一个问题:针对常见编码基准(HumanEval、MBPP)优化数据混合是否真正最适用于下游应用场景。总体而言,我们希望本工作为代码数据(特别是极端长代码文件质量较差)提供有价值的直觉,提供一种具有竞争力的基于启发式的数据裁剪方法,并引出我们在如何评估代码生成模型方面的问题。

关键词

引用

@article{arxiv.2407.00434,
  title  = {Brevity is the soul of wit: Pruning long files for code generation},
  author = {Aaditya K. Singh and Yu Yang and Kushal Tirumala and Mostafa Elhoushi and Ari S. Morcos},
  journal= {arXiv preprint arXiv:2407.00434},
  year   = {2024}
}

备注

15 pages, 5 figures