コードコンセプト:プログラミング概念シードから生成された大規模合成データセット

Hugging Face Blog / 2026/3/12

📰 ニュースModels & Research

要点

  • 本記事は、プログラミング概念シードから生成された大規模な合成データセット「Code Concepts」を紹介し、プログラミング言語モデルのトレーニングと研究支援を目的としています。
  • 多様で概念に基づく合成コード例を提供することで、モデルのプログラミング概念理解を向上させる設計です。
  • 概念シードを活用して体系的に多様なデータを作成し、機械学習モデルのコーディング課題における性能向上を目指します。
  • コード理解と生成に特化したAIモデルのトレーニング用として、ラベル付きで概念的に豊かなプログラムデータの不足を解決することを目標としています。

コードコンセプト:プログラミング概念シードから生成された大規模合成データセット

エンタープライズ + 記事 公開日 2026年3月11日

大規模LLM(大規模言語モデル)の開発において、モデルの品質向上はデータの量だけでなく、データの質や特異性にも依存します。事前学習データセットは通常、膨大な情報を含みますが、推論力やプログラミング能力など特定スキルを強化するための概念的なターゲティングが不足しがちです。この課題に対応するために、スケーラブルかつ概念主導の合成データ生成手法を設計しました。このワークフローにより研究者は目的とするモデル能力に合わせたデータ生成を実現できます。初期応用例として、Pythonプログラミング問題1500万問からなる大規模合成データセットを作成し、 Nemotron-Pretraining-Specialized-v1.1データセット の一部として「Nemotron-Pretraining-Code-Conceptsサブセット」として公開しています。 このデータを最終段階の1000億トークン分のNemotron-Nano-v3の事前学習に含めることで、HumanEvalベンチマークにおいて6ポイントの性能向上を示しています。

ワークフローの中心は、Nemotron‑Pretraining‑Code‑{v1,v2}データセットの大規模注釈から派生した厳選されたプログラミング知識の分類体系(タクソノミー)です。このタクソノミーは基本的な構文(例:文字列、再帰)から高度なアルゴリズムやデータ構造パターンまで、階層的に整理された数千のプログラミング概念をコードしています。これを用いることで、選択した概念の組み合わせや抽出を通してターゲットを絞ったデータ生成が可能となり、生成データの難易度、多様性、概念的バランスを実験者が調整できます。

このワークフローの実践評価として、大規模な合成データセットを生成し、LLMの基礎的なPythonプログラミングスキルの強化を目指しました。HumanEvalベンチマークに関連する91のコア概念を特定し(ただし実際のプログラミング知識としても幅広く代表的)、これらの概念を組み合わせて約1500万問の合成Python問題を生成しました。各問題はPythonのast.parse関数を用いて動作するコードであることを検証しています。図1にはCode Conceptsデータセット合成へのワークフロー適用の視覚的な概要を、図2には問題生成プロセスと概念シードと合成問題の例を示しています。

Code Concepts_ A synthetic dataset for improving base-model code generation(11) 図1:Code Conceptsデータセット生成に用いた概念主導のデータ生成。Nemotron-Pretraining-Code-{v1,v2}データセットから構築したタクソノミーを基にHumanEvalのプロンプトからプログラミング概念を抽出し、それらを用いて自由形式の問題を生成。91の異なるプログラミング概念由来の約1500万問のPython課題が生成されました。

Code Concepts_ A synthetic dataset for improving base-model code generation(12) 図2: 概念主導のデータ生成ワークフローにおけるPythonプログラミング問題生成の視覚的表現。青枠内のドット表記で示された複数の概念と指示、制約からプロンプトが作成され、GPT-OSS 120Bを用いて問題を生成。その後解析し品質をフィルタリング。例として、data-structures.sets.operationalgorithms.arrays.processingalgorithms.geometry.computationalの概念が組み合わさり、点集合の部分集合からの凸包領域のカウント問題が生成されました。

生成データの検証のため、Code Conceptsデータセットの100億トークンをNemotron Nano-v3の最終1000億トークンの事前学習に組み込みました。トレーニングと評価の結果、HumanEvalの正答率が73から79に6ポイント向上しました。図3はCode Conceptsデータセットを用いたモデルと用いないモデルのベースモデル評価を比較しています。定量的な性能向上に加え、グラフアルゴリズムや集合演算など様々な概念における性能強化、エッジケースや実行推論の取り扱いの改善も確認されました。

本データセットは単発の成果物ではなく、より広範な概念主導生成ワークフローの検証と位置付けています。データセットと基盤となるタクソノミーを寛容なオープンライセンス(CC-BY-4.0)で公開することで、コミュニティが他ドメインやユースケースにこの手法を拡張し、スケーラブルかつターゲット特化したLLM事前学習に活用できることを期待しています。

nanov3_concepts_all 図3:Code Conceptsデータ約100億トークンを用いた1000億トークンのデータ除去実験によるベースモデルベンチマーク評価結果。Code Conceptsデータで学習したモデルはHumanEvalで6ポイントの性能向上を達成し、その他のベンチマークはほぼ変化なしでした。

コミュニティ

編集プレビュー
画像、音声、動画をテキスト入力欄にドラッグ、貼り付け、またはここをクリックしてアップロードできます。
画像をタップまたは貼り付けてアップロード
コメント

· サインアップ または ログインしてコメントしてください

コードコンセプト:プログラミング概念シードから生成された大規模合成データセット | AI Navigate