Slide 1

Slide 1 text

Authors: Zhengbao Jiang, Frank F. Xu, Luyu Gao, Zhiqing Sun, Qian Liu, Jane Dwivedi-Yu, Yiming Yang, Jamie Callan, Graham Neubig 2023/11/18 LLM+検索論文読み会 清田 浩史 Active Retrieval Augmented Generation

Slide 2

Slide 2 text

ABEJAでデータサイエンティストやってます。 LLMやらNLPは初心者です。 興味:ゲームの強化学習、画像の生成モデル GitHub: https://github.com/kiyohiro8 Twitter (X): @hrs1985 自己紹介 2

Slide 3

Slide 3 text

背景 • 大規模言語モデルは文章生成で誤情報を生成する傾向がある • 検索による知識拡張は有望な方向性だが、長文生成においては既存手法に限界がある 提案手法 • 生成中に能動的に検索する FLARE (Forward-Looking Active REtrieval augmented generation) フレーム ワークを提案 • 次の文の一時生成で検索の必要性を判断 • 低確信度トークンがある場合、一時生成した文を使って関連情報を検索 • 検索結果を用いて次の文を再生成 実験 • テキスト davinci-003 モデルを使用 • 4 つの長文生成タスク(マルチホップ QA、常識推論、長文 QA、要約)で評価 結果 • 4 つのタスクでベースラインを上回る性能 • 検索のタイミングとクエリ作成方式が重要 概要 3

Slide 4

Slide 4 text

RAGは一定の成果を出しているものの、複雑な QA や長文を生成したい場合には検索のタイミング、クエリの生成などに 課題 Single-time retrieval augmented LM (Chen et al., 2017など) ユーザー入力を基に最初に一回だけ検索し、取得したドキュメントを条件に答えを生成する。 長文生成では不十分。 Passive multi-time retrieval augmented LM (Khandelwal et al., 2020など) 一定間隔で過去のコンテキストに基づき検索。 検索タイミングが不適切な場合がある。次に生成したい文とクエリが合わない可能性がある。 Question decomposition (Press et al., 2022など) タスク固有の注釈が必要で汎用性に欠ける。 先行研究と課題 4

Slide 5

Slide 5 text

長文生成時に大事なのは次の2点 1. いつ検索を行うか? 2. どのようなクエリを投げるか? 複数回検索モデル 5

Slide 6

Slide 6 text

LMの出力の低確信度は知識の欠如を示す傾向がある Language Models (Mostly) Know What They Know (Kadavath et al., 2022) ● GPT-3は自身の知識の程度をある程度判別できる How Can We Know When Language Models Know? On the Calibration of Language Models for Question Answering (Jiang et al., 2021) ● (モデルによっては)確信度と正答率の間に相関が見られる Detecting Hallucinated Content in Conditional Neural Sequence Generation (Zhou et al., 2021) ● ハルシネーションの内容は入力から予測が困難であると考えられる(という言及) Can Open-Domain QA Reader Utilize External Knowledge Efficiently like Humans? (Varshney et al., 2022) ● 検索を使わないモデルで低確信度の出力が得られた際、検索を使うモデルに切り替えて生成すると好成績 検索を行うタイミングはLMが生成したトークンの確信度が低い時とすればよさそう FLARE(direct) 6

Slide 7

Slide 7 text

Joe Biden attended the University of Pennsylvania, where he earned a law degree. 赤い部分の確信度が閾値θを下回っている→この文をクエリにして検索 Joe Biden attended [MASK], where he earned [MASK]. クエリとして使う際、確信度が低い (<β)トークンをマスクしてクエリとする。 マスクしたことがわかるトークンに置換している、と思っていたが、 Fig. 3 を見ると単にそのトークンを削除しているっぽい? FLARE(direct) 7

Slide 8

Slide 8 text

1. 次の文を一時的に生成する 2. 生成された文の各トークンについて、 確信度 (トークンの予測確率)の低い トークンがなければそのまま採用 (Step 1) 3. そうでなければ検索を行う (Step 2、 Step 3) FLARE(direct) 8 ※補足 Step2において、”the University of” までは一時生 成した文と再生成した文で共通なのにグレーで示 されているのはなぜかという質問がありました。 おそらく、一時生成された文においては LMの知識 の欠如により”the University of”の確信度も低い が、検索で得られたドキュメントの内容も含めて生 成した場合にはそこの確信度が θより高くなる、と いうことを意図していると思われます。

Slide 9

Slide 9 text

1. プロンプト中で「[Search(クエリ)]」という形式の指 示を生成するようLMに促す (Instruction) 2. 文生成時に、LMが"[Search(クエリ)]"を生成した 時点で一時停止し、検索を実行 FLARE(instruct) 9

Slide 10

Slide 10 text

