大規模推論モデルのためのRL
大規模推論モデルの登場は、現代AIにおける最も重要な進展の一つです。次トークン予測を最適化する標準的な言語モデル学習とは異なり、推論に焦点を当てたRLは、モデルに「答える前に考える」ことを教えます。つまり、推論時に追加の計算を割り当て、中間ステップを探索・検証・改良します。本節では、このパラダイムを支える手法、アーキテクチャ、スケーリング則を包括的かつ技術的に扱います。
動機と背景
なぜ推論には異なるRLアプローチが必要か
標準的なRLHF(節 1.3)は、完全な応答に対する単一のスカラー報酬を最適化します。しかし、数学、形式検証、競技プログラミング、科学的導出など、多段階の推論を必要とするタスクでは、この定式化は次の理由から不十分です。
-
疎な報酬 :数学の問題では20個の中間ステップが必要になることがありますが、結果に対する単一の報酬からは、誤りにつながった中間ステップへの勾配信号が得られません。
-
長いホライズン :推論チェーンは数百から数千トークンに及ぶことがあり、深刻な信用割当問題を生みます。
-
組合せ探索 :有効な推論経路の空間は指数関数的に大きく、モデルはこの空間を効率よく探索する方法を学習しなければなりません。
-
検証可能性 :主観的なテキスト品質とは異なり、数学的・論理的な正しさは客観的に検証できます。そのため、人手によるアノテーションなしで報酬を自動計算できます。
Important
重要な洞察:推論を探索問題として捉える
多段階の推論は、部分解の木に対する 探索問題 として定式化できます。木の各ノードは推論状態(思考の連鎖の接頭辞)、各エッジは推論ステップ(トークンまたは文)、葉は最終回答です。推論のためのRLは、モデルにこの木を効率よくたどる方法を教えます。つまり、有望な枝を探索し、行き止まりからバックトラックし、最も重要な場所に計算資源を割り当てます。
思考の連鎖:創発的な振る舞いと学習された能力
思考の連鎖(CoT)推論は、十分に大規模な言語モデルにおける創発的な能力として最初に観測されました (Wei et al. 2022): ステップごとの例をプロンプトで与えると、大規模モデル (通常は \(\geq\)100Bパラメータ)が精度を向上させる中間推論ステップを自発的に生成しました。 ここから、「CoTはスケールの創発的性質なのか、それとも明示的に学習できるのか」という根本的な問いが生まれました。
DeepSeek-R1や関連研究が示した答えは、 その両方 です。ただし、重要な違いがあります。
-
創発的CoT はインコンテキスト学習から生じ、大規模なベースモデルを必要とします。脆弱でプロンプトに敏感であり、頑健には汎化しません。
-
RLで学習したCoT は、プロンプトの形式によらず、生成プロセスの一部として推論チェーンを内在的に生成するモデルを作ります。こうしたチェーンはより長く探索的で、質的に異なる振る舞い(自己修正、バックトラック、検証)を示します。
Tip
「ひらめきの瞬間」現象(DeepSeek-AI et al. 2025)
推論モデルのRL学習中、DeepSeekの研究者は印象的な創発的振る舞いを観測しました。学習のある時点で、モデルは「待って、考え直させてください…」「実は、間違えたと思います…」のような表現を使いながら、チェーンの途中で初期のアプローチを自発的に再検討し始めたのです。この自己修正の振る舞いは明示的には学習されていませんでしたが、最終回答の精度を最大化するというRLの目的だけから生じました。これは、RLが難しい問題の解決に実用的なメタ認知戦略を発見できることを示唆します。
テスト時計算量のスケーリング則
推論モデル研究の動機となった中心的な実証的発見は、 テスト時計算量が性能に対して予測可能にスケールする ことです。 ここで\(C_{\text{train}}\)を学習計算量(FLOPs)、\(C_{\text{test}}\)を推論計算量(生成トークン数)とします。重要な観測は次のとおりです。
\[ \text{Accuracy}(C_{\text{train}}, C_{\text{test}}) \approx f!\left(\alpha \log C_{\text{train}} + \beta \log C_{\text{test}}\right) \]
単調関数\(f\)と定数\(\alpha, \beta > 0\)に対して、この関係が成り立ちます。これは、推論計算量を多く使う小さなモデルが、推論計算量の少ない大きなモデルに匹敵できることを意味します。計算量と性能のトレードオフにおける根本的な転換です。
実務上の意味は大きいものです。 推論モデルは学習計算量を推論計算量と交換します 。常に可能な限り大きなモデルを配備するのではなく、より小さく推論能力を持つモデルを配備し、難しい問題で「考える」ためにより多くのトークンを割り当てられます。
テスト時スケーリング手法
上のスケーリング則は、推論時により多くの計算を投じることで推論性能を大幅に改善できることを示しています。本節では、テスト時スケーリングを実現する 手法 を、単純な思考の連鎖から高度な木・グラフ探索アルゴリズムまで、包括的に扱います。これらの手法は推論コストと精度を交換するスペクトラムを形成しており、現代の推論システムを設計するにはその構造を理解することが不可欠です。
思考の連鎖(CoT)
思考の連鎖プロンプティング (Wei et al. 2022)は、すべてのテスト時スケーリング手法の基礎です。モデルは答えを直接出力するのではなく、複雑な問題を扱いやすい部分問題に分解する中間推論ステップを生成します。
ゼロショットCoT
Kojimaら (Kojima et al. 2022)は、プロンプトに「一歩ずつ考えてみましょう」を追加するだけで、例示なしに推論の振る舞いを引き出せることを示しました。 この単純なトリガーは、十分に大規模なモデルに潜在する推論能力を活性化します (\(\geq\)100B パラメータ)。
few-shot CoT
Weiら (Wei et al. 2022) は、明示的な推論トレースを含む少数の例を与えることで、より小さなモデルでも効果的に推論できることを示しました。
\[ \text{Prompt} = [(x_1, z_1, y_1), (x_2, z_2, y_2), \ldots, (x_k, z_k, y_k), (x_{\text{test}}, \texttt{?})] \]
ここで\(z_i\)は、例\((x_i, y_i)\)に対する人手で書かれた推論トレースです。
形式的な特徴づけ
CoTは単一ステップの予測\(p(y\vert x)\)を多段階の逐次生成へ変換します。
\[ p(y|x) = \sum_{z} p(y|x, z) \cdot p(z|x) \approx p(y|x, z^*) \cdot p(z^*|x) \]
ここで\(z^* = (z_1, z_2, \ldots, z_T)\)は貪欲な推論チェーンです。可能なすべてのチェーンに対する総和は扱いきれないため、標準的なCoTでは単一のサンプル(貪欲サンプリングまたは温度サンプリング)を使います。
限界
単一チェーンのCoTは脆弱です。初期の推論ステップが誤ると、その後のすべてのステップが誤った基盤の上に構築され、回復する仕組みがありません。
Self-Consistency(多数決)
Self-Consistency (X. Wang, Wei, Schuurmans, Q. Le, et al. 2023)は、 複数の独立した推論チェーン をサンプリングし、最終回答について多数決を取ることで、CoTの単一チェーンの脆弱性に対処します。
\[ \hat{y} = \arg\max_{y} \sum_{i=1}^{N} \mathbf{1}[y_i = y], \quad \text{where } (z_i, y_i) \sim p(\cdot | x), ; T > 0 \]
主な特性 :
-
温度\(T > 0\)のサンプリングで多様なチェーンを生成する(通常は\(T = 0.7\)–\(1.0\))
-
チェーン間の相互作用はなく、完全に並列化できる
-
精度は\(N\)とともに単調に向上する(\(N \approx 40\)以降は限界効用が小さくなる)
-
GSM8Kでは、CoT = 56.5%、 Self-Consistency(\(N\)=40)= 74.4%(PaLM-540B (Chowdhery et al. 2022))
-
結果報酬によるBest-of-N と等価(多数決が暗黙のORMとして働く)
Tip
多数決が機能する理由
モデルが正しい推論チェーンを生成する確率を\(p > 0.5\)とすると、大数の法則により、\(N\)個の独立サンプルに対する多数決の精度は\(N \to \infty\)で100%に近づきます。\(p = 0.3\)(モデルが通常は誤る)の場合でも、正しい回答が一つの値に集中し、誤った回答が多様なら、多数決によって正しい答えを復元できます。これがテスト時スケーリングの統計的基盤です。
Tree-of-Thoughts(ToT)
Tree-of-Thoughts (Yao et al. 2024)は、CoTを 線形チェーン から 木構造 へ一般化します。これにより、モデルは複数の推論経路を探索し、中間状態を評価し、有望でない枝からバックトラックできます。推論プロセスに意図的な計画を導入する手法です。
中核となる抽象化
推論問題は、次の要素を持つ木に対する探索へ分解されます。
-
ルート :初期問題文 \(x\)
-
ノード :部分的な推論状態\(s = (x, z_1, \ldots, z_k)\)
-
エッジ :個々の推論ステップ(「思考」)\(z_{k+1}\)
-
葉 :最終回答を含む完全な解
-
価値関数 :\(V(s)\)は部分解の有望さを推定する
形式的定義
\[ \text{ToT} = (\mathcal{G}, \mathcal{E}, V, \pi_\theta, \text{Search}) \]
ここで、
-
\(\mathcal{G}\): 思考生成器 — 次の思考の候補を\(b\)個生成する:\(\{z^{(1)}, \ldots, z^{(b)}\} \sim \pi_\theta(\cdot \vert s)\)
-
\(\mathcal{E}\): 状態評価器 — 部分解を採点する:\(V(s) \in \{\)sure、maybe、impossible\(\}\)または\(V(s) \in [0, 1]\)
-
\(\pi_\theta\):思考を生成する言語モデル
-
\(\text{Search}\):探索アルゴリズム(BFSまたはDFS)
探索アルゴリズム
BFS(幅優先探索):
-
現在の深さにある各ノードについて、\(b\)個の思考候補を生成する
-
すべての候補を\(V(\cdot)\)で評価する
-
最も有望な上位\(k\)個の状態を保持する(ビームサーチ)
-
すべての\(k\)個の状態を次のレベルへ進める
-
解が見つかるか、深さの上限に達するまで繰り返す
DFS(深さ優先探索):
-
現在の状態について\(b\)個の思考候補を生成する
-
評価する:\(V(s) =\) impossibleなら、直ちにバックトラックする
-
\(V(s) =\) sure/maybeなら、より深く再帰する(最も有望なものを選ぶ)
-
解がないまま深さの上限に達したら、バックトラックする
-
解が見つかるか、すべての枝を探索するまで続ける
Note
ToT:価値評価プロンプト
# The LLM evaluates partial reasoning states: EVAL_PROMPT = """Evaluate if this partial solution can reach 24. Numbers remaining: [4, 4, 10] Steps so far: 13 - 9 = 4 Can these remaining numbers (4, 4, 10) be combined using +,-,*,/ to make 24? Analysis: 4 * (10 - 4) = 4 * 6 = 24. Yes! Judge: sure/maybe/impossible Answer: sure""" # Thought generation prompt: GEN_PROMPT = """Input: 4 9 10 13 Possible next steps: 1. 13 - 9 = 4 (left: 4 4 10) 2. 10 + 13 = 23 (left: 4 9 23) 3. 9 - 4 = 5 (left: 5 10 13) ..."""
計算コスト
分岐係数\(b\)、深さ\(d\)、ビーム幅\(k\)のToTでは、次のようになります。
\[ \text{LLM calls (BFS)} = \underbrace{k \cdot b}_{\text{generation}} + \underbrace{k \cdot b}_{\text{evaluation}} = 2kb \text{ per level} \implies \text{Total} = 2kbd \]
24ゲームでは、\(b=3, k=2, d=3 \implies 36\)回のLLM呼び出しが必要です。標準的なCoTでは1回です。
結果
24ゲーム(難しい算術推論タスク)では、ToTの成功率は74%で、CoTの4%を大きく上回ります。同じベースモデル(GPT-4)に対する構造化探索による大幅な改善です。
Graph-of-Thoughts(GoT)
Graph-of-Thoughts (Besta et al. 2024)は、ToTを木から 有向非巡回グラフ(DAG) へ拡張し、異なる枝の部分解を マージ する重要な能力を導入します。これにより、モデルは複数の推論経路から得た洞察を、一つの洗練された解へ統合できます。
主要な操作
GoTは、ToTに加えて次の操作を導入します。
-
Generate :状態から新しい思考を生成する(ToTと同じ)
-
Aggregate/Merge :複数の思考を一つの洗練された思考へ結合する。これは木構造では不可能
-
Refine :フィードバックに基づいて思考を反復的に改善する
-
Score :思考の品質を評価する(ToTの価値関数と同じ)
グラフ操作(形式的定義)
頂点 \(\mathcal{V} = \{v_1, \ldots, v_n\}\)を思考頂点、\(\mathcal{E} \subseteq \mathcal{V} \times \mathcal{V}\)を有向エッジとします。GoTは次をサポートします。
\[ \begin{aligned} \textbf{Generate}(v) &: v \to \{v_{c_1}, \ldots, v_{c_b}\} && \text{(create children)} \\ \textbf{Aggregate}(v_1, \ldots, v_k) &\to v_{\text{merged}} && \text{(merge $k$ thoughts into one)} \\ \textbf{Refine}(v, n) &\to v' && \text{(improve $v$ through $n$ iterations)} \\ \textbf{Score}(v) &\to s \in [0, 1] && \text{(evaluate thought quality)} \end{aligned} \]
Aggregate 操作が重要な差別化要因です。複数の親ノードから一つの子ノードへのエッジを作成し、木ではなくDAGを形成します。これにより、次が可能になります。
-
分割統治 :問題を分割 \(\to\) 部分問題を並列に解く \(\to\) 解をマージする
-
アンサンブル推論 :複数の視点を生成し、最良のアイデアを統合する
-
反復的改良 :評価結果をフィードバックし、以前の思考を改善する
結果
マージを必要とするソートでは、同等の品質を保ちながら、GoTはToTに対してコストを62%削減します。集合の共通部分やキーワードのカウントでは、マージ操作によってより効率的に分解できるため、GoTはLLM呼び出しを30〜40%減らしてToTと同等の品質を達成します。
報酬モデルを使うBest-of-N
Best-of-N(BoN) (Nakano et al. 2021; Stiennon et al. 2020)は、 学習済み報酬モデル を使って候補から選択する、最も単純なスケーリング手法です。
\[ y^* = \arg\max_{y \in \{y_1, \ldots, y_N\}} R_\phi(x, y), \quad y_i \sim \pi_\theta(\cdot | x) \]
報酬モデルの種類による変種 :
-
ORMを使うBoN :完全な解を採点し、最も高得点のものを選ぶ。ORMが\(\approx\)正しさのチェックに近い場合、Self-Consistencyと等価。
-
PRMを使うBoN :各推論ステップを採点し、最小ステップスコアが最も高い解を選ぶ(どのステップにも誤りがある可能性が最も低い解)
-
重み付きBoN :報酬で候補に重みを付ける。 \(y^* \sim \text{softmax}(R(y_1)/\tau, \ldots, R(y_N)/\tau)\).
Important
BoNのスケーリング則
1サンプルあたりの精度が\(p\), のモデルについて、\(N\)回の試行で少なくとも1つの正しいサンプルが得られる確率: \[ P(\text{success with BoN}) = 1 - (1-p)^N \] 完全な報酬モデル(常に正しく選択するオラクル)の場合は、
\(p = 0.3, N = 10\): 成功 = \(97%\)
\(p = 0.1, N = 50\): 成功 = \(99.5%\)
実際には、不完全な報酬モデルによって有効な\(N\)には上限があります。\(N \approx 64\)–\(256\)を超えると報酬モデルの誤りが支配的になり、精度は頭打ちになるか低下します( 報酬ハッキング )。
推論のためのモンテカルロ木探索(MCTS)
MCTS (Kocsis and Szepesvári 2006; Silver et al. 2016)は、ToTの構造化探索に 学習された価値推定 と 訪問回数の統計 を組み合わせ、推論計算量を最適に割り当てます。もともとはゲームプレイ(AlphaGo (Silver et al. 2016))のために開発されましたが、現在ではAlphaProof (DeepMind 2024)やrStar (Qi et al. 2024)などのシステムによってLLM推論へ適用されています。
アルゴリズム(LLM推論向けの適用)
MCTSの各反復は、次の4段階で構成されます。
推論のためのUCB
ノード選択ではPUCT(木に適用するPredictor + UCB)を使います。
\[ a^* = \arg\max_a \left[ Q(s, a) + c_{\text{puct}} \cdot P(s, a) \cdot \frac{\sqrt{\sum_b N(s,b)}}{1 + N(s, a)} \right] \]
ここで\(P(s,a) = \pi_\theta(a\vert s)\)は、LLMがステップ\(a\)を状態\(s\)から生成する確率です。これにより、LLMが起こりそうだと考えているステップへ探索が偏る一方、UCB項はまだ十分に探索されていない代替案を試すよう促します。
Note
数学推論のためのMCTS:実行例
問題 :\(\sqrt{2}\)が無理数であることを証明せよ。
反復1 (選択 \(\to\) ルート, 展開):
最初のステップの候補を3つ生成する:
「背理法のため、\(\sqrt{2} = p/q\)は既約分数だと仮定する。」 (\(P = 0.7\))
「\(\sqrt{2}\)の小数展開は1.414…だと考える。」 (\(P = 0.15\))
「算術の基本定理を使う。」 (\(P = 0.10\))
\(z_1\)からのロールアウト:4ステップで正しい証明に到達 \(\to\) \(r = 1.0\)
\(z_2\)からのロールアウト:失敗(小数展開では無理数性を証明できない) \(\to\) \(r = 0.0\)
バックプロパゲーション: \(Q(s_0, z_1) = 1.0\), \(N(s_0, z_1) = 1\)
反復2 (選択:\(z_1\)をUCBで選ぶ):
状態「\(\sqrt{2} = p/q\)…」から展開する:
「次に、\(2 = p^2/q^2\), なので、\(p^2 = 2q^2\)。」 (\(P = 0.8\))
「次に、\(p\) と\(q\)は共通因子を持たない。」 (\(P = 0.15\))
\(z_4\)からのロールアウト:正しい続き \(\to r = 1.0\)
バックプロパゲーション: \(Q(s_0, z_1) = 1.0\), \(Q(s_1, z_4) = 1.0\)
20回の反復後 :木は8つの異なる推論経路を探索しました。最も多く訪問された経路が最終証明として選ばれます:\(z_1 \to z_4 \to z_6 \to z_8\)(偶奇法による古典的な背理法)。
比較:ToTとMCTS
| 次元 | ToT | MCTS |
|---|---|---|
| 価値推定 | LLMプロンプト(“sure/maybe/impossible”) | 学習された価値ネットワーク+ロールアウト統計 |
| 探索 | 固定ビーム幅、再訪問なし | UCBが有望なノードへ適応的に予算を割り当てる |
| 計算量配分 | 深さレベル全体に均一 | 集中的:より難しい部分問題に多くのシミュレーション |
| 学習との統合 | 学習なし、純粋なプロンプト | MCTS方策をベースモデルへ蒸留できる (Silver et al. 2016) |
| 適する用途 | 単純な分岐問題(24ゲーム) | 深い探索を必要とする複雑な問題(証明、コード) |
推論におけるTree-of-Thoughtsとモンテカルロ木探索の比較。
推論ステップに対するビームサーチ
ビームサーチは、NMTやテキスト生成で長く使われてきた手法です。トークンのレベルではなく、推論ステップのレベルに適用できます。 上位\(k\)個のトークン列を追跡する代わりに、上位\(k\)個の 推論接頭辞 を追跡します。
\[ \mathcal{B}_d = \text{top-}k\left\{ (s_1, \ldots, s_d) : \sum_{i=1}^d \log \pi_\theta(s_i | s_{<i}) + \lambda \cdot V_\phi(s_1, \ldots, s_d) \right\} \]
ここでスコアは、LLMの対数確率(流暢さ)と価値モデルの推定値(正しさ)を組み合わせます。これは、プロンプトで与えた価値関数ではなく、学習された価値関数を使うToT-BFSに相当します。
反復的改良と自己修正
反復的改良は、幅(複数の並列チェーン)を探索するのではなく、深さに計算を投じ、一つの解を繰り返し改善します。
\[ y^{(t+1)} = \text{LLM}!\left(\text{“Improve this solution:”}, y^{(t)}, \text{“Errors found:”}, e^{(t)}\right) \]
ここで\(e^{(t)}\)は次のいずれかから得られます。
-
自己検証 :モデルに自分の答えをチェックさせる
-
外部検証 :コードを実行したり、数学を記号的にチェックしたりする
-
批評モデル :別のモデルが誤りを特定する
代表的な手法には、 Self-Refine (Madaan et al. 2023)(自己フィードバックの反復)、 Reflexion (Shinn et al. 2023)(メモリに保存した反省を介した言語的RL)、 LATS (A. Zhou et al. 2024)(木探索と反省に基づく枝刈り)があります。
手法の比較と選択ガイド
| 手法 | 構造 | LLM呼び出し | 並列化可能 | RMが必要か | 適する用途 |
|---|---|---|---|---|---|
| CoT (Wei et al. 2022) | チェーン | 1 | 該当なし | いいえ | 簡単〜中程度の問題 |
| Self-Consistency (X. Wang, Wei, Schuurmans, Q. Le, et al. 2023) | 並列チェーン | \(N\) | 完全 | いいえ(多数決) | 離散的な答えを持つ数学 |
| Best-of-N + ORM | 並列チェーン | \(N\) + 1 | 完全 | はい(ORM) | 良いRMがある一般タスク |
| Best-of-N + PRM | 並列チェーン | \(N\) + \(N{\cdot}K\) | 完全 | はい(PRM) | 複雑な多段階推論 |
| ToT (Yao et al. 2024) | 木(BFS/DFS) | \(O(kbd)\) | 部分的 | LLM-as-judge | 構造化探索問題 |
| GoT (Besta et al. 2024) | DAG | \(O(kbd)\) | 部分的 | LLM-as-judge | 分解可能な問題 |
| MCTS (Kocsis and Szepesvári 2006) | 木+価値 | \(O(N_{\text{sim}} \cdot d)\) | 部分的 | はい(価値ネット) | 難しい証明、コーディング |
| Self-Refine (Madaan et al. 2023) | 線形(反復) | \(2T\) | いいえ | 自己批評 | オープンエンド生成 |
| LATS (A. Zhou et al. 2024) | 木+反省 | \(O(N \cdot d)\) | 部分的 | LLM-as-judge | エージェントタスク |
テスト時スケーリング手法の包括的な比較。
Important
どの手法をいつ使うか
予算が\(<\) 5\(\times\) ベースコスト未満 :CoTまたはSelf-Consistencyを使う。費用対効果が最も高い。
予算が5–50\(\times\) :PRMを使うBest-of-N(良い報酬モデルがある場合)、または\(b=3, k=2\)のToT-BFSを使う。
予算が50–500\(\times\) :学習済み価値関数を使うMCTSを利用する。DeepSeek-R1とOpenAI o1が動作する領域であり、暗黙的な木探索を伴う長い推論チェーンを使う。
並列性が必要 :Self-ConsistencyとBest-of-Nは完全に並列化できる。ToT/MCTSでは深さ方向の逐次的な展開が必要になる。
報酬モデルがない :Self-Consistency(多数決)、またはLLM-as-judge評価を使うToTを利用する。
分解可能な問題 :問題に自然な部分問題(ソート、複数文書の統合、モジュールを含むコード)がある場合、GoTが力を発揮する。
Tip
推論モデルにおける暗黙的なテスト時スケーリング
現代の推論モデル(DeepSeek-R1 (DeepSeek-AI et al. 2025)、OpenAI o1/o3 (OpenAI 2024a, 2025b))は、長い思考の連鎖を生成することで 暗黙的なテスト時スケーリング を行います。「思考」トークンはMCTSのロールアウトに似た役割を果たします。モデルは複数のアプローチを探索し、「待って、考え直させてください…」とバックトラックし、中間ステップを検証し、より難しい部分問題により多くのトークンを割り当てます。R1/o1の学習における重要な洞察は、GRPO/RLがこの暗黙的な探索を単一の生成の内部で実行するようモデルに教えることです。これにより、外部のオーケストレーション(ToTプロンプトやMCTS基盤)が不要になります。モデル自身が探索アルゴリズムになるのです。
DeepSeek-R1
DeepSeek-R1 (DeepSeek-AI et al. 2025)は、主要ベンチマークでOpenAI o1に匹敵、または上回った最初の完全オープンソース大規模推論モデルです。その学習パイプラインは技術的に透明であり、RLベースの推論における事実上のリファレンス実装となっています。
2段階の学習パイプライン
ステージ1:コールドスタート教師ありファインチューニング
まずベースモデル(DeepSeek-V3)を、長い思考の連鎖の例を集めた小規模で慎重にキュレーションされたデータセット上でファインチューニングします。この「コールドスタート」段階には、二つの目的があります。
-
形式の初期化 :モデルは最終回答を出す前に、
<think>...</think>形式で推論を生成することを学ぶ。 -
安定性 :コールドスタートSFTなしでベースモデルにゼロから純粋なRLを適用すると、学習ダイナミクスが不安定になり、退化した出力(言語の混在、反復ループなど)が生じる。
コールドスタートデータセットには\(\sim\)数千個の例しか含まれておらず、RLが後に発見する推論スタイルを過度に制約しないよう、意図的に小規模に保たれています。
ステージ2:GRPOベースの強化学習
コールドスタートSFTの後、モデルはグループ相対方策最適化(GRPO)を使った大規模RLを受けます。R1で使われるGRPOの完全な目的関数は、節 1.3.3で説明します。
Important
R1の学習パイプラインの要約
ベースモデル :DeepSeek-V3(671B MoE、アクティブパラメータ37B)
コールドスタートSFT : \(\sim\)数千個の長いCoTの例、形式:
<think>...</think><answer>...</answer>RL段階 :数学とコードの問題に対し、検証可能な報酬を使うGRPO
棄却サンプリング :複数の解を生成し、正しいものを残す
RL出力に対するSFT :RLで生成された高品質なチェーン上でファインチューニングする
最終RL :アライメントと有用性のための2回目のRL段階
報酬設計:精度報酬と形式報酬
R1における重要な設計上の選択は、 プロセス報酬モデルを置かないこと です。その代わり、R1は自動計算できる二つの単純な報酬を使います。
精度報酬
検証可能な答えを持つ数学問題では、次のように定義します。
\[ r_{\text{acc}}(y, y^*) = \begin{cases} 1 & \text{if } \texttt{verify}(y, y^*) = \texttt{True} \\ 0 & \text{otherwise} \end{cases} \]
ここで\(y\)はモデルの最終回答(<answer>タグから抽出)で、\(y^*\)は正解です。verify関数は記号数学の比較(SymPyなど)を使って同値な形式を扱います。
コード問題では、テストケースへの合格によって精度報酬が決まります。
\[ r_{\text{acc}}^{\text{code}}(y, \mathcal{T}) = \frac{1}{|\mathcal{T}|} \sum_{t \in \mathcal{T}} \mathbf{1}[\texttt{execute}(y, t) = \texttt{expected}(t)] \]
形式報酬
<think>...</think>構造を強制するために、
\[ r_{\text{fmt}}(y) = \begin{cases} 1 & y \text{ has valid <think> and <answer> tags} \\ 0 & \text{otherwise} \end{cases} \]
統合報酬
\[ r(y, y^*) = r_{\text{acc}}(y, y^*) + \lambda_{\text{fmt}} \cdot r_{\text{fmt}}(y) \]
元の実装では\(\lambda_{\text{fmt}} = 0.1\)です(支配的にならないほど小さく、形式の崩壊を防ぐには十分に大きい値です)。
Warning
プロセス報酬モデルなし
R1の注目すべき、そして意外な発見は、 プロセス報酬モデル(PRM)が不要である ことです。長い推論チェーンにもかかわらず、結果だけの報酬で、RLは高品質な推論戦略を発見できます。著者らは、数学・コードの報酬が検証可能であるため十分な信号を与え、PRMは独自の失敗モード(ステップ単位の報酬ハッキング)を持ち込むと仮説を立てています。これはOpenAIが採用したアプローチ(節 1.4)とは対照的です。
R1のGRPO定式化
GRPO (Shao et al. 2024)は、サンプリングした応答のグループからアドバンテージを推定することで、別個の価値ネットワークの学習を避ける方策勾配法です。 質問\(q\)に対して、GRPOは\(G\)個の応答\(\{y_1, y_2, \ldots, y_G\}\)を現在の方策\(\pi_\theta\)からサンプリングし、グループ平均に対する相対的なアドバンテージを計算します。
グループサンプリングとアドバンテージの正規化
質問\(q\)が与えられたとき、\(G\)個の出力をサンプリングします。
\[ \{y_i\}_{i=1}^G \sim \pi_\theta(\cdot \mid q) \]
式 [eq:r1_combined_reward]の報酬関数を使って報酬\(\{r_i\}_{i=1}^G\)を計算します。応答\(i\)に対する正規化アドバンテージは次のとおりです。
\[ \hat{A}_i = \frac{r_i - \mu_r}{\sigma_r + \epsilon} \]
ここで\(\mu_r = \frac{1}{G}\sum_{i=1}^G r_i\), \(\sigma_r = \sqrt{\frac{1}{G}\sum_{i=1}^G (r_i - \mu_r)^2}\)、\(\epsilon = 10^{-8}\)で、数値安定性のためです。
GRPOの目的関数
GRPOの目的関数は、確率比(PPOと同様)をクリップし、参照方策\(\pi_{\text{ref}}\)に対するKLペナルティを加えます。
\[ \mathcal{L}_{\text{GRPO}}(\theta) = -\mathbb{E}_{q \sim \mathcal{D},, \{y_i\} \sim \pi_\theta(\cdot|q)} \Bigg[ \frac{1}{G} \sum_{i=1}^{G} \frac{1}{|y_i|} \sum_{t=1}^{|y_i|} \\ \min!\left( \rho_{i,t}, \hat{A}_i,; \text{clip}(\rho_{i,t}, 1{-}\varepsilon, 1{+}\varepsilon), \hat{A}_i \right) - \beta, \mathbb{D}_{\mathrm{KL}}!\left[\pi_\theta ,|, \pi_{\text{ref}}\right] \Bigg] \label{eq:grpo_full} \]
ここで、
-
\(\rho_{i,t} = \dfrac{\pi_\theta(y_{i,t} \mid q, y_{i,<t})}{\pi_{\theta_{\text{old}}}(y_{i,t} \mid q, y_{i,<t})}\)はトークンごとの確率比
-
\(\varepsilon \in \{0.1, 0.2\}\)はPPOのクリッピングパラメータ
-
\(\beta > 0\)はKLペナルティの強さを制御する
-
\(\vert y_i\vert\)は応答\(i\)の長さ(長さの正規化により短い応答への偏りを防ぐ)
KLペナルティの定式化
KLダイバージェンス項はトークンごとに計算します。
\[ \mathbb{D}_{\mathrm{KL}}!\left[\pi_\theta ,|, \pi_{\text{ref}}\right] = \mathbb{E}_{y \sim \pi_\theta(\cdot|q)} \left[ \sum_{t=1}^{|y|} \log \frac{\pi_\theta(y_t \mid q, y_{<t})}{\pi_{\text{ref}}(y_t \mid q, y_{<t})} \right] \]
実際には、R1は次の近似を使います。各ステップで\(\pi_{\text{ref}}\)を計算する必要がない、KLの不偏推定量です。
\[ \mathbb{D}_{\mathrm{KL}}!\left[\pi_\theta ,|, \pi_{\text{ref}}\right] \approx \frac{\pi_{\text{ref}}(y_t \mid q, y_{<t})}{\pi_\theta(y_t \mid q, y_{<t})} - \log \frac{\pi_{\text{ref}}(y_t \mid q, y_{<t})}{\pi_\theta(y_t \mid q, y_{<t})} - 1 \]
これは常に非負で、\(\pi_\theta = \pi_{\text{ref}}\)のときにゼロになります。
Note
実践におけるGRPO:グループサイズと安定性
R1の学習では、\(G = 8\)個の応答を質問ごとにサンプリングします。これは重要なハイパーパラメータです。
小さすぎる(\(G=2\)):アドバンテージ推定の分散が大きく、学習がノイジーになる。
大きすぎる(\(G=32\)):計算コストが線形に増え、限界効用が低下する。
\(G=8\): 分散の低減と計算コストのバランスが取れることが実証的に確認されている。
グループサンプリングは自然な カリキュラム信号 も与えます。学習が進むにつれてモデルの平均報酬\(\mu_r\)は増加し、分散\(\sigma_r\)は減少します。\(G\)個の応答がすべて正しい(またはすべて誤っている)問題は勾配に寄与しないため、モデルの能力の限界付近にある問題へ自然に学習が集中します。
蒸留:R1-Distillシリーズ
R1の大きな実務的貢献は、R1が生成したチェーンに対する教師ありファインチューニングによって、 推論能力をはるかに小さなモデルへ蒸留できる ことを示した点です。R1-Distillシリーズ(1.5B、7B、8B、14B、32B、70Bパラメータ)は、次の手順で学習されます。
-
R1(671B)を使い、大規模な問題集合に対する長いCoTの解を生成する
-
正しい解だけを残すようフィルタリングする
-
これらの解を使って小さなベースモデル(Qwen2.5、Llama-3)をファインチューニングする
Important
小規模モデルにおける蒸留とRL
印象的な発見は、 小規模モデルでは蒸留がゼロからのRL学習を上回る ことです。DeepSeek-R1-Distill-Qwen-7Bは、GRPOを直接適用して学習した7Bモデルより高いMATHベンチマークスコアを達成します。これは次を示唆します。
小規模モデルには、RL探索によって推論戦略を発見する能力が不足している
しかし、大規模モデルが発見した推論戦略を模倣することは学習できる
小規模モデルのボトルネックは表現ではなく探索である
蒸留というアプローチは、推論の本質について重要な問いを提起します。小規模モデルは本当に「推論」しているのでしょうか。それとも、推論チェーンの表面的な形式に対してパターンマッチングしているのでしょうか。実証的には、蒸留モデルは新しい問題タイプにもある程度汎化するため、単なる記憶ではなく推論戦略を真に内在化していることが示唆されます。
OpenAI o1/o3シリーズ
OpenAIのo1 (OpenAI 2024a)(2024年9月公開)と、その後のo3/o4-mini (OpenAI 2025b)は、推論モデル開発における商用の最前線を代表します。完全な技術詳細は非公開ですが、公開されたシステムカード、技術レポート、実証的な観測から、手法について多くの洞察が得られます。
隠れた推論トークンを使う思考の連鎖RL
o1を特徴づけるアーキテクチャ上の選択は、 隠れた推論トークン の利用です。モデルは内部的な思考の連鎖(「推論トレース」または「思考トークン」と呼ばれる)を生成しますが、これはユーザーには表示されません。返されるのは最終回答だけです。この設計には次の意味があります。
-
形式の制約がない :隠れた推論は、スクラッチパッド記法、擬似コード、さらには英語以外の推論を含め、どのような形式でも使える。
-
スタイルに対する報酬ハッキングがない :ユーザーが推論を見ることはないため、有用であることよりも「よく見せる」ことへの圧力がない。
-
プロプライエタリな保護 :推論プロセスを公開しないため、直接的な模倣を防げる。
学習手順は「RLを使ってモデルに推論させる学習」と説明されており、RLの目的関数は完全な(隠れた推論+最終回答)系列に適用されます。報酬は最終回答の品質だけに与えられます。
プロセス報酬モデルと結果報酬モデル
OpenAIのアプローチは、DeepSeek-R1の結果のみのアプローチとは異なり、結果報酬に加えて プロセス報酬モデル(PRM) (Lightman et al. 2023)を使うと考えられています。この推測は、OpenAIが公開したPRM研究(PRM800Kデータセット、「Let’s Verify Step by Step」)と、o1システムカードにおける推論チェーンのRL学習の説明に基づきます。ただし、o1/o3の正確な学習レシピは公開されていません。
結果報酬モデル(ORM)
ORMは完全な応答\((q, y)\)を採点します。
\[ R_{\text{ORM}}(q, y) \in [0, 1] \]
検証可能なタスク(数学、コード)では、これは完全一致の検証に帰着します。オープンエンドのタスクでは、学習済み報酬モデルを使います。
プロセス報酬モデル(PRM)
PRMは、チェーン\(s_k\)の各推論ステップ\(y = (s_1, s_2, \ldots, s_K)\)に報酬を割り当てます。
\[ R_{\text{PRM}}(q, y) = \sum_{k=1}^{K} \gamma^{K-k} \cdot r_k(q, s_1, \ldots, s_k) \]
ここで\(r_k \in [0,1]\)はステップ単位の報酬で、\(\gamma \in (0,1]\)は割引係数です。ステップ単位の報酬\(r_k\)は部分解\((s_1, \ldots, s_k)\)が正しい最終回答につながる確率を推定します。
\[ r_k(q, s_1, \ldots, s_k) = P(\text{correct final answer} \mid q, s_1, \ldots, s_k) \]
Tip
PRMとORM:信用割当のトレードオフ
ORM は明確で曖昧さのない報酬を与えますが、深刻な信用割当問題に悩まされます。50ステップのチェーンの序盤にある一つの誤ったステップが、完全にランダムな応答と同じゼロ報酬を受け取ってしまいます。
PRM は信用割当に直接対処する密な報酬を与えますが、新たな課題を持ち込みます。
学習データ :ステップ単位のラベルには、人手によるアノテーションまたは自動生成が必要(Math-Shepherd、節 1.6.2)。
報酬ハッキング :モデルは、実際には正しくないのにPRMからは正しく見えるステップを生成するよう学習できる。
分布シフト :ある分布の推論チェーンで学習したPRMは、RLが生成する新しいチェーンへ汎化しない可能性がある。
実証的な証拠からは、PRMは探索(候補解からの選択)には有益ですが、学習における利点はそれほど明確でないことが示唆されます。
推論時計算量のスケーリング
o1の技術レポートは、明確なスケーリング則を示しています。難しい推論タスクでは、 思考トークンを増やすほど性能が単調に向上 します。これは、隠れた推論トークンの最大数を制御する「思考予算」パラメータによって実現されます。
思考トークン予算を\(T\)とします。観測された実証的なスケーリング則はおおむね次のとおりです。
\[ \text{Pass@1}(T) \approx a - b \cdot T^{-c} \]
定数\(a, b, c > 0\)に対して、\(a\)は漸近的な精度の上限を表し、\(c\)は改善率を特徴づけます。AIME 2024では、思考予算を最大にしたo1が\(\sim\)83%の精度を達成する一方、\(\sim\)13%は拡張思考を使わないGPT-4oの精度です。
学習計算量とテスト時計算量
o1/o3シリーズから得られる根本的な洞察は、 計算量等価原理 です。学習計算量\(C_{\text{train}}\)とテスト時計算量\(C_{\text{test}}\)の間にはトレードオフ曲線が存在し、その曲線上の点は同程度の性能を達成します。
\[ \text{Performance}(C_{\text{train}}, C_{\text{test}}) = g!\left(\alpha C_{\text{train}}^{p} + \beta C_{\text{test}}^{q}\right) \]
実証的には\(p \approx q\)であり、学習計算量とテスト時計算量はおおむね代替可能であることを示唆します。これは配備に大きな意味を持ちます。拡張思考を使う小さく安価なモデルは、レイテンシーが高くなる代わりに、難しい問題で大きなモデルに匹敵できます。
o3とo4-miniのアーキテクチャに関する洞察
o3とo4-miniの詳細は大部分が非公開ですが、いくつかの観測が得られています。
-
o3 :o1より大幅に大きな思考予算を持ち、ARC-AGIで人間に近い性能を達成する(高い計算量で87.5%)。推論時により高度な探索戦略を使うと考えられている。
-
o4-mini :RLで推論を学習した小さなモデルでも非常に競争力を持てることを示す。拡張思考でAIME 2025の93%を達成し、数学ではモデルサイズより推論能力が重要であることを示唆する。
-
ツール利用 :o3/o4-miniはツール利用(コード実行、ウェブ検索)を推論プロセスに統合し、中間ステップをプログラムで検証できるようにする。
QwQとQwenの推論モデル
AlibabaのQwenチームは、DeepSeek-R1とともにオープンソースの最前線を代表する一連の推論モデル(QwQ-32B (Q. Team 2024b、Qwen3 (Q. Team 2025))を開発しました。そのアプローチはいくつかの重要な点で異なります。
多段階RLパイプライン
Qwenの推論パイプラインは、より精緻な多段階アプローチを使います。
-
ベース事前学習 :数学とコーディング能力に優れたQwen2.5ベースモデル
-
多様な推論に対するSFT :幅広い推論タスク(数学、コード、科学、論理)の混合データでファインチューニングする
-
棄却サンプリング・ファインチューニング(RFT) :問題ごとに\(N\)個の解を生成し、正しいものを残してファインチューニングする
-
RL段階1 :検証可能な報酬を使い、数学とコードに対してGRPOを行う
-
RL段階2 :指示追従と安全性を含む、より広範なRL
棄却サンプリングとRLの組み合わせ
Qwenのアプローチにおける重要な革新は、 棄却サンプリングとRLを反復的に組み合わせる ことです。
-
初期化 : 方策\(\pi_0\)をSFTモデルから作る。
-
棄却サンプリング : サンプリングする:\(N\)個の解: \(\{y_i\}_{i=1}^N \sim \pi_{k-1}(\cdot \mid q)\). 。正しい解を残す: \(\mathcal{Y}^+(q) = \{y_i : r(y_i, y^*) = 1\}\).
-
SFT更新 : \(\pi_k^{\text{SFT}} \leftarrow \text{SFT}(\pi_{k-1}, \bigcup_q \mathcal{Y}^+(q))\)
-
RL更新 : \(\pi_k \leftarrow \text{GRPO}(\pi_k^{\text{SFT}}, \mathcal{D})\)
5を得る。 反復 ステップ2〜4を\(K\)回反復して最終方策\(\pi_K\)を得る。
棄却サンプリングのステップは方策を固定する高品質な正例を与え、RLは現在の分布を越えて探索します。この組み合わせは純粋なRLより安定し、純粋なSFTより高い能力を持ちます。
ツール統合推論
QwQ-32BとQwen3のモデルは ツール統合推論 をサポートします。モデルは推論チェーン中に外部ツール(Pythonインタプリタ、検索エンジン、計算機)を呼び出せます。これは特殊トークンによって実装されます。
<think>
Let me solve this step by step.
First, I'll compute the eigenvalues of the matrix.
<tool_call>
{"name": "python", "arguments": {"code": "import numpy as np\nA = np.array([[2,1],[1,3]])\neigenvalues = np.linalg.eigvals(A)\nprint(eigenvalues)"}}
</tool_call>
<tool_response>
[1.38196601 3.61803399]
</tool_response>
The eigenvalues are approximately 1.382 and 3.618.
These are (5 +/- sqrt5)/2, which are the golden ratio and its conjugate...
</think>
<answer>The eigenvalues are (5 +/- sqrt5)/2</answer>
RL学習の報酬は最終回答に対して計算されますが、ツール利用によって正しい答えに到達する確率が高まるため、モデルはツールを戦略的に使うことを学習します。
数学的基礎を持つ主要手法
推論のためのモンテカルロ木探索
モンテカルロ木探索(MCTS)は、推論を木探索として扱うための原理に基づくフレームワークを提供します。AlphaProof (DeepMind 2024)などのシステムでは、MCTSをゲームの手ではなく推論ステップに対して適用します。
状態空間と行動空間
-
状態 \(s_k\):部分的な推論チェーン \((q, r_1, r_2, \ldots, r_k)\)。ここで\(r_i\)は推論ステップ
-
行動 \(a\):次の推論ステップ(文または段落)
-
終端状態 :最終回答を含む状態
-
報酬 : \(R(s_{\text{terminal}}) = r_{\text{acc}}\) (式 [eq:r1_accuracy_reward])
部分解の価値関数
価値関数\(V(s_k)\)は、部分状態\(s_k\)から正解に到達する確率を推定します。
\[ V(s_k) = P(\text{correct answer} \mid s_k) \approx \frac{1}{M} \sum_{m=1}^{M} R(\text{rollout}_m(s_k)) \]
ここで\(\text{rollout}_m(s_k)\)は、\(s_k\)から現在の方策を使って終端状態まで行うモンテカルロ・ロールアウトです。
UCB探索
ノード選択では、推論向けに適用した上限信頼限界(UCB)式を使います。
\[ \text{UCB}(s_k, a) = Q(s_k, a) + c_{\text{puct}} \cdot \pi_\theta(a \mid s_k) \cdot \frac{\sqrt{N(s_k)}}{1 + N(s_k, a)} \]
ここで、
-
\(Q(s_k, a) = \frac{1}{N(s_k,a)} \sum_{\text{visits}} V(s_{k+1})\)は子状態の平均価値
-
\(\pi_\theta(a \mid s_k)\)は方策事前分布(ステップ\(a\))
の訪問回数- \(N(s_k)\)は状態\(s_k\)
-
\(N(s_k, a)\)はエッジ\((s_k, a)\)の訪問回数
-
\(c_{\text{puct}}\)は探索定数
MCTSに導かれる学習
MCTSは高品質な学習データの生成に使えます。
\[ \mathcal{L}_{\text{MCTS}}(\theta) = -\sum_{k} \sum_{a} \pi_{\text{MCTS}}(a \mid s_k) \log \pi_\theta(a \mid s_k) \]
ここで\(\pi_{\text{MCTS}}(a \mid s_k) \propto N(s_k, a)^{1/\tau}\)はMCTS方策です(温度\(\tau\)を持つ訪問回数分布)。
プロセス報酬モデル
Math-Shepherd:PRMの自動学習
Math-Shepherd (P. Wang et al. 2024)は、ステップ単位の人手アノテーションなしでPRMを学習する自動手法を提案します。重要な洞察は 結果に基づく推定 を使うことです。ステップ\(s_k\)は、\(s_k\)から正解に到達する完了が存在する場合に正しいとラベル付けされます。
部分解\((s_1, \ldots, s_k)\)について形式的には、
\[ \hat{r}_k = \mathbf{1}!\left[\exists, (s_{k+1}, \ldots, s_K) : \text{verify}(s_K, y^*) = 1\right] \]
実際には、\(M\)個の完了を\(s_k\)からサンプリングし、正しいものがあるかをチェックして推定します。
\[ \hat{r}_k \approx \mathbf{1}!\left[\sum_{m=1}^{M} \text{verify}(\text{complete}_m(s_k), y^*) > 0\right] \]
続いてPRMを二値交差エントロピーで学習します。
\[ \mathcal{L}_{\text{PRM}}(\phi) = -\sum_{k=1}^{K} \left[ \hat{r}_k \log r_\phi(s_k) + (1-\hat{r}_k) \log(1 - r_\phi(s_k)) \right] \]
Best-of-N選択のためのPRM
PRMの主要な用途は Best-of-N選択 です。\(N\)個の解候補を生成し、PRMスコアが最も高いものを選択します。
\[ y^* = \arg\max_{y \in \{y_1, \ldots, y_N\}} R_{\text{PRM}}(q, y) \]
これは多数決(ORMを使う)より効果的です。PRMは、同じ答えに到達していても、推論経路の品質が異なる解を区別できるからです。
結果報酬モデルと多数決
多数決(Self-Consistency)
テスト時計算量スケーリングの最も単純な形式は、多数決 (X. Wang, Wei, Schuurmans, Q. Le, et al. 2023)です。\(N\)個の解を生成し、最も多い答えを返します。
\[ y^* = \arg\max_{a} \sum_{i=1}^{N} \mathbf{1}[y_i = a] \]
各解が独立に正しい確率\(p > 0.5\)であると仮定すると、多数決が正しい確率は次のとおりです。
\[ P(\text{majority correct}) = \sum_{k=\lceil N/2 \rceil}^{N} \binom{N}{k} p^k (1-p)^{N-k} \xrightarrow{N \to \infty} 1 \]
ORMによる重み付き多数決
ORMは、確信度で投票に重みを付けることで多数決を改善できます。
\[ y^* = \arg\max_{a} \sum_{i=1}^{N} R_{\text{ORM}}(q, y_i) \cdot \mathbf{1}[y_i = a] \]
推論のためのセルフプレイ
セルフプレイ手法は、モデルに生成器と検証器の両方の役割を担わせることで学習データを生成します。
STaR:自己学習推論器
STaR (Zelikman et al. 2022)は、推論能力を反復的にブートストラップします。
-
問題集合に対する推論チェーンを生成する
-
正しい答えにつながるチェーンを残す(棄却サンプリング)
-
残したチェーンでファインチューニングする
-
改善されたモデルで繰り返す
重要な洞察は、モデルが正しい答えを合理化できることです。ゼロから問題を解けない場合でも、答えが与えられればもっともらしい推論チェーンを生成でき、それを学習データとして使えます。
セルフプレイRL
推論のセルフプレイRLでは、モデルが問題と解の両方を生成します。
\[ \mathcal{L}_{\text{self-play}}(\theta) = \mathbb{E}_{q \sim \pi_\theta^{\text{gen}}} \mathbb{E}_{y \sim \pi_\theta^{\text{solve}}(\cdot|q)} \left[ r(y, y^*) \right] \]
ここで\(\pi_\theta^{\text{gen}}\)は問題を生成し、\(\pi_\theta^{\text{solve}}\)はそれを解きます。生成器は、難しいが解ける問題を生成すると報酬を受けます。
検証可能な報酬からの強化学習(RLVR)
RLVR (Lambert et al. 2024)は、 正解による検証 を報酬信号として使うフレームワークです。正しさを自動チェックできるあらゆる領域に適用できます。
検証可能な領域
-
数学 :SymPy、Lean、Isabelleによる記号検証
-
コード :ユニットテストの実行
-
形式論理 :証明のチェック
-
事実に基づくQA :データベース検索
-
ゲーム :勝敗の結果
RLVRの目的関数
\[ \mathcal{L}_{\text{RLVR}}(\theta) = -\mathbb{E}_{(q, y^*) \sim \mathcal{D}} \mathbb{E}_{y \sim \pi_\theta(\cdot|q)} \left[ \text{verify}(y, y^*) \right] + \beta \mathbb{D}_{\mathrm{KL}}!\left[\pi_\theta ,|, \pi_{\text{ref}}\right] \]
RLHFに対するRLVRの主な利点は、 報酬モデルの誤りがないこと です。報酬は学習済みモデルではなく決定的な検証器で計算されるため、欠陥のある報酬モデルを相手にした報酬ハッキングがありません。唯一の失敗モードは、検証には通るが本当は正しくない解をモデルが見つける場合です(コード評価でテストケースの弱点を悪用するなど)。
Note
コードのRLVR:報酬ハッキングの課題
コード生成では、検証器はテストスイートです。RLVRで学習したモデルは、次のことを学習できます。
テスト出力をハードコードする :実際のアルゴリズムを実装せず、各テスト入力に対する期待出力を返す
弱いテストを悪用する :提供されたテストにはすべて合格する一方、エッジケースでは失敗する
対策には、大規模で多様なテストスイートの利用、敵対的なテストケースの追加、ハードコードを罰する実行ベースの報酬の利用(解が\(O(n \log n)\)時間で動くことをチェックするなど)があります。
Journey Learning
Journey Learning (Yiwei Qin et al. 2024)は、成功した最終解だけでなく、失敗した試行と修正を含む 完全な推論軌跡 で学習することを提案します。
動機
標準的な棄却サンプリングは失敗した試行を捨てます。しかし、失敗した試行には価値ある情報が含まれます。
-
どのアプローチがうまくいかないか(負例)
-
どのように誤りを認識し、回復するか(修正パターン)
-
問題空間の構造(探索データ)
Journey Learningの目的関数
バックトラックを含む可能性のある軌跡\(\tau = (s_0, a_0, s_1, a_1, \ldots, s_T)\)が与えられたとき:
\[ \mathcal{L}_{\text{journey}}(\theta) = -\sum_{t=0}^{T} w_t \log \pi_\theta(a_t \mid s_t) \]
ここで重み\(w_t\)は、次を重視するよう設計されます。
-
最終的な成功につながるステップ (\(w_t > 1\))
-
誤りの後の修正ステップ (\(w_t > 1\))
-
失敗した枝のステップ (\(w_t < 1\), but \(> 0\))
Quiet-STaR:すべてのトークンで推論する
Quiet-STaR (Zelikman et al. 2024)は推論パラダイムを すべてのトークン位置 へ拡張します。最終回答の前だけに推論チェーンを生成するのではなく、モデルは各トークン位置で「思考」を生成します。
定式化
各トークン位置\(t\)について、モデルは次のトークン\(z_t\)を予測する前に、隠れた思考\(x_{t+1}\)を生成します。
\[ P(x_{t+1} \mid x_{\leq t}) = \mathbb{E}_{z_t \sim \pi_\theta(\cdot | x_{\leq t})} \left[ \pi_\theta(x_{t+1} \mid x_{\leq t}, z_t) \right] \]
実際には、思考あり・なしの予測を混ぜることで近似します。
\[ P(x_{t+1} \mid x_{\leq t}) = \alpha \cdot \pi_\theta(x_{t+1} \mid x_{\leq t}, z_t) + (1-\alpha) \cdot \pi_\theta(x_{t+1} \mid x_{\leq t}) \]
REINFORCEによる学習
思考\(z_t\)は離散潜在変数なので、勾配はREINFORCEを使って推定します。
\[ \nabla_\theta \mathcal{L}_{\text{QS}} = \mathbb{E}_{z_t} \left[ \nabla_\theta \log \pi_\theta(z_t \mid x_{\leq t}) \cdot \left( \log P(x_{t+1} \mid x_{\leq t}, z_t) - b_t \right) \right] \]
ここで\(b_t\)はベースラインです(例えば、思考なしの予測\(\log \pi_\theta(x_{t+1} \mid x_{\leq t})\))。
Warning
Quiet-STaRの計算コスト
Quiet-STaRは推論コストを\(L_z + 1\)倍に増やします。ここで\(L_z\)は思考の長さで、すべてのトークン位置に適用されます。長さ\(T\)の系列で思考の長さが\(L_z = 8\)なら、計算量は\(9\times\)に増加します。そのため、十分なエンジニアリング最適化(思考に対する投機的デコーディング、キャッシュなど)なしでは、長い系列にQuiet-STaRを適用するのは現実的ではありません。
推論のスケーリング則
近年の研究 (Snell et al. 2024; Zhenyu Wu et al. 2024)は、テスト時計算量が推論性能に対して予測可能にスケールすることを確立し、古典的なスケーリング則 (Kaplan et al. 2020)を推論の領域へ拡張しました。
学習計算量とテスト時計算量のトレードオフ
推論モデルにおける根本的なスケーリングの問いは、 総計算予算\(C_{\text{total}} = C_{\text{train}} + N \cdot C_{\text{test}}\)(\(N\)はクエリ数)が固定されているとき、計算量をどう配分すべきか です。
\(\mathcal{A}(C_{\text{train}}, C_{\text{test}})\)を、\(C_{\text{train}}\)FLOPsで学習し、クエリごとに\(C_{\text{test}}\)の推論FLOPsを与えたモデルの精度とします。実証的には次のとおりです。
\[ \mathcal{A}(C_{\text{train}}, C_{\text{test}}) \approx 1 - \exp!\left(-a \cdot C_{\text{train}}^{\alpha} \cdot C_{\text{test}}^{\beta}\right) \]
定数\(a, \alpha, \beta > 0\)に対して成り立ちます。総予算\(C_{\text{total}}\)を固定したときの最適な配分は、学習と推論の間でFLOPあたりの限界リターンが等しくなるという条件を満たします。
\[ \frac{\partial \mathcal{A}}{\partial C_{\text{train}}} = \frac{1}{N} \cdot \frac{\partial \mathcal{A}}{\partial C_{\text{test}}} \]
直感的には、学習の1 FLOPはすべての\(N\)個のクエリに恩恵を与えますが、テスト時の1 FLOPは一つのクエリにしか効きません。最適点では、テスト時計算量のクエリあたりの限界価値は\(N\)倍になります(学習の効果が償却されるため)。これを式 [eq:reasoning_scaling_law]に適用すると、最適な学習計算量の比率が得られます。
\[ \frac{C_{\text{train}}^*}{C_{\text{total}}} = \frac{\alpha}{\alpha + \beta} \]
特定の予算構造\(C_{\text{total}} = C_{\text{train}} + N \cdot C_{\text{test}}\)では、この比率は\(N\)に依存しません。しかし実際には\(\alpha\)、\(\beta\)は問題依存です。大量配備(大きな\(N\))でも、ベースモデルのわずかな改善でさえ支配的になり、学習への投資が有利です。少量で高リスクのクエリ(小さな\(N\))では、テスト時計算量の方が費用対効果に優れます。
より長いチェーンとより良いベースモデルのどちらに投資するか
Important
推論チェーンの長さとモデル容量
最適な推論チェーン長\(L^*\)は、容量\(C\)のモデルが難易度\(D\)の問題に対して満たす条件は次のとおりです。 \[ L^* \propto \frac{D}{C^{\gamma}} \] ある\(\gamma > 0\)に対して成り立ちます。これは次を意味します。
難しい問題 では、モデルサイズにかかわらず長いチェーンが必要
大きなモデル では、同じ難易度の問題に対して短いチェーンで済む
限界効用の低下 :\(L^*\)を超えると、追加トークンに利点がなく、害になることもある(考えすぎ)
「考えすぎ」現象、つまり非常に長い推論チェーンを持つモデルが中程度のチェーンを持つモデルより悪い性能を示す現象は、実証的に観測されています。その原因は次のように考えられます。
-
長いチェーンでの誤りの蓄積(誤りの伝播)
-
主な解決経路からの注意の逸脱
-
誤った中間結論への過信
最適なトークン予算配分
トークン予算\(B\)が固定されたモデルについて、「思考」トークン\(T_{\text{think}}\)と「回答」トークン\(T_{\text{answer}}\)の配分は次を満たすべきです。
\[ T_{\text{think}}^* = \arg\max_{T} \mathcal{A}(T, B - T) \]
実証的には、最適な分割は問題に依存します。
-
単純な問題 : \(T_{\text{think}}^* / B \approx 0.3\)(30%を思考に使う)
-
難しい問題 : \(T_{\text{think}}^* / B \approx 0.8\)(80%を思考に使う)
-
非常に難しい問題 : \(T_{\text{think}}^* / B \approx 0.95\)(95%を思考に使い、回答は最小限)
これは 適応的な思考予算 を動機づけます。難しい問題により多くのトークンを割り当てます。難易度は、最初の解答試行におけるモデルの不確実性から推定できます。
推論モデルの比較
| 手法 | PRM | ORM | MCTS | 蒸留 | ツール | オープン |
|---|---|---|---|---|---|---|
| OpenAI o1/o3 | 不明 | – | \(\times\) | |||
| DeepSeek-R1 | \(\times\) | \(\times\) | \(\times\) | |||
| QwQ / Qwen3 | 一部 | \(\times\) | \(\times\) | |||
| AlphaProof | – | \(\times\) | ||||
| Math-Shepherd | \(\times\) | – | \(\times\) | |||
| STaR / Quiet-STaR | \(\times\) | \(\times\) | – | \(\times\) |
推論モデルの学習手法の比較。
まとめと未解決問題
推論モデルのRL分野は驚くほど急速に進展しました。いくつかの重要な教訓が得られています。
-
検証可能な報酬で十分 :正解による検証が可能な領域(数学、コード)では、プロセス報酬モデルなしでも、結果だけの報酬でRLが高度な推論戦略を発見できる。
-
テスト時計算量は新しい軸 :推論モデルは、難しい推論タスクでは学習計算量とおおむね代替可能な新しいスケーリングの次元、すなわち推論計算量を導入する。
-
蒸留は非常に効果的 :大規模推論モデルは、生成チェーンに対する教師ありファインチューニングによって、はるかに小さなモデルへ能力を移転できる。小規模モデルへの直接RL学習を上回ることも多い。
-
創発的なメタ認知 :推論タスクに対するRL学習は、明示的に学習されていなかった自己修正・検証の振る舞いを創発させる。
Note
推論のRLにおける未解決問題
いくつかの根本的な問いが未解決のままです。
汎化 :数学・コードで学習した推論能力は、他の領域(科学的推論、計画、社会的推論)へ移転するか。
忠実性 :生成された推論チェーンは最終回答の因果的な原因なのか、それとも事後的な合理化なのか。
最適な探索 :推論時の最適な探索戦略は何か。ビームサーチ、MCTS、それとも別の手法か。
報酬設計 :正解検証器がない領域で、推論のための信頼できる報酬信号をどう設計できるか。
考えすぎ :少なすぎず多すぎない、適切な思考量を割り当てる方法をモデルはどう学べるか。
構成的推論 :RLで学習した推論モデルは、複数の異なる推論スキルの組み合わせを必要とする問題を解けるか。
推論モデルの発展はパラダイムシフトを表しています。つまり、物事を知っている言語モデルから、物事を解明できる言語モデルへの移行です。本節で説明したRL手法はこの転換を推進する主要なエンジンであり、その継続的な発展は今後数年間のAI研究の中心的な焦点になるでしょう。