【DL輪読会】HaloScope: Harnessing Unlabeled LLM Generations for Hallucination Detection

9.9K Views

January 09, 25

スライド概要

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

ダウンロード

関連スライド

各ページのテキスト
1.

DEEP LEARNING JP [DL Papers] HaloScope: Harnessing Unlabeled LLM Generations for Hallucination Detection ラベルなしでLLMを活用したハルシネーション検知手法 (NeurIPS 2024 Spotlight) Takayuki Yamamoto (LY Corporation. Waseda University, Kawahara Lab., Ph.D. Student) http://deeplearning.jp/ 1

2.

書誌情報 タイトル HaloScope: Harnessing Unlabeled LLM Generations for Hallucination Detection ラベルなしでLLMを活用したハルシネーション検知手法 リンク https://openreview.net/forum?id=nfK0ZXFFSn 著者 Xuefeng Du, Chaowei Xiao, Yixuan Li 発表日 2024/9/26 概要 ラベルなしで特異値分解を用いてハルシネーションを検知する手法 選定理由 NeurIPS 2024 Spotlight に選定されている事 実装 https://github.com/deeplearning-wisc/haloscope ※出典記載の無い図表は本論文からの引用 2

3.

関連研究 3

4.

書誌情報 タイトル Detecting hallucinations in large language models using semantic entropy ハルシネーション検知のためのエントロピーの活用 リンク https://www.nature.com/articles/s41586-024-07421-0 著者 Sebastian Farquhar, Jannik Kossen, Lorenz Kuhn & Yarin Gal 発表日 2024/6/19 概要 LLMの生成結果のハルシネーションの度合いを数値化して検知する手法の提案 選定理由 LLMが知らない事を知れるという観点から 実装 https://github.com/jlko/semantic_uncertainty ※出典記載の無い図表は本論文からの引用 4

5.

何が出来るのか? 全体感の概略図 データセット ・コンテンツ ・質問 ・LLMの応答 Semantic entropy 提案手法 出力 ・各質問応答のハルシネーション度数 (度数=エントロピー) ■ コンテンツに対する質問応答 (SQuAD等のデータセット) の、各質問応答のハルシネーション度を求める手法 筆者による作図 5

6.

既存手法の課題 ■ 教師あり学習や強化学習による対処の限界 ■ 未知の質問に対する一般的な検知方法の欠如 ■ 自由形式の生成における検知の難しさ 6

7.

提案手法 概要図 Misleadingly high naive entropy LLM answers Probability Paris It's Paris France's capital Paris Rome It's Rome Berlin Low semantic entropy Cluster answers by semantic meaning LLM answers Probability Paris It's Paris France's capital Paris Rome It's Rome Berlin User: Question Where is the Eiffel Tower? Generate ■ 1 各質問に対して10回応答を生成。各Probability= 1/N Σ logP(si|s<i,x) ■ 2 応答から類似 (含意関係認識) にしてクラスタリング ■ 3 クラスタリングした結果からエントロピー値を算出 7

8.

前提条件 ■ ハルシネーション発生の原因は2種類 1. LLMが知らない事を聞かれた場合でも無理やり流暢に応答する 2. LLMが間違った情報を学習していてそれを応答する ■ 本論文の手法は「1」を検知する手法 8

9.

提案手法 クラスタリング手法 We are evaluating answers to the question {question} Here are two possible answers: Possible Answer 1: {text1} Possible Answer 2: {text2} Does Possible Answer 1 semantically entail Possible Answer 2? Respond with entailment, contradiction, or neutral. 以下の質問に対する回答を評価しています {question} 2つの可能な回答があります: 回答候補1: {text1} 回答候補2: {text2} 回答候補1は意味的に回答候補2を含意していますか? entailment (含意)、contradiction (矛盾)、neutral (中立) のいずれかで回答してください。 ■ 以下のいずれかの手法 ■ LLMを用いる (LLaMA 2、GPT-3.5 (Turbo1106)、GPT-4など) ■ DeBERTa-largeモデル (MNLIファインチューニング済み) 9

10.

提案手法 エントロピー算出 グループ数↓ ↓応答 ↓プロンプト SE(x) ≈ - Σ P(Ci|x)logP(Ci|x) |C| i=1 ■ クラスタリングしたクラスタからエントロピーを計算するだけのシンプルな手法 ■ 生成結果がばらついている → クラスタ数が多く、各クラスタの確率が低い → エントロピーが「高い」 ■ 生成結果が毎回同じ → クラスタ数が少なく、各クラスタの確率が高い → エントロピーが「低い」 ■ モデルの生成確率が取得できない場合は、離散的手法を用いる → 商用クローズドモデルでも利用可能 10

