Dev Study
← セキュリティとAIの仕組み
レッスン 9 / 13·約 9 分·第4期 セキュリティとAIの仕組み

なぜハルシネーションが起きるのか — 推測が報われる構造

リクエストがアプリケーションに届くまで
  1. ブラウザURL入力
  2. DNS名前→IP
  3. ルータ経路選択
  4. ロードバランサ振り分け
  5. Nginx受け口
  6. アプリ処理今ここ
  7. DB保存

第47週で、出力が確率分布から取り出されることを見ました。今週は「もっともらしいが誤っている」出力が、なぜ自信ありげな形で出てくるのかを扱います。

まず結論

ハルシネーションは「バグ」ではなく、「データの誤り」だけが原因でもありません。Kalai らは、訓練と評価の手続きが不確実性を認めるより推測を報酬として与えるために起きる、と論じています。

★「原理的に不可避」とは書けません。同論文 §3.1 の段落見出しは "Hallucinations are inevitable only for base models." であり、続けてハルシネーションしないモデルは簡単に作れると述べています。

? 読む前に予測

「わからない」と答えるより、自信ありげに具体的な答えを返すほうが、評価の点数が高くなる——このような採点の仕組みは、モデルの振る舞いに何をもたらすでしょうか。

当てることが目的ではありません。外した予測ほど記憶に残るので、直感で選んでください。

抽象原理

まず、言葉を定義から始める

「ハルシネーション」という語は広く使われますが、定義を確認せずに使うと議論が噛み合いません。Ji らのサーベイ(arXiv:2202.03629)§2 が標準的な定義を与えています。

"Within the context of NLP, the above definition of hallucination, the generated content that is nonsensical or unfaithful to the provided source content …, is the most inclusive and standard."

無意味であるか、与えられた元資料に忠実でない生成内容。 「誤り」ではなく「元資料に忠実でない」と書かれている点が効いてきます。§2.1 は2つに分けます。

Ji ら §2.1 — 2つの区別表
intrinsic 元資料と矛盾する出力
例: 資料は2019年承認、生成文は2021年承認
 
extrinsic 元資料から検証できない出力
支持する証拠も、誤りだと言う根拠も資料に無い

同節は重要な補足を付けています。

"Notably, the extrinsic hallucination is not always erroneous because it could be from factually correct external information …."

extrinsic は必ずしも誤りではありません。

✓ ここまでの確認

元の資料に書かれていない内容を生成した場合、それは Ji らの分類ではどれにあたり、必ず誤りと言えますか。

抽象原理

ここが本題 — 推測が報われる採点

では、なぜ起きるのか。「バグ」「データの誤り」で片付きそうに思えますが、Kalai ら(arXiv:2509.04664、2025年9月4日)は違う場所を指します。要旨の逐語です。

"We argue that language models hallucinate because the training and evaluation procedures reward guessing over acknowledging uncertainty"

訓練と評価の手続きが、不確実性を認めることより推測を報酬として与えている。 データの誤りだけの問題ではありません。§1 が明示します。

"even if the training data were error-free, the objectives optimized during language model training would lead to errors being generated"

訓練データに誤りが無かったとしても、訓練で最適化している目的関数そのものが誤りを生む。だから「良いデータを入れれば直る」という対処では届きません。ただし同じ段落は、誤りを含む現実のデータでは誤り率が "even higher" になりうるとも書き、§3.3.1 は訓練データに1回しか現れない事実の割合(singleton rate)を誤りの下限に結び付けます。データは唯一の原因ではない、が正確な読みです。

§1.2 が、採点の形を具体的に説明します。

"In both settings, guessing when unsure maximizes the expected score under a binary 0-1 scheme that awards 1 point for a correct answer and none for blanks or IDKs."

正解に1点、空欄や「わからない」に0点。この採点では、不確実なときに推測することが期待点を最大化します。 §4.1 は "Under binary grading, abstaining is strictly sub-optimal." と踏み込みます。棄権が厳密に劣る選択肢になる、ということです。

誤りが具体的な形を取る理由も、同じ場所にあります。

"Bluffs are often overconfident and specific, such as “September 30” rather than “Sometime in autumn” for a question about a date."

曖昧に答えるより、具体的に答えるほうが点が高い。 だから「たぶん秋ごろ」ではなく「9月30日」が出てきます。

✓ ここまでの確認

「学習データを完璧にすれば、ハルシネーションは無くなる」という説明を、Kalai らの論文はどう扱っていますか。

具体実物

自分が習った3つが、実は誤りやすい箇所だった

第3期で学んだ項目のうち3つが、そのまま実例になります。

