$30 off During Our Annual Pro Sale. View Details »

Active Retrieval Augmented Generation

kiyo
November 20, 2023

Active Retrieval Augmented Generation

2023年11月18日に行われた LLM x 検索論文読み会 (https://abeja-innovation-meetup.connpass.com/event/300041/) の発表資料です。

kiyo

November 20, 2023
Tweet

More Decks by kiyo

Other Decks in Research

Transcript

  1. 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

    View Slide

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

    View Slide

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

    View Slide

  4. 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

    View Slide

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

    View Slide

  6. 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

    View Slide

  7. 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

    View Slide

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

    View Slide

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

    View Slide

  10. 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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  22. 22

    View Slide