はじめに
ChatGPTやClaudeなどの生成AIが「もっともらしい嘘」をつく現象——ハルシネーション(Hallucination) は、AI活用における最大の課題の一つです。本記事では、なぜLLM(大規模言語モデル)がハルシネーションを起こすのか、その技術的メカニズムを解説し、実務で活用できる対策手法を紹介します。
読了後には、ハルシネーションの根本原因を理解し、適切な対策を選択できるようになります。
想定読者: 生成AIを業務で活用している中級者〜上級者。LLMの基本的な仕組みを理解している方。
目次
対象読者
- 生成AIをプロダクトに組み込もうとしているエンジニア
- LLMの出力精度に課題を感じているMLエンジニア
- ハルシネーションの原因を技術的に理解したい方
- RAGなどの対策手法を検討している方
- AIの信頼性・安全性に関心のある方
この記事でわかること
- ハルシネーションの正確な定義と種類
- Transformerアーキテクチャがハルシネーションを引き起こすメカニズム
- 「次トークン予測」という学習目標が持つ本質的な限界
- 訓練データとの関係(Unknownデータの学習とハルシネーションの相関)
- RAG、RLHF、Chain-of-Thought等の対策手法の原理と効果
- 実務での対策選定の指針
本編
全体像
ハルシネーションは単なる「バグ」ではなく、LLMのアーキテクチャに起因する構造的特性です。以下の図は、ハルシネーションが発生する主要な要因と対策の関係を示しています。
基本概念
📌 ハルシネーションとは
ハルシネーションとは、AIモデルが事実と異なる、または根拠のない情報を、あたかも正しいかのように生成する現象です。
OpenAI は、ハルシネーションを「もっともらしいが誤った文(plausible but false statements)」と説明し、特に「不確実な状況で事実を作りがちになる傾向」として議論しています。一方で、研究者の間では「confabulation(作話)」という用語を好む向きもあります。これは、AIが意図的に嘘をついているわけではなく、「創造的にギャップを埋めている」という解釈に基づいています。
📌 なぜ「ハルシネーション」と呼ばれるのか
人間の心理学における幻覚(hallucination)は、実際には存在しない知覚を経験する現象です。AIの場合は知覚ではなく「誤った応答の生成(confabulation)」ですが、「存在しないものを生み出す」という点で比喩的に同じ用語が使われています。
ハルシネーションが発生する技術的メカニズム
🔧 1. 次トークン予測という学習目標の本質的限界
LLMの学習目標は「与えられた文脈から、次に来る可能性が最も高いトークン(単語の断片)を予測する」ことです。
入力: "日本の首都は"
予測: "東京" (確率 95%)
"京都" (確率 3%)
"大阪" (確率 1%)
...
この学習目標には根本的な問題があります。モデルは「正しい答え」を出すのではなく「もっともらしい続き」を出すよう訓練されているのです。
OpenAIの2025年の研究論文では、この問題を次のように説明しています。「現在の評価方法は正答率のみを測定し、不確実性を表明することに報酬を与えない。これは、分からない問題でも推測したほうがスコアが上がる試験のようなもの」だと指摘されています。
🔧 2. Softmax関数が生み出す「人工的確実性」
Transformerのアテンション機構では、Softmax関数が確率分布を計算します。この関数は、どれほど曖昧な状況でも必ず何らかの確定的な分布を出力します。
2025年のCredal Transformerの研究では、このSoftmax関数が「Artificial Certainty(人工的確実性)」を生み出すと指摘されています。曖昧なアテンションスコアを単一の確率分布に「押しつぶす」ことで、モデルの不確実性に関する重要な情報が失われるというのです。
🔧 3. 自己回帰生成によるエラーの連鎖
LLMはトークンを一つずつ順番に生成します。一度生成したトークンは修正できず、後続のトークンはすべて先行するトークンに依存します。
生成ステップ:
1. "アインシュタインは" → ✓
2. "アインシュタインは オリンピックで" → ❌ (ここで誤り)
3. "アインシュタインは オリンピックで 金メダルを" → ❌ (誤りが継続)
4. "アインシュタインは オリンピックで 金メダルを 獲得した" → ❌ (確信的に誤り)
初期段階での小さな誤りが、生成が進むにつれて確信的な誤りへと増幅されます。
🔧 4. 訓練データの影響——「Unknown」データの学習がハルシネーションを引き起こす
Gekhmanらの2024年の研究は、訓練データとハルシネーションの関係を明らかにしました。
訓練データは以下のように分類できます。
| カテゴリ | 定義 | ハルシネーションへの影響 |
|---|---|---|
| HighlyKnown | モデルが既に高精度で回答できる知識 | 低リスク |
| MaybeKnown | 部分的に正答できる知識 | 中リスク(最も性能向上に寄与) |
| Unknown | モデルが正答できない知識 | 高リスク |
この研究の重要な発見は、Unknownデータを学習し始めるとハルシネーションが増加するという点です。モデルは「知らないこと」を学習する過程で、それを「知っているかのように」出力するパターンを獲得してしまいます。
🔧 5. アテンション機構の限界
Transformerの自己アテンション機構にも限界があります。
固定長のコンテキストウィンドウにより、長い入力の初期部分が「忘れられる」ことがあります。また、アテンションはトークン間の関連性を計算しますが、「世界」そのものではなく「トークン同士」の関係性しか捉えられません。
2024年のDifferential Transformerの研究では、標準的なTransformerがアテンション行列のノイズにより無関係なコンテキストに過度に注目してしまう問題が指摘されています。
ハルシネーションの分類
| 種類 | 説明 | 例 |
|---|---|---|
| 事実誤認 | 既存の情報を誤って提示 | 「オーストラリアの首都はシドニー」(正解:キャンベラ) |
| 捏造 | 存在しない情報の創作 | 架空の論文や引用の生成 |
| 文脈矛盾 | 入力や検索結果との不整合 | RAGで取得した情報と異なる回答 |
| 自己矛盾 | 同一出力内での矛盾 | 前半と後半で異なる主張 |
Self-contradictory Hallucinations 論文では、ChatGPT が生成する文のうち約 17.7% に自己矛盾が含まれると報告されています(評価設定によって値は変動)。
対策手法
✅ 1. RAG(Retrieval-Augmented Generation)
外部知識ベースから関連情報を検索し、生成時のコンテキストとして提供する手法です。
効果: 複数の研究によると、RAG、RLHF、ガードレールの組み合わせはハルシネーション削減に効果的とされていますが、完全な解決には至っていません。例えばStanfordの2024年研究では、RAGツールでも17-33%のハルシネーション率が残存すると報告されています。
仕組み:
RAGには段階があり、単純な検索結果の連結から、クエリ拡張やリランキングを含む高度なRAG、さらにモジュール型のRAGへと発展しています。
注意点: RAGでもハルシネーションは完全には防げません。検索結果と異なる回答を生成したり、検索結果を誤解釈したりするケースがあります。
✅ 2. RLHF(Reinforcement Learning from Human Feedback)
人間のフィードバックを用いた強化学習により、モデルの出力を調整する手法です。
効果: OpenAIによると、GPT-4は内部の事実性評価テストでGPT-3.5より40%高いスコアを記録し、センシティブなリクエストへのポリシー準拠率が29%向上しました。
✅ 3. Chain-of-Thought(CoT)プロンプティング
モデルに段階的な推論を促すプロンプト技法です。
効果: 推論の「思考過程」を明示させることで、論理的整合性が向上し、自己矛盾が減少します。
# CoTなしのプロンプト
「12個のリンゴを3人で分けると何個ずつ?」
# CoTありのプロンプト
「12個のリンゴを3人で分けると何個ずつ?
ステップバイステップで考えてください。」
✅ 4. 不確実性を考慮した評価・訓練
OpenAIの最新研究が提唱するアプローチは、「分からない」と言うことに報酬を与える評価方法への転換です。
従来の方式では正答のみに得点が与えられ、「分からない」と答えると0点となり、誤答でも確率的に正解する可能性がありました。提案される方式では、正答に正の得点、誤答にペナルティ、「分からない」に部分点が与えられます。
よくある落とし穴と対策
⚠️ 落とし穴1: 「RAGを入れればハルシネーションは解決する」
実態: RAGでも以下の問題は残ります。
- 検索結果が不正確・不完全な場合
- モデルが検索結果を無視または誤解釈する場合
- 検索結果間で矛盾がある場合
対策: 検索品質の監視、リランキングの導入、複数ソースのクロスチェック機構を実装します。
⚠️ 落とし穴2: 「モデルが大きくなれば解決する」
実態: モデルサイズとハルシネーション率に単純な相関はありません。むしろ、大きなモデルほど「もっともらしい嘘」が巧妙になる傾向があります。
対策: モデルサイズに依存せず、出力検証の仕組みを必ず組み込みます。
⚠️ 落とし穴3: 「高い確信度=正確」と仮定する
実態: LLMは誤った情報も高い確信度で出力できます。確信度と正確性は必ずしも相関しません。
対策: 外部知識との照合、複数モデルのアンサンブル、人間によるレビューを組み合わせます。
まとめと次のステップ
要点まとめ
- ハルシネーションはLLMの「バグ」ではなく、次トークン予測という学習目標に起因する構造的特性
- Softmax関数による「人工的確実性」と自己回帰生成のエラー連鎖が主要なメカニズム
- 「Unknown」データの学習がハルシネーションを誘発する
- RAG、RLHF、CoTなどの対策は効果的だが、完全な解決策ではない
- 不確実性を明示できる評価・訓練方法への転換が今後の方向性
次のステップ
- RAGの導入検討: 自社ドメインの知識ベースを構築し、生成精度を向上させる
- 出力検証パイプラインの構築: 自動ファクトチェック機構の導入を検討する
- プロンプトエンジニアリング: CoT、Self-Consistency等の技法を活用する
参考リンク
- OpenAI: Why language models hallucinate
- LLMs Will Always Hallucinate, and We Need to Live With This (arXiv)
- Extrinsic Hallucinations in LLMs (Lil'Log)
- Hallucination Mitigation for RAG LLMs: A Review (MDPI)
- Self-contradictory Hallucinations
- OpenAI GPT-4 Technical Report
- Credal Transformer (arXiv)
- Gekhman et al. 2024 (ACL Anthology)
- Differential Transformer (arXiv)
免責事項: 本記事は当社が確認した時点の情報に基づく参考情報であり、正確性・完全性・最新性を保証せず、利用により生じたいかなる損害についても弊社は責任を負いません。