AppleとHKUが発表、7Bスケールのコード生成専用DiffuCoder:拡散モデルがコード生成に新たな可能性をもたらす
Appleと香港大学が DiffuCoder を発表:コード生成向けの70億パラメータ持つ拡散型言語モデル 拡散型大規模言語モデル(dLLM)は、自然言語処理からコード生成まで、幅広いタスクで画期的な成果を上げています。一般的なマスク拡散モデルやブロック拡散モデルをさらにスケールアップすることで、DiffuLLaMAやLLaDA、DreamなどのdLLMが開発されました。これらモデルは一連のシーケンスを並列的に反復精緻化するため、非順序的な修正が行われるコード作成に特に適合しています。しかし、既存の研究では、これらのモデルのコード生成におけるパフォーマンスは自明なものにとどまっているか、部分的な自動回归解碼法に依存してしまいました。 開発背景と主な特徴 Appleと香港大学の研究チームは、DiffuCoderという70億パラメータを持つマスク拡散モデルを開発しました。このモデルは1300億トークンで訓練され、拡散ベースの言語モデルの行動特性と、それを用いた後の訓練方法の探求に役立つ重要なテストベッドとなっています。研究者は、局所的および全局的な順序性指標を導入し、生成されたコードが左から右に従う傾向を測定しました。分析結果によると、拡散LVMは条件付き生成時にエントロピーの沈澱効果を示し、因果関係に強いバイアスを生じさせますが、サンプリング温度を0.2から1.2に上げることで、符号生成の順序が柔軟になり、より高い性能が得られることが確認されました。 4段階の訓練パイプライン 研究チームは、Qwen-2.5-Coderをベースモデルとして採用し、RefineCodeとStackv2から4000億トークンのコードプレトレーニングコーパスを使用して継続的プレトレーニングを実施しました。訓練は4段階に分かれています:初期プレトレーニング(650億トークン)、中期訓練(160億トークンの緩和コードデータ使用)、指示微調整(436,000 SFTサンプル)、そして結合GRPOによる後工程訓練(21,000 Acecoder-87Kの難問)。各段階の設定は最適化され、BigCodeBenchを含む3つの基準(HumanEval、MBPP、EvalPlus)での評価が行われました。 ベンチマーク結果と最適化の洞察 1300億コードトークンで訓練されたDiffuCoderは、Qwen-2.5-CoderやOpenCoderと同等の性能を達成しました。ただし、dLLMの指摘微調整後のパフォーマンス改善は、Qwen-2.5-Coder+SFTと比べて小さなものにとどまりました。一方、結合GRPOによる強化学習は、DiffuCoderの性能向上に非常に効果的であることが示されました。これは、dLLMの非自動回歸性質を尊重した評価方法であるため、パフォーマンスが安定し、コード生成の並列性を強調しています。 業界からのコメント 香港大学の研究者は、「DiffuCoderは我々が開発した拡散モデルの中で最も高性能なものであり、この研究は非自動回帰モデルの可能性を示すものだ」と述べています。また、Appleのエキスパートは、「DiffuCoderのオープンソース化により、学術界と产业界のさらなる協力を促進できる」と語り、業界全体のコード生成技術の進歩への期待を示しています。 AppleはDiffuCoderを通じて、拡散型モデルの研究と応用を大幅に前進させることを目指しています。DiffuCoderの完全な訓練レシピと詳細分析が提供されていることで、研究者らは複雑な推論や生成タスクへのdLLMの适用に関する新しい可能性を追求できます。