Hallucination (in LLMs)
LLMにおけるAIハルシネーション(幻覚)の原因とリスクを探究します。RAG、RLHF、およびUltralytics YOLO26によるグラウンディングを使用して、事実誤認を軽減する方法を学びましょう。
人工知能 (AI) の分野において、ハルシネーションとは、大規模言語モデル (LLM) が、確信に満ちた正しい構文のコンテンツを生成しながらも、事実とは異なっていたり、意味をなさなかったり、入力データに対して不誠実であったりする現象を指します。システムクラッシュや目に見えるグリッチを引き起こす標準的なソフトウェアエラーとは異なり、ハルシネーションを起こしているモデルは、誤った情報を正当な事実であるかのように自信を持って提示する説得力のある偽造者のように振る舞います。これは、医療、法律、金融といった、データの整合性が極めて重要となる機密分野で 生成AI を導入する組織にとって、大きな課題となっています。
Link to this sectionなぜハルシネーションが発生するのか?#
To understand why models hallucinate, it is helpful to look at how they are built. LLMs are typically based on the Transformer architecture, which functions as a sophisticated prediction engine. Instead of querying a structured database of verified facts, the model predicts the next token in a sequence based on statistical probabilities derived from its training data.
この振る舞いを引き起こすいくつかの要因を以下に挙げます:
- 確率的推測: モデルは事実の正確さよりも流暢さと一貫性を優先します。特定の単語の並びが統計的に高い確率を持つ場合、たとえ事実と異なっていても、モデルはそれを生成することがあります。この概念は、確率論的オウム (stochastic parrots) に関する研究でよく議論されており、そこではモデルが意味を理解することなく言語パターンを模倣していると指摘されています。
- データ品質の問題: 学習に使用された膨大なテキストコーパスに矛盾、古い情報、またはフィクションが含まれている場合、モデルはそれらの不正確な情報を再現する可能性があります。
- ソース健忘: LLMは膨大な量の情報を モデルの重み に圧縮します。このプロセスにおいて、特定の情報源とのリンクが失われることが多く、その結果、個別の概念やイベントが誤って統合される「作話 (confabulation)」が発生します。
Link to this sectionハルシネーションの現実的な例#
ハルシネーションは、無害な創造的修飾から深刻な事実誤認まで、さまざまな形で現れます:
- 法的な捏造: 法律の専門家がAIを使用して準備書面を作成した際に、モデルが議論を裏付けるために 存在しない裁判例 や引用を捏造していたという記録された事例があります。
- コード生成: AIアシスタントを使用する開発者は「パッケージのハルシネーション」に遭遇することがあります。これは、モデルが標準的な命名規則に従っているという理由だけで、実際には存在しないソフトウェアライブラリのインポートや、存在しない関数の呼び出しを提案する現象です。
- 伝記的な誤り: あまり有名ではない個人について尋ねられた際、モデルは誤った業績、出生地、経歴を自信を持って帰属させ、複数の人物の情報を混同してしまうことがあります。
Link to this section軽減戦略#
ハルシネーションの頻度を減らすことは、AI安全性 (AI Safety) の主要な焦点です。エンジニアや研究者は、モデルを現実に即させるためにいくつかの手法を採用しています:
- 検索拡張生成 (RAG): この手法は、LLMを ベクトルデータベース にインデックス化された外部の信頼できる知識ベースに接続するものです。回答を生成する前に適切なドキュメントを取得することで、モデルの出力を実際のデータに制限します。
- 思考の連鎖 (Chain-of-Thought) プロンプティング: この プロンプトエンジニアリング 手法は、複雑な推論を中間的なステップに分解させることで、モデルに「思考のプロセスを示させる」ことを促し、論理エラーを低減させることがよくあります。
- 人間のフィードバックによる強化学習 (RLHF): 微調整の段階で、人間の評価者がモデルの回答をランク付けします。ハルシネーションにペナルティを与え、正確さに報酬を与えることで、モデルは人間の期待により適した振る舞いを学習します。
Link to this sectionコンピュータビジョンによるLLMのグラウンディング#
マルチモーダルAI システムでは、テキスト生成を視覚データを使用してグラウンディングすることができます。LLMにシーンの説明を求めると、存在しない物体をハルシネーションで描き出す可能性があります。YOLO26 のような高精度な物体検出器を統合することで、開発者はLLMに対して実際に存在する物体のリストを提供でき、出力を検証済みの検出結果に厳格に制限できます。
以下の Python の例は、ultralytics パッケージを使用して検証済みの物体リストを抽出し、それを言語モデルのプロンプトに対する事実的な制約として機能させる方法を示しています。
from ultralytics import YOLO
# Load the YOLO26n model (latest generation, efficient and accurate)
model = YOLO("yolo26n.pt")
# Run inference on an image to get ground-truth detections
results = model("https://ultralytics.com/images/bus.jpg")
# Extract the class names of actually detected objects
detected_objects = [model.names[int(c)] for c in results[0].boxes.cls]
# This factual list prevents the LLM from hallucinating items
print(f"Verified Objects for Prompt Context: {detected_objects}")
# Output example: ['bus', 'person', 'person', 'person', 'person']Link to this section関連する概念との違い#
ハルシネーションを他の一般的なAIエラーと区別することが重要です:
- AIにおけるバイアス との比較: バイアスは出力における体系的な偏見(例:ある人口統計グループを他よりも優先する)を指しますが、ハルシネーションは事実の正確性の欠如です。回答はバイアスがなくてもハルシネーションを起こす可能性があります(例:「月はチーズでできている」)。
- 過学習 (Overfitting) との比較: 過学習は、モデルがトレーニングデータをあまりに詳細に記憶してしまい、新しい入力に対して汎化できなくなる現象です。ハルシネーションは、モデルがデータ不足の領域に対して「汎化しすぎる」ことで発生することが多くあります。
- 誤分類との比較: 物体検出 において、車をトラックとラベル付けするのは分類エラー(精度の問題)であり、ハルシネーションではありません。ハルシネーションは、誤ったコンテンツを生成的に作成することに特有の現象です。
データセットを管理し、高いデータ整合性でモデルを学習させて下流工程のエラーを防止したい方に向けて、Ultralytics Platform はアノテーションおよびデータセット管理のための包括的なツールを提供しています。さらに、NIST AIリスクマネジメントフレームワーク からのガイダンスは、本番環境におけるこれらのリスクを評価および緩和するための標準を提供しています。