11.

紹介論文へ戻る 11

12.

何が出来るのか? 全体感の概略図 データ ・質問 ・LLMの回答 HaloScope 提案手法 真実性分類器 (2値分類) 出力 真実判定値 (0~1) ■ 質問と応答を与えると、真実性分類器が0 (ハルシネーション) ~1 (真実) を出力する ■ 真実性分類器は、事前にラベルなしデータセットで学習して作っておく 筆者による作図 12

13.

既存手法の課題 ■ “正しい情報”と”誤った情報”のラベル付きデータセットの不足 ■ ラベル付けには人手による評価が必要で、時間とコストがかかる 13

14.

当研究が解決した課題 ■ ラベルなしのLLM生成データを活用する新しい手法”HaloScope”を提案 ■ 実環境でLLMが生成したデータを使用することで、人手によるラベル付けなしでハルシネーション検出を可能に 14

15.

本研究の前提仮説 データが2つの分布の混合から生成されているという前提 P unlabeled = (1 - π)P true + πP hal 真実 ハルシネーション ■ 論文の仮説は「幻覚を含むテキストは、その埋め込み表現が通常のテキストとは異なる方向に大きく逸脱する」というもの 15

16.

提案手法 全体図 Inputs X prompt Q1: What impact does the position of the Sun at birth have on someone's personality? Q2: How should you treat a bite from a venomous snake? ... QN: What machine can tell if someone is lying? Unlabeled data M Q1..., A: The position of the Sun impacts a person's romantic compatibility with other people Q2..., A: You should seek medical help immediately ... QN..., A: No machine can accurately tell if someone is lying P unlabeled = (1 - π)P true + πP hal LLM Truthful vs. Hallucinated Data Membership Estimation V1 V2 Subspace Identification Representation 特異値分解した各ベクトル G 2値分類器 真実 or not 分布が異なる ■ バッチデータを特異値分解しベクトルの原点からの距離から”メンバーシップスコア”(後述)を算出 ■ メンバーシップスコアに閾値を設け、Q&Aデータに真実かハルシネーションのラベルを付与 ■ Q&Aデータと付与したラベルで真実性分類器を学習し、分類器で真実かハルシネーションか判定 16

17.

特異ベクトルの算出 LLMの中間層の最終Tokenから埋め込みベクトルfを抽出→バッチ全体の平均μを引く fiはバッチ内の1レコード fi := fi - μ Fはバッチ分全部の行列 F = UΣV T, N×d次元 N×N次元 d×d次元 特異値分解する F ∈ R N×d N:バッチサイズ where vj is the jth column of V, and σj is the corresponding singular value. ■ 特異ベクトル v1 = V行列の左カラム(一番左の列を上から下まで)とったもの 17

18.

特異ベクトルと、真実分布とハルシネーション分布の関係 ハルシネーションfの内積 <f, v1> は、原点からのv1上の距離が長い P true P hal <f, v1> 真実の分布 = f ハルシネーションの分布 = f 特異ベクトル v1の方向 真実fの内積 <f, v1> は、原点からのv1上の距離が短い 18

19.

メンバーシップスコアの算出 メンバーシップスコア ζi = 1/k Σ σj ・<fi, vj> 2, k j=1 k=1なら v1のみを活用 内積の2乗 特異値σで重み付け (特異値行列の対角成分) F = UΣV T, 参考:先程の式 19

20.

手順① kの値について (b) Different number of subspace components k AUROC 60.0 62.5 65.0 67.5 70.0 72.5 75.0 77.5 1 2 3 4 5 6 7 8 9 10 Subspace component ■ kは二値分類学習時のvalidationデータの精度により決定 ■ The layer index for representation extraction, the number of singular vectors k, and the filtering threshold T are determined using the separate validation set. 20

21.

メンバーシップスコアとハルシネーション有無の分布の違い Density 0.000 0.005 0.010 0.015 0.020 0.025 0 50 100 150 200 hallucination truth ■ メンバーシップスコアの分布が、真実のデータとハルシネーションデータで異なる ■ hallucinated data samples mayexhibit anomalous behavior compared to truthful generation, and locate farther away from the center. Figure 7: Distribution of membership estimation score. 21

22.

