LLMの回答の不確実性を定量化する

# 1. はじめに
大規模言語モデル（LLM; Large Language Model）の導入がビジネスや生活の中で進んできています。LLMを活用する際、LLMが事実と異なる出力をするハルシネーション（幻覚）と呼ばれる現象に悩まされる方も多いと思いますが、ハルシネーションを回避・低減する方法の研究も進んでいます（たとえば、[L. Huang et al., 2023](https://arxiv.org/abs/2311.05232)をご覧ください）。本記事では、LLMの回答の不確実性を定量化し、それをもとにハルシネーションを検出する手法を提案した、Google DeepMindによる論文 [To Believe or Not to Believe Your LLM](https://arxiv.org/abs/2406.02543) を簡単に紹介します。（LLMの概要や基礎的な理論については[こちらの記事](https://qiita.com/iitachi_tdse/items/e92729a49039ac87200d)をご参照ください。）

[以前の記事](https://qiita.com/iitachi_tdse/items/9c11c2a4d46ef155ac45)では、LLMの内部状態を解析することでハルシネーションを検出するLLM factoscopeという手法を提案した論文を紹介しましたが、今回ご紹介する論文では、LLMの回答の不確実性を情報理論の指標を使って定量化し、それをもとにハルシネーションを検出するという異なるアプローチを取っています。

# 2. 論文「To Believe or ～」の要点
この論文では、LLMにおける不確実性の定量化を試みています。具体的には、**LLMの回答の不確実性をepistemicなもの（知識の欠如による）とaleatoricなもの（不可避なランダム性による）に分け、epistemicな不確実性が高い場合にモデルの出力が信頼できないことを検出する、情報理論に基づいた新しい指標を導入**しています。また、クエリ（質問）と回答を繰り返して得られる回答の分布をもとにepistemicな不確実性を計算し、ハルシネーションを検出するアルゴリズムを提案しています。

## 2.1 epistemic/aleatoricな不確実性
- epistemicな不確実性
    - 学習データやモデルのキャパシティが十分でないなどの理由で正解（事実や、言語における文法など）に関する知識が欠如してしまうことに起因する不確実性
    - epistemicな不確実性が高いとき、ハルシネーションの発生が疑われる
- aleatoricな不確実性
    - 同一のクエリに対して妥当な（正しい）回答が複数ある場合など、不可避なランダム性に起因する不確実性

epistemicな不確実性が小さいとき、LLMの回答は正解に近く、回答の信頼性が高いといえます。
回答の不確実性を定量化するヒューリスティックなアプローチは様々なものが検討されてきています（回答の対数尤度を検証する・エントロピーを推定する・アンサンブルを行う・conformal predictionを活用する、など）が、これらのアプローチは正解となる回答が1つのみ存在する場合しか適用できないという限界があります。正解となる回答が複数ある場合は（正解における）aleatoricな不確実性が高い訳ですが、単純にLLMの回答の不確実性を見積もる方法では、epistemicな不確実性が高いのか、aleatoricな不確実性が高いのかを見分けることができません。このことが、この論文における不確実性の定量化のモチベーションになっています。

# 3. epistemicな不確実性の定量化

## 3.1 カルバック・ライブラー情報量を用いた定量化
LLMの回答が正解からどの程度乖離しているかを測定する指標として、LLMの出力の確率分布 $\tilde{Q}$ と正解の確率分布 $\tilde{P}$ とのカルバック・ライブラー情報量 $D_{KL}(\tilde{Q}, \tilde{P})$ を導入しています。図1に示したイメージ図では、LLMの出力の確率分布 $\tilde{Q}$ と正解の確率分布 $\tilde{P}$ の乖離が大きく、ハルシネーションの発生が疑われます。

![スクリーンショット 2024-06-27 231403.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2724841/73bde462-7ac7-13f9-7b96-c5dc6b196a10.png)
図1: ハルシネーションの発生が疑われる場合の、LLMの回答の確率分布 $\tilde Q$と正解の確率分布 $\tilde P$ のイメージ図（[Yadkori et al., 2024](https://arxiv.org/pdf/2406.02543) Figure 4を引用）

## 3.2 前提と計算方法の概要
LLMの出力の確率分布の算出に際しては、クエリに対する回答を得て、その回答とクエリをもとに次の回答を得て、さらにこれまで得られた回答とクエリをもとに次の回答を得る、という手続きを踏みます。そして、LLMの出力の確率分布は、クエリに対する回答が得られる確率、クエリと1つ目の回答のもとで2つ目の回答が得られる確率、クエリと2つ目までの回答をもとに3つ目の回答が得られる確率、…の積で表現されます。

クエリとこれまでの回答を含むプロンプトに対する回答が、これまでの回答の影響をあまり受けない場合、上記の方法で計算されるLLMの回答の確率分布は正解のものと近くなるはずです。これはLLMが自信をもって回答している状況と見做すことができます。一方で、これまでの回答が新しい回答へ与える影響が大きい場合、LLMの回答の確率分布は正解のものとは乖離したものとなります。これはLLMが回答に自信を持てない状況に該当するといえるでしょう。したがって、LLMの回答の確率分布と正解の確率分布の差異であるカルバック・ライブラー情報量は、aleatoricな不確実性の影響を受けず、epistemicな不確実性を定量化しているといえます。

また、$D_{KL}(\tilde{Q}, \tilde{P})$ は、正解の確率分布がこれまでの正解に依存しないという仮定の下で、$\tilde{Q}$ のみに依存し、回答の確率分布の相互情報量 $I(\tilde{Q})$ を下界に持つ、つまり
```math
D_{KL}(\tilde{Q}, \tilde{P}) \geq I(\tilde{Q})
```
が成り立つことが示されています。図2に、相互情報量の計算方法を示します（証明や計算方法に関する詳細は文献をご参照ください）。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2724841/c1c45235-cca1-6b7c-581e-7664882987f1.png)
図2: 相互情報量の計算方法（[Yadkori et al., 2024](https://arxiv.org/pdf/2406.02543) Algorithm 1を引用）

# 4. ハルシネーションの検出アルゴリズム
この論文では、前節の相互情報量 $I(\tilde{Q})$ をもとに、スコアベースでハルシネーションを検出するアルゴリズムを提案しています。

提案されている手法は、クエリ $x$ のもとで得られる回答の確率分布の相互情報量を、ハルシネーションが発生しているかの確信度を表すスコアとして活用しています。具体的には、
- 相互情報量が閾値 $\lambda$ 以上の場合 ⇒ ハルシネーションが発生している
- 相互情報量が閾値 $\lambda$ 未満の場合 ⇒ ハルシネーションが発生していない

と見做します。（閾値 $\lambda$ は、ホールドアウトデータを用いてチューニングするパラメータです。）

# 5. 評価
この論文では、LLMとしてGemini 1.0 Pro、データセットとしてTriviaQA, AmbigQA, WordNetを使い、ハルシネーションの検出精度を検証しています。

図3は、ハルシネーション検出の精度評価結果を示しており、提案手法（M.I. score）は、ベースライン手法（T0 score, S.V. score, S.E. score）と同程度もしくはより高い精度を達成していることがわかります。
詳しく見てみると、ほとんどが正答が1つであるクエリ/回答から構成されるデータセット TriviaQA, AmbigQA に対する評価（図a,b）では、回答の尤度にもとづくナイーブな手法（T0 score, S.V. score）よりも精度がよく、不確実性の指標として回答のエントロピーを使用している手法（S.E. score）と同程度の精度を示していることがわかります。また、正答が1つであるクエリ/回答と、正答が複数あるクエリ/回答をどちらも含むデータセット TriviaQA+WordNet, AmbigQA+WordNet に対する評価（図c, d）では、ベースライン手法（S.E. score）よりも良好な性能を示していることがわかります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2724841/3c6b2215-e6b8-7483-d834-db51efda042b.png)
図3: ハルシネーションの検出精度を示すPrecision-Recall曲線（[Yadkori et al., 2024](https://arxiv.org/pdf/2406.02543) Figure 5を引用）

# 6. まとめ
この記事では、LLMの回答の不確実性を定量化する手法を提案した論文を簡単に紹介しました。ハルシネーションの回避・低減に取り組まれている方や、LLMに興味をお持ちの方の参考になれば幸いです。

# 7. 参考文献
[1] [Yadkori et al., 2024, To Believe or Not to Believe Your LLM](https://arxiv.org/pdf/2406.02543)



<!--
## 主要な結果
論文で提示された反復プロンプトを用いた手順によって、以下の結果がもたらされました： 
- 反復プロンプト手順に基づいて、LLMにおけるepistemicな不確実性の情報理論的尺度を定義しました。この尺度はaleatoricな不確実性の影響を受けないので、有効な回答が複数存在する場合でも、epistemicな不確実性を定量化することができます。
- この不確実性の尺度の下界を導出しました。この尺度は、LLMから導出された回答上の結合分布の相互情報量(MI)であることが判明し、その有限標本推定量が提案されています。この有限標本MI推定量は、LLMとその導出された結合分布が潜在的に無限のサポート（言語中の全ての可能な文字列）上で定義されているにもかかわらず、無視できる程度の誤差しか生じないことがあることが証明されます。

## 論文の概要
- まず、反復プロンプトの手順を定義します。これはLLMに同じ質問を繰り返し、さらにプロンプトに誤った答えを組み込むことで質問を繰り返した時の回答がどのように変化するかを観察するものです。

![スクリーンショット 2024-06-28 005826.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2724841/794d00f7-d5bc-6e4d-70cf-0f3490408dd5.png)
図1: 単一回答で、高いepistemic な不確実性をもつクエリに対して、誤った回答をプロンプトに組み込んで繰り返しクエリに回答させたときの正答率の変化。回数を経るにしたがって急激に正答率が低下することがわかります。（[Yadkori et al., 2024](https://arxiv.org/pdf/2406.02543)のFigure 2を引用）

- 次に、繰り返しのクエリへの回答に対して疑似結合分布を定義します。基底真理から導かれる疑似結合分布とLLMから導かれる疑似結合分布がわかっているという仮定の下で、epistemic な不確実性を両者の分布のKullback-Leibler divergenceで定義します。
- 入力$x$が与えられたとき、基底真理から定まる分布$\tilde P$を用いて明示的に$D_{\mathrm{KL}}(\tilde Q,\tilde P)$を計算することは困難ですが、$\tilde Q$のみによって定まる量によって$D_{\mathrm{KL}}(\tilde Q,\tilde P)$の下界を求めることができます。

# 3. Epistemic な不確実性の尺度の定義
クエリ$x$を繰り返し入力したときのLLMの回答を$Y_1, Y_2, \dots,Y_t$とし、$k-1$回目までの回答が$Y_1,\dots,Y_{k-1}$であったときに$k$回目の回答が$Y_k$である確率を$\mu(Y_k\mid F_{k-1}(x,Y_1,\dots,Y_{k-1}))$とします。さらに、疑似結合分布$\tilde\mu$を、
$$\tilde\mu(Y_1,\dots,Y_n\mid x)=\mu(Y_1\mid F_0(x))\mu(Y_2\mid F_1(x,Y_1))\cdots\mu(Y_n\mid F_{n-1}(x,Y_1,\dots,Y_{n-1}))$$
で定義します。LLMの出力から導かれる疑似結合分布を$\tilde Q$、基底真理から導かれる疑似結合分布を$\tilde P$としたとき、$\tilde Q$のepistemic な不確実性を$D_{\mathrm{KL}}(\tilde Q,\tilde P)$で定義します。ここで$D_{\mathrm{KL}}$はKullback-Leibler divergence
$$D_{\mathrm{KL}}(\mu,\mu')=\sum_z\mu(z)\log\frac{\mu(z)}{\mu'(z)}$$
です。

# 4. まとめ
本記事では参考文献に沿って、LLMがクエリに対して真実を回答するかの指標として、特にepistemicな不確実性について検討しました。論文ではクエリに対するLLMの応答のepistemicな不確実性について、相互情報に基づく不確実性推定量を提案しました。複数の回答の結合分布を考慮することで、epistemicな不確実性とaleatoricな不確実性を分離することができ、これにより、従来の手法よりも優れたhallucinationの検出が可能になります。
このアプローチにより、シングルラベルとマルチラベルが混在するデータセットにおいて、従来の手法よりも有意に良好な性能を示す、hallucinationと思われる回答を棄権する手法が得られました。epistemicな不確実性を定量化することを目的とした分類のための先行手法は通常、LLMの逐次的な性質を利用し、回答を用いて修正された学習法に基づいていますが、当論文の手法は学習手順を変更する必要はなく、同じクエリに対してLLMによって生成された複数の回答でモデルを反復的に学習させることによる手法となります。

contribution
反復プロンプトの手順は、以下の主要な貢献をもたらす： 
(i) 上記の反復プロンプト手順に基づいて、LLMにおけるエピステミックな不確実性の情報理論的尺度を導出する（セクション4）。このギャップはleatoric uncertaintyの影響を受けないので、有効な回答が複数存在する場合でも、エピステミックな不確実性を定量化することができる。
(ii)このメトリックの計算可能な下界を導出する。このメトリックは、LLMから導出された回答上の結合分布の相互情報量(MI)であることが判明し3、その有限標本推定量を提案する。
この有限標本MI推定器は、LLMとその導出された結合分布が潜在的に無限のサポート（言語中の全ての可能な文字列）上で定義されているにもかかわらず、無視できる程度の誤差しか生じないことがあることを証明する。
(iii) 有限サンプルMI推定量を閾値処理することに基づく幻覚検出アルゴリズムについて述べる。ここで、閾値は校正手続きによって自動的に計算される。
TriviaQA、AmbigQA、WordNetから合成されたデータセットなどの）クローズドブック・オープンドメインの質問応答ベンチマークを用いて実験的に示す。
MIに基づく幻覚検出手法は、単一ラベルまたは複数ラベルのクエリで構成されるデータが多い場合、素朴なベースライン（応答の尤度に基づいている）を上回り、より高度なベースライン（応答の尤度に基づいている）と本質的に同様の性能を達成する。
また、不確実性の代用として出力のエントロピーに基づく、より高度なベースラインとほぼ同等の性能を達成した。しかし、シングルラベルとマルチラベルのサンプルを同時に含むデータセット上では、我々の手法はエントロピー
同程度の誤り率を維持しながら、出力エントロピーの高いサンプルにおいてはるかに高い想起率を達成することで、エントロピーに基づくベースラインを凌駕する。
(iv)1つの自己注意ヘッドに焦点を当て、前述したように、以前の応答を利用した反復プロンプトによって、モデルの出力がどのように変化するかについて、簡単なメカニズム的説明を特定する。プロンプトが、クエリと繰り返される要素（例えば、誤答の可能性があるもの）から構成されているとする。クエリがキーとクエリの行列積の大きな主成分によってスパンされる空間内にある場合、出力は学習データ（現在は値行列に格納されている）から抽出された知識に従って生成される。一方、クエリが大きな主成分とほとんど重ならない場合、繰り返される要素はプロンプトからコピーされる可能性が高い。


conclusion

本論文では、LLMの真実性の代理として、認識論的不確実性を検討した。我々は、問い合わせに対するLLMの応答のエピステミックな不確実性について、証明可能な下界を認める相互情報に基づく不確実性推定器を提案した。複数の解答の共同分布を考慮することで、エピステミックな不確実性とアレータリックな不確実性を分離することができ、これにより、一次的手法よりも優れた幻覚の検出が可能となる。
そのため、認識論的不確実性だけでなく、全体としての不確実性にしか取り組むことができない一次的手法よりも、幻覚をよりよく検出することができる。このアプローチにより、シングルラベルとマルチラベルが混在するデータセットにおいて、一次的手法よりも有意に良好な性能を示す棄権手法が得られた。エピステミックな不確実性を定量化することを目的とした分類のための先行手法は、通常、LLMの逐次的な性質を利用し、応答タプルを用いた修正された学習法に基づいているが、我々の手法は学習手順を変更する必要はなく、同じクエリに対してLLMによって生成された複数の応答でモデルを反復的に促す必要がある。

-->