Skill 1のinstruction例 Question: But what are the risks during production of nanomaterials? Answer (with Search): [Search(nanomaterial production risks)] Some nanomaterials may give rise to various kinds of lung damage. Question: The colors on the flag of Ghana have the following meanings. Answer (with Search): Red is for [Search(Ghana flag red meaning)] the blood of martyrs, green for forests, and gold for mineral wealth. Skill 2のinstruction例 Question: When did the director of film Hypocrite (Film) die? Answer (with step-by-step): The film Hypocrite was directed by Miguel Morayta. Miguel Morayta died on 19 June 2013. So the answer is 19 June 2013. FLARE(instruct) 10

Slide 11

Slide 11 text

マルチホップQA (2WikiMultihopQA) Wikipediaの複数文書から 2 ステップの推論が必要な QA 常識推論 (StrategyQA) 常識を必要とする Yes/No 質問への回答生成 長文QA (ASQA) 複数の側面に答える必要のある曖昧な QA オープンドメイン要約 (WikiAsp) 対象の様々な面について着目した要約 実験に用いたタスク 11 ※補足 CorpusおよびRetrieverを使い分けているのは、タスクの性質として主に Wikipediaの内容を必 要とするのかもっと幅広く webから情報を集める必要があるのかの違いのようです

Slide 12

Slide 12 text

いずれのタスクでも FLARE (図の緑) が最も高スコア Overall Results 12

Slide 13

Slide 13 text

2WikiMultihopQA の結果。FLARE(direct) は FLARE(instruct) より良い ベースラインの中では Question decomposition や Previous-window のものが比較的良い instructとdirectの比較 13

Slide 14

Slide 14 text

FLARE(instruct) は検索クエリを生成するために汎用的な検索指示を提示しているが、このスキルを Instructionで習得させるのは困難 従って、FLARE(instruct) で生成された検索クエリの質は次に生成したい文の内容に十分マッチしていない 可能性がある 一方で、FLARE(direct) は次の文の一時生成を直接検索クエリとして用いているため、より正確に未来の 意図を反映できる instruct < directの理由 14

Slide 15

Slide 15 text

検索のためのクエリとして直前の文か次の一時生成文 のどちらを使うかの比較。 Table 3 によると次の出力を使う方がよい Importance of forward-looking retrieval 15 クエリとして直前何トークンの出力を使うかの比較。 All はこれまでの出力全てを使った場合。 この実験では 32 トークンが最良。長ければいいわ けではない。

Slide 16

Slide 16 text

トークンの確信度閾値 θ の値を 0~1 の間に変化させた時の 検索を行った割合(横軸)とスコア(縦軸)をプロット 検索を行う確率は高すぎても良くない 検索確率の影響 16

Slide 17

Slide 17 text

トークンをマスクするための確信度閾値 β を 0~0.6 で変化させた 高すぎても低すぎても良くない。この実験では 0.4 程度がちょうどよさそう。 マスク確率の影響 17

Slide 18

Slide 18 text

Implicit: マスクした文をそのままクエリとする Explicit: マスクした文と確信度の低いトークンを LM に通し てクエリを生成する どちらも同じくらい良い結果 Implicit vs Explicit 18

Slide 19

Slide 19 text

前述の 4 つ以外のタスクであまり顕著なスコア向上が見られないものもあった Wizard of Wikipedia ● 出力が短い(平均 20 トークン程度)ため、複数の情報を検索・統合する必要性が低い ● 出力が短い場合、1回の検索で十分なため、FLARE の効果は限定的 ELI5 ● 自由形式 QA で生成と評価が困難 ● 検索結果を適切に統合するのが難しく、単一検索と FLARE の差が小さい 計算コスト FLARE では検索と生成を繰り返すため、計算効率の観点では単一検索に比べてコストがかかる アーキテクチャを工夫すれば計算コストは抑えられる、と著者は主張しているが… Limitation 19

Slide 20

Slide 20 text

● デカいモデルの追加の学習をせずに使えるのが魅力 ● 生成時に必要に応じて検索するという仕組みが賢い ● やっぱり計算コストは馬鹿にならないのでは? 感想 20

Slide 21

Slide 21 text

背景 • 大規模言語モデルは長文生成で誤情報を生成する傾向がある • 検索による知識拡張は有望な方向性だが、既存手法に限界がある 提案手法 • 生成中に能動的に検索する FLARE (Forward-Looking Active REtrieval augmented generation) フレーム ワークを提案 • 次の文の一時生成で検索の必要性を判断 • 低確信度トークンがある場合、一時生成した文を使って関連情報を検索 • 検索結果を用いて次の文を再生成 実験 • テキスト davinci-003 モデルを使用 • 4 つの長文生成タスク(マルチホップ QA、常識推論、長文 QA、要約)で評価 結果 • 4 つのタスクでベースラインを上回る性能 • 検索のタイミングとクエリ作成方式が重要 まとめ 21

Slide 22

Slide 22 text

22