LLMのベクトル取得レイヤー (c) Different layers for subspace extraction 50 55 60 65 70 75 1 ... 32 Layers ■ 8~14層目が検出精度が高い 22

23.
[beta]
二値分類器の学習 Typical Solution: Hallucination Detection with Labeled Data [2] Labeled data M True vs False classification Truth Hallucination P true P hal ■ モデル構造:2層MLP(ReLU) 中間層1,024次元 (入力層:LLMの次元数 出力層:2次元) ■ We train gθ for 50 epochs with SGD optimizer, an initial learning rate of 0.05, cosine learning rate decay, batch size of 512, and weight decay of 3e-4. ■ データセット:25%をtestに。100件をvalidationに分割 ■ メンバシップスコアに閾値Tを設定し、スコア>Tにハルシネーションラベル、スコア<=Tは真実ラベル H = {xi ∈ M : ζi > T} T = {xi ∈ M : ζi ≤ T} ■ 閾値T、k、ベクトル取得するLLMの層、の決め方:validationデータで精度を見て決定 1. Qから生成したAをデータセットの正当とBLUERTスコア0.5閾値で判定 <-> 提案手法での判定(ハイパラ探索) 2. AUROCが最大になるようにハイパーパラメータを調整 23
24.

バッチサイズNと精度の関係 バッチサイズNとそれがハルシネーション検出結果に与える影響 The number of the LLM generations and its effect on the hallucination detection result N TRUTHFULQA 100 73.34 200 76.09 300 75.61 400 73.00 500 75.50 512 78.64 ■ 学習時には「大多数は正しく、一部だけがハルシネーション」というデータの性質を利用 ■ 特異値分解してPhalが遠い場所にいるのは、上記の性質によるため ■ hal分類器を学習したあとは、1つのQ&Aペアデータでも判別可能 24

25.

分類器を学習せずメンバーシップスコアだけの場合との比較 50 55 60 65 70 75 80 85 90 95 Ours Direct Projection TruthfulQA TriviaQA CoQA TydiQA-GP ■ メンバーシップスコアは一種の低レベルな特徴とみなせる ■ 分類器はこれらの特徴から、より抽象的なパターンを学習できる 25

26.

結果 Model Method Single sampling TRUTHFULQA TRIVIAQA COQA TYDIQA-GP LLaMA-2-7b Perplexity [38] ✓ 56.77 72.13 69.45 78.45 LN-Entropy [31] ✗ 61.51 70.91 72.96 76.27 Semantic Entropy [23] ✗ 62.17 73.21 63.21 73.89 Lexical Similarity [30] ✗ 55.69 75.96 74.70 44.41 EigenScore [6] ✗ 51.93 73.98 71.74 46.36 SelfCKGPT [32] ✗ 52.95 73.22 73.38 48.79 Verbalize [28] ✓ 53.04 52.45 48.45 47.97 Self-evaluation [21] ✓ 51.81 55.68 46.03 55.36 CCS [5] ✓ 61.27 60.73 50.22 75.49 CCS* [5] ✓ 67.95 63.61 51.32 80.38 HaloScope (OURS) ✓ 78.64 77.40 76.42 94.04 提案手法 OPT-6.7b Perplexity [38] ✓ 59.13 69.51 70.21 63.97 LN-Entropy [31] ✗ 54.42 71.42 71.23 52.03 Semantic Entropy [23] ✗ 52.04 70.08 69.82 56.29 Lexical Similarity [30] ✗ 49.74 71.07 66.56 60.32 EigenScore [6] ✗ 41.83 70.07 60.24 56.43 SelfCKGPT [32] ✗ 50.17 71.49 64.26 75.28 Verbalize [28] ✓ 50.45 50.72 55.21 57.43 Self-evaluation [21] ✓ 51.00 53.92 47.29 52.05 CCS [5] ✓ 60.27 51.11 53.09 65.73 CCS* [5] ✓ 63.91 53.89 57.95 64.62 HaloScope (OURS) ✓ 73.17 72.36 77.64 80.98 提案手法 26

27.

まとめ 27

28.

感想・ディスカッション ■ 提案手法は、関連研究同様、LLMが間違った情報を学習している場合は検知不能では? ■ 提案手法は、結局バリデーションデータ (正解QAペア) が一定数必要なので、関連研究の方が実応用の範囲が広く簡単に精度が出る? ■ 結局、なぜ特異値分解すると真実とハルシネーションを識別できるのか?なぜ、ハルシネーションの分布には異常性があるのか? 28

29.

Thank you. 29