Skip to main content
QUICK REVIEW

[論文レビュー] To Code, or Not To Code? Exploring Impact of Code in Pre-training

Viraat Aryabumi, Yixuan Su|arXiv (Cornell University)|Aug 20, 2024
Second Language Acquisition and LearningPsychology被引用数 3
ひとこと要約

この論文は、大規模言語モデルの事前学習データにコードを含めることの影響を調査し、コードが非コードタスクにおける性能を顕著に向上させることを示している。470M〜2.8Bパラメータのモデルを用いた制御されたアブレーションスタディにより、コードの追加が自然言語推論を最大8.2%、世界知識を4.2%、コード生成を12倍向上させることを明らかにした。コードの品質や冷却段階(cooldown)における含め方の有効性も、さらなる向上をもたらすことが示された。

ABSTRACT

Including code in the pre-training data mixture, even for models not specifically designed for code, has become a common practice in LLMs pre-training. While there has been anecdotal consensus among practitioners that code data plays a vital role in general LLMs' performance, there is only limited work analyzing the precise impact of code on non-code tasks. In this work, we systematically investigate the impact of code data on general performance. We ask "what is the impact of code data used in pre-training on a large variety of downstream tasks beyond code generation". We conduct extensive ablations and evaluate across a broad range of natural language reasoning tasks, world knowledge tasks, code benchmarks, and LLM-as-a-judge win-rates for models with sizes ranging from 470M to 2.8B parameters. Across settings, we find a consistent results that code is a critical building block for generalization far beyond coding tasks and improvements to code quality have an outsized impact across all tasks. In particular, compared to text-only pre-training, the addition of code results in up to relative increase of 8.2% in natural language (NL) reasoning, 4.2% in world knowledge, 6.6% improvement in generative win-rates, and a 12x boost in code performance respectively. Our work suggests investments in code quality and preserving code during pre-training have positive impacts.

研究の動機と目的

  • 大規模言語モデルにおける非コードタスクへのコードデータの影響を体系的かつ評価すること。
  • コードデータがコード固有の能力を超えて一般化性能を向上させるかどうかを特定すること。
  • コードの品質、割合、および学習段階(初期事前学習および冷却段階を含む)がモデル性能に与える影響を分析すること。
  • 多様なベンチマーク(推論、知識、LLM-as-a-judgeの勝率など)において、コードの含め方が測定可能な向上をもたらすかどうかを評価すること。

提案手法

  • 470M〜2.8Bパラメータのモデルを用いた大規模で制御された事前学習実験を実施した。
  • 多様なソースからのコードデータの割合を段階的に増加させたバリエーションと、テキストのみの事前学習を比較した。
  • コード品質の影響を評価するために、高品質な合成コードおよびコードに類似したデータ(例:GitHubコミット)を統合した。
  • 初期事前学習段階およびその後の冷却段階におけるコード含め方のアブレーションスタディを実施した。
  • 標準化されたベンチマークを用いた評価:自然言語推論(例:HellaSwag)、世界知識(例:MMLU)、コード生成(HumanEval)、LLM-as-a-judgeの勝率。
  • コードデータに対して品質フィルタを適用し、低品質または不正なエントリ(例:過剰な数字、0x文字列、トップレベルドメインのリスト)を除外した。

実験結果

リサーチクエスチョン

  • RQ1事前学習段階にコードを含めることで、推論や世界知識といった非コードの自然言語タスクの性能にどのような影響を与えるか?
  • RQ2コードデータの品質(特に合成コード対ウェブベースコード)が、下流タスクのモデル性能に与える影響は何か?
  • RQ3事前学習の冷却段階にコードを含めることで、複数のタスクタイプにおいて追加の向上が得られるか?
  • RQ4事前学習混合データにおけるコードの割合を変化させることで、モデルの一般化性能と性能にどのような影響があるか?

主な発見

  • 事前学習段階にコードデータを含めることで、テキストのみの事前学習と比較して、自然言語推論タスクで相対的に8.2%の向上が見られた。
  • 世界知識ベンチマーク(例:MMLU)において、コード含めによる相対的改善が4.2%に達した。
  • LLM-as-a-judgeによる評価では、生成性能の勝率がコード含めの事前学習で6.6%向上した。
  • HumanEvalベンチマークにおけるコード生成性能は、コード含めの事前学習によって12倍に向上した。
  • 高品質な合成コードデータを用いることで、自然言語推論タスクで相対的に9%向上し、コード性能は44%向上した(ウェブベースコードと比較)。
  • 冷却段階にコードを含めることで、さらに性能向上が得られ、自然言語推論で相対的に3.7%、世界知識で6.8%、コード性能で20%の向上が見られた(非コード冷却と比較)。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。