P(True)不確実性推定(ピートゥルーフカクジツセイスイテイ)
LLMが自身の回答に「これは正しいか?」と自己評価させることで不確実性を推定する手法。Kadavath et al.(2022)が提案し、P(IK)とも呼ばれる。
P(True)不確実性推定とは
P(True)不確実性推定(P(True) Uncertainty Estimation)は、大規模言語モデルに自身が生成した回答を評価させることで、その回答の正確性確率を推定する手法である。
Anthropicの研究者Kadavathらが2022年の論文「Language Models (Mostly) Know What They Know」で提案し、LLMが一定の自己認識能力(self-knowledge)を持つことを実証した。P(IK)(Probability of I Know)とも呼ばれる。
基本的な仕組み
Step 1: 回答生成
Prompt: 「東京の人口は?」
Model: 「約1,400万人(特別区部)です」
Step 2: 自己評価
Prompt: 「問題: 東京の人口は?
回答: 約1,400万人(特別区部)
この回答は正しいですか? True/False」
Model: P(True) = 0.87
Step 2で得られたP(True)値が、その回答の推定信頼度として使用される。
論文の主要知見
Kadavath et al. (2022)の研究では以下が明らかになった:
- 自己評価の有効性:LLMのP(True)スコアは、実際の正答率と有意な相関を示す
- スケールとの関係:大きいモデルほど自己評価の精度が高い傾向がある
- 多肢選択問題での有効性:複数の選択肢を提示した場合、P(True)は特に有効
- Few-shot例の影響:コンテキスト内の例が自己評価の精度に影響する
P(True)の実装バリエーション
バリアント1: 直接評価
質問: {question}
回答: {answer}
この回答は正しいですか? [True/False]
バリアント2: 確率表現
質問: {question}
回答: {answer}
この回答の正確性を0.0-1.0で評価してください:
バリアント3: 比較評価(多肢選択)
質問: {question}
A: {answer1}
B: {answer2}
C: {answer3}
最も正確な回答を選んでください:
比較評価は単独評価より精度が高い傾向がある。
Self-Consistency との組み合わせ
P(True)をSelf-Consistency(複数回サンプリング)と組み合わせることで精度が向上する:
- 同じ質問を10回サンプリング
- 各回答のP(True)を計算
- 最高P(True)スコアの回答を採用、または平均P(True)が低い場合は棄権
限界と注意点
Sycophancy問題:LLMは自身の回答を褒める傾向(sycophancy)があり、P(True)が過大評価される可能性がある。特にRLHFで訓練されたモデルで顕著。
幻覚との相関:完全な幻覚(hallucination)状態でも、P(True)が高く評価されるケースが存在する。これはP(True)が完璧な解決策ではないことを示す。
計算コスト:P(True)推定には追加のLLM推論コストが発生する。本番システムでの使用はコストと精度のトレードオフを考慮する必要がある。
実用的な応用
- RAGシステムの信頼性向上:検索結果に基づく回答のP(True)評価で誤情報フィルタリング
- Selective Predictionの閾値設定:P(True) < 0.6の場合に棄権する戦略
- Human-in-the-Loop:P(True)が低い回答を人間レビューキューに送る
- アクティブラーニング:P(True)が低い領域を追加訓練データ収集の対象に