AI・機械学習
上級

検証器ガイド探索(ケンショウキガイドタンサク)

LLMの推論時に検証器(Verifier)モデルを用いて推論パスを評価・選別しながら解空間を探索する手法。報酬モデルやプロセス報酬モデルを検証器として活用し、Beam SearchやMonte Carlo Tree Searchと組み合わせることで高精度な推論を実現する。

0 回閲覧
0 いいね

検証器ガイド探索とは

検証器ガイド探索(Verifier-Guided Search)とは、大規模言語モデルの推論時に検証器モデル(Verifier)を活用して推論パスの品質を評価しながら解空間を体系的に探索する手法である。単純なBest-of-Nサンプリングでは候補生成が独立・並列であるのに対し、検証器ガイド探索では探索の各段階で検証器のフィードバックを受けて次のステップの方向性を制御する。

探索アルゴリズムの分類

検証器ガイド探索で使用される主要なアルゴリズムは以下の通りである。

アルゴリズム探索方式検証頻度計算コスト適用事例
Beam Search + Verifier幅優先、固定ビーム幅ステップごと中数学推論全般
Monte Carlo Tree Search木探索、UCB選択ノード展開時高AlphaProof、DeepSeek-R1
Iterative Refinement逐次改善、1パス改善後に毎回低〜中Self-Refine、LATS
Diverse Verifier Tree Search多様性重視木探索ステップごと高DVTS(OpenAI内部研究)

Beam Search + Verifierの仕組み

最もシンプルな検証器ガイド探索は、Beam Searchと検証器の組み合わせである。

  1. 初期プロンプトからビーム幅$B$本の推論パスを並列に開始する
  2. 各ステップで全パスの次のトークン(またはステップ)を生成する
  3. 検証器(PRM/ORM)で各パスにスコアを付与する
  4. 上位$B$本のパスのみを残し、残りを枝刈りする
  5. 終了条件(EOSトークン生成、最大長到達)まで繰り返す
  6. 最終的に最高スコアのパスを出力する

具体的なベンチマーク結果:

手法MATH (Pass@1)GSM8K (Pass@1)計算コスト(相対)
Greedy Decoding52.9%87.2%1x
Best-of-16 (ORM)67.2%92.1%16x
Best-of-16 (PRM)72.4%94.3%16x
Beam Search B=4 (PRM)74.8%95.1%8x
MCTS 400 rollouts78.5%96.2%50x

Beam Search + PRMはBest-of-N + PRMより少ない計算コストで高い精度を達成している点が特徴的である。

Monte Carlo Tree Search(MCTS)の統合

MCTSはAlphaGoで有名になった木探索アルゴリズムであり、LLMの推論ステップをゲームの「手」に見立てて探索する。

MCTSの4フェーズ:

  • Selection: UCB(Upper Confidence Bound)に基づいて探索するノードを選択する
  • Expansion: 選択したノードからLLMで新しい推論ステップを生成する
  • Evaluation: 検証器(PRM)で新ノードの価値を評価する
  • Backpropagation: 評価値をルートまで逆伝播してUCBを更新する

LLM推論へのMCTS適用事例:

システム対象タスクロールアウト数結果
AlphaProofIMO数学問題数千〜数万IMO 2024で銀メダル相当の4問正解
DeepSeek-R1一般数学推論64〜256MATH 97.3%(SOTA)
rStar-Math数学問題解法128MATH 90.0%(7Bモデルで達成)
LATSコード生成32HumanEval 94.4%

Iterative Refinement(逐次改善)

検証器のフィードバックを受けて回答を繰り返し改善するアプローチである。

Self-Refine:

  • LLM自身が生成した回答を自己批評し、改善版を生成する
  • 検証器は外部モデルまたはLLM自身が担当する
  • 2〜5回のイテレーションで収束する場合が多い

LATS(Language Agent Tree Search):

  • 環境からのフィードバック(コード実行結果、テスト結果)を検証シグナルとして使用する
  • 失敗した探索パスの情報を蓄積して次の試行に活用する
  • ReAct + MCTSのハイブリッドとして設計されている

検証器の設計パターン

検証器タイプ入力出力長所短所
ORM(結果報酬)最終回答スコア(0-1)訓練容易中間指導不可
PRM(過程報酬)各ステップステップスコア精密な枝刈り訓練データ高価
自己評価回答全体テキスト批評追加モデル不要バイアスあり
環境フィードバックコード/数式実行結果客観的適用範囲限定
アンサンブル複数モデル出力合意スコア頑健計算コスト大

コスト効率の最適化

検証器ガイド探索は計算コストが高いため、以下の最適化が重要である:

  • 適応的探索深度: 検証器の初期スコアが高い場合は浅い探索で打ち切る
  • Progressive Widening: 探索幅を段階的に広げ、有望なパスにのみ計算資源を集中する
  • キャッシュ再利用: 共通の推論プレフィックスのKVキャッシュを共有する
  • 非同期並列化: 候補生成と検証を非同期パイプラインで並列実行する
  • 軽量検証器: 本番検証器の蒸留版(1.5B〜7Bパラメータ)を高速フィルタとして使用する

よくある質問(FAQ)

Q1: 検証器ガイド探索とBest-of-Nの使い分けはどうすべきか? A: 計算予算が限られる場合や実装の簡潔さを重視する場合はBest-of-Nが適している。精度を最大化したい場合や探索空間が広い問題(数学証明、コード生成)では検証器ガイド探索が優れる。Beam Search + PRMはBest-of-N + PRMの半分の計算コストで同等以上の精度を達成できる。

Q2: 検証器の品質が低い場合でも効果はあるか? A: 検証器の精度が50%程度(ランダムに近い)でも、多数回の探索を通じて統計的に正しいパスが選択される確率は向上する。ただし、検証器の精度が70%を下回ると費用対効果が急激に悪化するため、最低70%の精度が実用上の下限とされる。

Q3: オープンソースで検証器ガイド探索を実装するには? A: SGLangフレームワークがTree Search機能を内蔵しており、カスタム検証器との統合が容易である。検証器にはMath-Shepherd(Mistral-7Bベース)やSkywork-o1-PRM(Qwen2.5-1.5Bベース)がオープンソースで利用可能。vLLMでも独自のサンプリングパイプラインを構築できる。

まとめ

  • 検証器ガイド探索は推論パスを評価しながら解空間を体系的に探索する手法である
  • Beam Search + PRMが計算効率と精度のバランスに最も優れる
  • MCTSはAlphaProofやDeepSeek-R1で最高精度を達成しているが計算コストが非常に高い
  • Iterative Refinementは実装が簡単でコード生成タスクに特に有効である
  • 探索の効率化には適応的探索深度とキャッシュ再利用が鍵となる