AI・機械学習
上級

Universal Self-Consistency(USCoT)(ユニバーサルセルフコンシステンシー)

Universal Self-Consistency(USCoT)とは、Self-Consistency手法を自由形式(open-ended)タスクに拡張する手法であり、Chen et al.(2023)の "Universal Self-Consistency for Large Language Model Generation" で提案された。従来のSelf-Consistencyは多肢選択や数値回答など離散的な回答空間を前提としていたが、USCoTはLLM自身に複数の候補回答の一貫性を判定させることで、要約・翻訳・コード生成などの自由形式タスクにもSelf-Consistencyを適用可能にした。

0 回閲覧
0 いいね

Universal Self-Consistency(USCoT)の背景

従来のSelf-Consistency(Wang et al., 2022)は、最終回答の完全一致に基づく多数決を集約手法として採用していた。この方式は数値回答(「42」「3.14」等)や多肢選択(「A」「B」「C」「D」等)では極めて有効だが、自由形式のテキスト生成タスクでは根本的な問題が生じる。

例えば、要約タスクで3つの推論パスが以下の回答を生成したとする。

  • パスA: 「この論文はLLMの推論精度を向上させる新手法を提案している」
  • パスB: 「大規模言語モデルの推論能力を改善するための新しいアプローチが述べられている」
  • パスC: 「本稿ではLLMの推論性能向上のための革新的手法を紹介する」

3つの回答は意味的にほぼ同一だが、文字列としては完全に異なる。従来の多数決ではこれら3票がすべて別回答として扱われ、集約が機能しない。Universal Self-Consistency(USCoT)はこの問題を解決するために、LLM自身を一貫性判定器(consistency judge)として活用する。

USCoTのアルゴリズム

USCoTの核心は、多数決の代わりにLLM自身に「複数の候補回答の中で最も一貫性のある回答はどれか」を判定させるメタ推論ステップを導入する点にある。

アルゴリズム詳細

入力: 質問Q、few-shot CoTプロンプトP、サンプル数n、温度T
1. サンプリング: for i = 1 to n:
     (reasoning_i, answer_i) = LLM(P + Q, temperature=T)
2. 一貫性判定プロンプト構築:
     judge_prompt = "以下のn個の回答を比較し、最も一貫性のある
     (多くの回答と整合する)回答を選択してください。
     回答1: {answer_1}
     回答2: {answer_2}
     ...
     回答n: {answer_n}
     最も一貫性のある回答の番号: "
3. 一貫性判定: selected = LLM(judge_prompt, temperature=0)
4. return answer_{selected}

従来のSelf-Consistencyとの比較

特性標準Self-ConsistencyUniversal Self-Consistency
集約方式完全一致の多数決LLMによる一貫性判定
対象タスク離散的回答(数値・選択肢)任意のタスク(自由形式含む)
意味的等価性考慮しないLLMが判断
追加LLM呼び出し不要1回(判定ステップ)
判定の信頼性決定的(完全一致)確率的(LLMの判断に依存)
コストn回の推論n+1回の推論
実装複雑性低(文字列比較)中(判定プロンプト設計)

自由形式タスクへの適用

USCoTは以下の自由形式タスクで有効性が実証されている。

コード生成

コード生成タスクでは、機能的に等価だが構文的に異なるコードが生成される。USCoTはLLMに「どのコードが最も多くの候補と同じ機能を実現しているか」を判定させる。

ベンチマークタスク標準CoTSelf-Consistency(多数決)USCoT改善幅
HumanEvalコード生成67.0%71.3%(構文一致)76.8%+9.8%
MBPPコード生成52.1%55.4%(構文一致)61.2%+9.1%
CodeContests競プロ8.2%9.1%(出力一致)12.4%+4.2%

コード生成では、テストケース実行による出力一致判定(execution-based consistency)も可能であり、USCoTとの併用が最も高い精度を達成する。

要約タスク

要約タスクでは複数の要約候補の中から、元テキストの主要情報を最も網羅的かつ正確に反映している要約を選択する。

データセット標準CoT(ROUGE-L)USCoT(ROUGE-L)改善幅
CNN/DailyMail34.237.8+3.6
XSum28.131.5+3.4
SAMSum41.344.7+3.4

翻訳タスク

翻訳では、複数の翻訳候補の中から最も自然かつ正確な翻訳をLLMが選択する。翻訳品質の評価をLLM自身が行うため、BLEUスコアよりも人間評価との相関が高い結果が得られる。

数学的推論(拡張)

USCoTは従来のSelf-Consistencyが得意とする数学タスクでも適用可能であり、特に途中式を含む回答形式(「答えは42です。なぜなら…」)では、完全一致の多数決よりもUSCoTの方が柔軟に同一回答を認識できる。

