推論時検証(Test-Time Verification)(スイロンジケンショウ)
LLMが生成した回答や中間推論ステップを推論時にリアルタイムで評価・検証する技術。Process Reward Model(PRM)やOutcome Reward Model(ORM)を用いてステップごとの正確性を判定し、誤った推論パスを早期に棄却する。
推論時検証とは
推論時検証(Test-Time Verification)とは、LLMが推論の各段階で生成した内容を検証器(Verifier)によってリアルタイムに評価し、正確性を担保する技術である。テスト時計算において、計算資源を効率的に使うための核心技術であり、誤った推論パスの早期棄却や、複数候補からの最良解選択に不可欠である。
検証器の種類と比較
| 検証器タイプ | 評価対象 | 粒度 | 代表例 | 精度 |
|---|---|---|---|---|
| Outcome Reward Model (ORM) | 最終回答のみ | 粗い | OpenAI ORM | 中〜高 |
| Process Reward Model (PRM) | 各推論ステップ | 細かい | Math-Shepherd, PRM800K | 高 |
| Self-Verification | モデル自身の再評価 | 可変 | Constitutional AI | 中 |
| Formal Verifier | 形式的証明チェック | 厳密 | Lean 4, Isabelle | 最高(限定分野) |
| Ensemble Voting | 複数モデルの多数決 | 粗い | Self-Consistency | 中〜高 |
Process Reward Model(PRM)の詳細
PRMはテスト時検証の中核技術であり、推論の各ステップに対してスカラー報酬を割り当てる。
- 学習データ: 人間のアノテーターが数学の解法の各ステップを「正しい/誤り/不明」と判定したデータセット。OpenAI PRM800Kは75,000問×平均10ステップ = 約800,000ステップのアノテーションを含む
- 学習方法: ベースモデル(LLaMA 7B〜70Bクラス)をステップレベルのバイナリ分類としてファインチューニング。入力は「問題文+ここまでの推論ステップ」、出力は各ステップの正確性スコア(0.0〜1.0)
- 推論時の利用: ビームサーチやMCTSでの枝刈り判断にPRMスコアを使用。スコアが閾値(通常0.3〜0.5)未満のステップは棄却し、高スコアのパスに計算資源を集中
- ORM対比の優位性: PRM800Kの実験では、PRMはORMと比較して数学タスクで5〜10%の精度向上を達成。特に長い推論チェーン(10ステップ以上)で差が顕著
検証戦略のパターン
テスト時検証を推論パイプラインに組み込む代表的なパターンを示す。
- ベストオブN + ORM: N個の完全な回答を生成し、ORMで最高スコアのものを選択。実装が最も単純だが、全候補を最後まで生成するため計算効率は低い
- ビームサーチ + PRM: ビーム幅Bで推論を進め、各ステップでPRMスコアの上位B個のパスのみを残す。計算効率が高く、8〜16ビームで十分な精度を達成
- MCTS + PRM: モンテカルロ木探索でPRMをロールアウト評価関数として使用。最も精度が高いが計算コストも大きい。rStar-Math(Microsoft, 2025)が代表例
- 自己一致性(Self-Consistency): 温度を上げてN個の回答を生成し、最多の最終回答を採用。検証モデル不要だが、回答形式が自由な問題には適用困難
- 段階的エスカレーション: まず1回で回答し、自己検証で低信頼なら追加のサンプリングと検証を実行。平均レイテンシを最小化
自己検証の技術
外部の検証モデルを使わず、推論モデル自身が回答を検証する手法も発展している。
- 自己批評(Self-Critique): 生成した回答に対して「この回答に誤りはあるか?」と自問し、修正する。Constitutional AIの原理を推論検証に応用
- 反証試行(Devil's Advocate): 回答が間違っていると仮定して反論を生成し、反論に耐えられるか検証。複数ラウンドの往復が可能
- 計算再実行: 数学の計算を別のアプローチで再計算し、結果が一致するか確認。形式的検証に近いが、LLMの能力範囲内で実行
- コード実行検証: 数値計算や論理問題の場合、Pythonコードを生成して実行し、回答と照合。OpenAI o1のcode interpreter連携が代表例
主要なPRMデータセットとモデル
| 名称 | 提供元 | ステップ数 | 対象分野 | ライセンス |
|---|---|---|---|---|
| PRM800K | OpenAI | 800,000 | 数学(MATH) | 研究用公開 |
| Math-Shepherd | Mistral AI | 440,000 | 数学全般 | Apache 2.0 |
| Skywork-PRM | Kunlun | 150,000 | 数学+科学 | Apache 2.0 |
| AutoPRM | 自動生成 | 可変 | 汎用 | 手法のみ公開 |
2025〜2026年の最新動向
- 汎用PRM(2025年): 数学以外のタスク(コード生成・論理推論・科学問題)に対応するPRMの研究が活発化。マルチタスクPRMが単一タスクPRMの90%の精度で汎用的に利用可能に
- 形式検証との統合(2025年): LLMの推論ステップをLean 4の形式言語に変換し、定理証明器で厳密に検証するパイプライン。IMO(国際数学オリンピック)レベルの問題で人間メダリスト級の成績
- 軽量検証器(2026年): 1Bパラメータ以下のPRMが7B以上の大規模PRMの85〜90%の精度を達成。エッジデバイスでの推論時検証が実用段階に
- マルチモーダル検証(2026年): 図・表・グラフを含む推論ステップの検証に対応。Gemini 2.0 Pro VisionのPRM機能が科学実験レポートの推論を自動検証
よくある質問(FAQ)
Q1: PRMとORMのどちらを使うべきか? A: 推論ステップが長い問題(数学・コード・複雑な論理推論)ではPRMが優位で、5〜10%の精度向上を見込める。短い推論(1〜3ステップ)の問題ではORMで十分であり、PRMの追加コスト(学習+推論時評価)に見合わない。
Q2: PRMの学習にはどの程度のアノテーションコストがかかるか? A: OpenAI PRM800Kは約800,000ステップのアノテーションで、推定コストは数千万〜数億円規模。ただし、AutoPRM手法を使えば、大規模モデルによる自動アノテーション+フィルタリングで人間アノテーションの80%程度の品質を1/100のコストで達成可能。
Q3: 自己検証はどの程度信頼できるか? A: モデルのサイズと質に依存する。GPT-4クラスのモデルでは自己検証の精度は70〜80%程度で、外部PRMの90%以上と比較して劣る。ただし、追加モデルの推論コストが不要なため、コスト対効果では自己検証が優位なケースもある。
まとめ
- 推論時検証はテスト時計算の効率化に不可欠な技術
- PRMはステップごとの評価でORMより5〜10%高精度だが、学習コストが大きい
- ベストオブN、ビームサーチ+PRM、MCTS+PRMなど複数の統合パターンが存在
- 自己検証は追加コストなしで70〜80%の精度を達成
- 2026年現在、軽量PRM(1B以下)やマルチモーダル検証が実用段階に到達