第3期で学んだ内容と、そこに潜んでいた誤りの型表
① 証明書の有効期間(第34週)
誤り: 「上限は398日です」と断定
実際: BR §6.3.2 により 2026-03-15 から200日
型: 学習データが古い
 
② WAFのスコアリング(第37週)
誤り: 「少しずつ加算し、閾値を超えたら遮断」
実際: 閾値5・CRITICAL 5・比較 @ge → CRITICAL 1本で遮断
型: もっともらしい説明が実装と食い違う
 
③ リーキーバケット(第36週)
誤り: RFCを引いて nginx の挙動を説明する
実際: 語は RFC 3290 付録Aにあるが、nginx が実装する根拠は公式の呼称だけ
型: 別々の文書を結び付けてしまう

①がこのレッスンと直結します。広く残った「398日」に具体的に答えるほうが点が高いという採点が重なると、「時期によって違うので確認が要ります」ではなく「398日です」が出てきます。§1.2 の "September 30" と同じ形です。

②で誤っているのは値ではなく筋の通し方、③で誤っているのは出典と実装の結び付けです。語が RFC にあっても、nginx がそれを実装していると言える根拠は nginx 公式の呼称だけです。

⇄ 2つを見比べる
具体例 A

AIが「398日です」と即答する

モデルの内部では候補に確率が配られていますが、出力は1つの語に絞られます。曖昧に答えるより具体的に答えるほうが報われる採点のもとでは、限定の付いた答えより断定が選ばれます。読む側には、分布の広がりは見えません。

不確実さが、出力では消える表
内部 候補に確率が配られている
採点 曖昧な答えには点が付かない
出力 「398日です」(限定なし)
読み手 確信度は文面から読み取れない
具体例 B

この教材の制作中に実際に起きた誤り

第34週の準備で、検証者が「BR §6.3.2 の本文に到達できなかった」と報告しました。これが指示に転記される際に「§6.3.2 と書くな」という禁止に変わり、執筆者が忠実に従った結果、正しい節番号が消え、施行日の索引にすぎない §1.2.2 を規定として引く誤りが生まれました。

「未確認」が「禁止」に化ける表
検証者 「§6.3.2 に到達できなかった」(保留)
指示 「§6.3.2 と書くな」(禁止に変化)
執筆者 正しい節番号を外す
結果 索引 §1.2.2 を規定として引く誤帰属

一方は確率分布から語を選ぶ機構、もう一方は人間どうしの伝言です。それでも同じ形の誤りが生まれました。共通する構造は何でしょうか。

「確かめられていない」という状態が、次の担い手にどう伝わったかを両方で追ってください。

この章のまとめ

  • 標準的な定義は「無意味であるか、元資料に忠実でない生成内容」(Ji ら §2)。
  • intrinsic は元資料と矛盾、extrinsic は元資料から検証できない。extrinsic は必ずしも誤りではない。
  • 原因は訓練と評価が推測を報酬として与えること(Kalai ら)。データを完璧にしても目的関数が誤りを生む。
  • 二値採点では推測が期待点を最大化し、棄権は厳密に劣る。だから誤りは具体的で自信ありげな形を取る。
  • ★「原理的に不可避」とは書けない。 §3.1 は「不可避なのはベースモデルに限る」とし、ハルシネーションしないモデルは簡単に作れると述べている。
  • 第3期の3件が実例。398日は学習データが古い型、WAFは実装と食い違う型、リーキーバケットは別の文書の記述を実装に結び付ける型。
  • 流暢さは正しさを保証しない(Ji ら §2)。整っているかではなく、一次ソースまで辿れるかで判断する。

自分の現場で確かめる

読んだだけでは身につきません。手元の環境で実際に見てみてください。

理解度チェック

読んだ直後は「分かった」と感じやすいものです。実際に解いて確かめてください。

問題 1 / 3正解: 0

「LLMのハルシネーションは原理的に不可避である。これは Kalai らの論文が示している」——この記述の評価はどれですか。

用語集(4語)
ハルシネーション(標準的な定義)
Ji ら(arXiv:2202.03629)§2 によれば「無意味であるか、与えられた元資料に忠実でない生成内容」が最も包括的で標準的な定義。
intrinsic hallucination
元資料と矛盾する出力。Ji ら §2.1 の逐語は "The generated output that contradicts the source content."
extrinsic hallucination
元資料からは支持も否定もできない出力。必ずしも誤りではない。事実として正しい外部情報に由来することもある(Ji ら §2.1)。
二値採点(0-1 scoring)
正解に1点、空欄や「わからない」に0点を与える採点。Kalai ら §4.1 は、この形式のもとでは棄権が厳密に劣る選択肢になると指摘する。