一貫性判定プロンプトの設計

USCoTの性能は一貫性判定プロンプトの設計に大きく依存する。以下は効果的な判定プロンプトのパターンである。

パターン1: 直接選択型

以下の{n}個の回答候補を比較してください。
他の回答と最も内容が一致している回答の番号を選んでください。

回答1: {answer_1}
回答2: {answer_2}
...

最も一貫性のある回答番号:

パターン2: ペアワイズ比較型

候補回答をペアで比較し、各ペアの類似度をスコア付けした後、最も高スコアの回答を選択する。n個の候補に対してn(n-1)/2回の比較が必要だが、より精密な判定が可能。

パターン3: グループ化型

まずLLMに候補回答を意味的グループに分類させ、最大グループの代表回答を選択する。従来の多数決のセマンティック版とも言える。

判定プロンプトの性能比較

パターンHumanEval精度判定の安定性追加コスト
直接選択型76.8%中1回呼び出し
ペアワイズ比較型78.2%高n(n-1)/2回
グループ化型77.5%中〜高1〜2回呼び出し

Chen et al.(2023)の主要知見

Chen et al.の論文における主要な実験結果と知見を整理する。

  1. タスク汎用性: USCoTは12種類の異なるタスク(算術推論、常識推論、コード生成、要約、翻訳、質問応答等)で一貫した改善を示した。
  2. モデル汎用性: GPT-3.5-turbo、GPT-4、PaLM-2、LLaMA-2の4モデルファミリーで効果が確認された。
  3. 標準SCとの互換性: 離散的回答タスクでは、USCoTは標準Self-Consistencyとほぼ同等の性能を示し、自由形式タスクでのみ有意な優位性がある。つまり、USCoTは標準SCの上位互換として使用可能。
  4. 判定モデルのスケーリング: 一貫性判定に使用するモデルが大きいほど判定精度が向上する。サンプリングを小型モデルで行い、判定を大型モデルで行うハイブリッド戦略も有効。

実装上の考慮事項

コンテキスト長の制約

n個の候補回答をすべて一貫性判定プロンプトに含める必要があるため、コンテキスト長の制約を受ける。長文生成タスクではnを小さくするか、回答の要約を判定入力とする工夫が必要である。

判定の再現性

一貫性判定自体がLLMの確率的出力に依存するため、判定結果が実行ごとに変動する可能性がある。判定ステップでは温度0(greedy decoding)を使用して再現性を確保するのが標準的だが、それでも100%の再現性は保証されない。

コスト構造

USCoTの総コストはn回のサンプリング + 1回の一貫性判定 = n+1回のLLM呼び出しとなる。一貫性判定プロンプトはn個の回答を含むため入力トークン数が大きく、プロンプトキャッシュの恩恵を受けにくい点に注意が必要である。

よくある質問

Q1: USCoTと標準Self-Consistencyのどちらを使うべきですか?

回答が数値・選択肢など離散的な場合は標準Self-Consistencyで十分であり、実装もシンプルである。回答が自由形式テキスト(要約、翻訳、説明、コード)の場合はUSCoTを使用する。迷った場合はUSCoTを選択して問題ない(離散的回答タスクでも同等の性能を発揮するため)。

Q2: 一貫性判定にサンプリングと異なるモデルを使用できますか?

はい。サンプリングにコスト効率の良い小型モデル(GPT-4o-miniやClaude 3.5 Haiku)を使用し、一貫性判定により高性能な大型モデル(GPT-4oやClaude 3.5 Sonnet)を使用するハイブリッド戦略は有効である。Chen et al.の実験でも、判定モデルの品質がUSCoT全体の性能に大きく影響することが示されている。

Q3: USCoTはストリーミング出力と互換性がありますか?

USCoTはn個の候補回答がすべて生成完了した後に一貫性判定を行うため、リアルタイムストリーミング出力とは直接的に互換性がない。ただし、サンプリングを並列実行し、全候補の生成完了後に最終回答をストリーミング出力するアーキテクチャは実現可能である。エンドユーザーには「思考中…」のインジケータを表示し、最終回答のみをストリーミングする設計が一般的である。

Q4: コンテキスト長が不足する場合の回避策はありますか?

(1)候補回答の要約を一貫性判定の入力とする(長文タスク向け)、(2)nを小さくする(5〜8程度に制限)、(3)ペアワイズ比較を採用し、各比較で2つの回答のみを入力する(コンテキスト効率は高いが比較回数が増加)。Anthropicのclaude-3.5-sonnetは200Kトークンのコンテキストを持つため、多くの場合n=20程度のUSCoTが問題なく実行可能。