LLM事実検証(エルエルエムジジツケンショウ)
LLM事実検証(Fact Verification)とは、大規模言語モデルが生成した応答内容を外部の信頼できる情報源と照合し、事実の正確性を自動的に評価・修正する技術である。FActScore、SAFE、Self-Consistency等の手法があり、生成後のハルシネーション検出とフィルタリングに用いられる。
LLM事実検証とは
LLM事実検証は、LLMが生成したテキストに含まれる事実的主張を個別に抽出し、外部の情報源と照合して正確性を判定する技術である。「事後グラウンディング」の代表的手法であり、生成された回答のハルシネーション率を定量的に測定・削減する。
概要と主要手法
事実検証のパイプラインは一般に以下の3段階で構成される:
- 主張抽出(Claim Decomposition): 生成文を原子的な事実主張に分解
- 証拠検索(Evidence Retrieval): 各主張に対する裏付け情報を外部ソースから検索
- 真偽判定(Verdict Assignment): 主張と証拠の整合性を判定(Supported / Not Supported / Irrelevant)
FActScore(Min et al., 2023)
FActScore(Fine-grained Atomic Evaluation of Factual Precision in Long Form Text Generation)は、ワシントン大学のMin et al.が提案した事実精度評価フレームワーク。以下の手順で評価する:
- 生成文を原子的事実(atomic fact)に分解。例: 「東京は日本の首都で、人口1400万人の都市」→ 「東京は日本の首都」「東京の人口は1400万人」
- 各事実をWikipedia(または指定ソース)で検索・照合
- 裏付けられた事実の割合をスコア化(0〜1)
人物伝記タスクでの各モデルのFActScore(2024年測定):
| モデル | FActScore | 原子的事実数/応答 | 検証不能率 |
|---|---|---|---|
| GPT-4 | 0.73 | 42.3 | 8.2% |
| ChatGPT (GPT-3.5) | 0.58 | 38.7 | 12.5% |
| Llama-2-70B | 0.52 | 35.1 | 15.3% |
| Llama-2-13B | 0.41 | 31.8 | 19.7% |
| InstructGPT | 0.63 | 36.5 | 10.1% |
SAFE(Wei et al., 2024)
SAFE(Search-Augmented Factuality Evaluator)はGoogle DeepMindが開発した自動事実性評価ツール。LLM自体を使って主張の分解と検索ベースの検証を行う。
- 主張分解: GPT-4/Claude等を使い、テキストを独立した事実主張に分解
- Google検索: 各主張についてGoogle検索を実行し、上位結果を証拠として取得
- LLM判定: 証拠と主張の整合性をLLMで判定。人間評価との一致率72%(Cohen's κ = 0.68)
- コスト: 1回答あたり約$0.05〜0.10(GPT-4使用時)
Self-Consistency(Wang et al., 2023)
同一の質問に対して複数回(通常5〜20回)サンプリングし、回答間の一致度で信頼性を判定する手法。
- 多数決方式: 最も頻出する回答を採用。数学的推論で特に有効(GSM8K精度: 74.4% → 85.6%)
- エントロピー方式: 回答分布のエントロピーが低い(一致度が高い)ほど信頼性が高いと判定
- Universal Self-Consistency(USC): 複数回答をLLM自身に要約・選択させる。自由形式回答にも適用可能
事実検証パイプラインの実装
ステップ1: 主張抽出
入力: 「Apple M4チップは2024年に発表され、3nmプロセスで製造され、10コアCPUと10コアGPUを搭載している」
抽出結果:
1. Apple M4チップは2024年に発表された
2. Apple M4チップは3nmプロセスで製造されている
3. Apple M4チップは10コアCPUを搭載している
4. Apple M4チップは10コアGPUを搭載している
ステップ2: 証拠検索
各主張についてGoogle検索/Wikipedia APIを使用し、上位3〜5件のスニペットを証拠として取得。
ステップ3: 真偽判定
NLIモデルまたはLLMで主張と証拠の関係を判定:
- Supported(裏付けあり): 証拠が主張を含意する
- Not Supported(裏付けなし): 証拠が主張と矛盾するか、関連する証拠が見つからない
- Partially Supported(部分的): 一部は裏付けられるが、詳細に相違がある
応用と商用ツール
- Vectara Hallucination Evaluation Model(HHEM): オープンソースのハルシネーション検出モデル。HuggingFaceで公開、AUC 0.88
- Galileo AI: LLMのハルシネーション率をリアルタイム監視。ダッシュボードでドリフト検出
- Guardrails AI: バリデーションフレームワーク。事実検証ガードを組み込みで提供
- Ragas: RAGパイプラインの事実性評価フレームワーク。Faithfulness、Answer Relevancy等のメトリクス提供
- TruLens: LLMアプリケーションの評価フレームワーク。Groundedness、Context Relevance等を自動計測
ベンチマーク一覧
| ベンチマーク | 提案年 | 主な測定対象 | データセット規模 |
|---|---|---|---|
| FActScore | 2023 | 原子的事実の精度 | 500人物伝記 |
| TruthfulQA | 2022 | 真実性(迷信・陰謀論等) | 817問 |
| HaluEval | 2023 | ハルシネーション検出能力 | 30,000サンプル |
| FELM | 2023 | 5カテゴリの事実性 | 847サンプル |
| FactCheckBench | 2024 | 事実チェック総合 | 1,000サンプル |
よくある質問(FAQ)
Q1: 事実検証はリアルタイムで実行できますか? A: 軽量な手法(Self-Consistency)は500ms以内で完了するが、検索ベースの手法(FActScore、SAFE)は主張数×検索時間がかかり、10〜30秒程度必要。ストリーミング出力と並行で非同期実行し、結果をUIに後から反映する実装が一般的。
Q2: 事実検証のコストはどの程度ですか? A: SAFEベースの検証でGPT-4使用時は1回答あたり$0.05〜0.10。オープンソースモデル(Llama 3.1 70B等)を使えば推論コストは1/10以下になるが、精度は5〜10%低下する。
Q3: 事実検証で検出できないハルシネーションはありますか? A: 存在する。検索エンジンでも見つからないニッチな専門知識、最新の未公開情報、暗黙知や文脈依存の事実は検証困難。また、事実自体は正しくても文脈的に不適切な情報(的外れな回答)は事実検証では検出しにくい。
まとめ
- LLM事実検証は主張抽出→証拠検索→真偽判定の3段パイプラインで構成
- FActScoreはGPT-4で0.73の事実精度を記録、改善の余地がある
- SAFEはGoogle検索ベースの自動検証で人間評価との一致率72%
- Self-Consistencyは追加コスト最小で数学的推論の精度を11%向上
- Vectara HHEM、Ragas等のオープンソースツールで実装が容易化