日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【论文笔记】检索还是生成回复?RAG:我都要

發(fā)布時間:2024/1/18 编程问答 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【论文笔记】检索还是生成回复?RAG:我都要 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

目錄

  • 引言
  • 模型結(jié)構(gòu)
    • 第一部分:Retriever
    • 第二部分:Generator
  • 實驗結(jié)果
    • 結(jié)果分析
  • 總結(jié)

引言

在問答和對話的場景下,通常可以通過檢索和生成兩種方式得到一個回復。檢索式回復是在外部知識庫中檢索出滿意的回復,較為可靠和可控,但回復缺乏多樣性;而生成式回復則依賴于強大的語言模型中儲存的內(nèi)部知識,不可控,解釋性差,但能生成更豐富的回復。把檢索和生成結(jié)合起來,Facebook AI research 聯(lián)合 UCL 和紐約大學于 2020 年提出外部知識檢索加持下的生成模型,Retrieval-Augmented Generation (RAG)

論文名稱:Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks
論文地址:http://arxiv.org/abs/2005.11401
論文代碼:https://github.com/huggingface/transformers/tree/master/examples/research_projects/rag

模型結(jié)構(gòu)

RAG 由兩部分組成,第一部分負責根據(jù) query x x x 檢索出 top-k 個匹配的文檔 z i z_i zi?,第二部分將 query 和文檔拼接起來送入 seq2seq 模型,生成回復 y y y

第一部分:Retriever

在第一部分 Retriver 中,RAG 通過兩個不同的 BERT 把外部知識和 query 嵌入為稠密向量,做內(nèi)積得到內(nèi)積最大的 k 個文檔。將 query 和文檔拼接起來組成 k 個輸入,作為第二部分的輸入。

第二部分:Generator

在第二部分 Generator 中,有兩種使用文檔的方式,第一種是使用同一個文檔生成每個詞,先確定一個文檔 z i z_i zi?,然后計算 p ( y ∣ x , z i ) p(y|x,z_i) p(yx,zi?);第二種是使用不同的文檔生成每個詞,對于第 i i i個位置,候選詞的概率等于所有文檔的條件概率之和,即計算候選詞對文檔的邊際概率。
第一種稱為 RAG-Sequence model:

第二種稱為 RAG-Token model:

BART 是一個基于完整的 transformer 預訓練模型,使用去噪作為預訓練任務。作者選用 BARTlarge 作為 RAG 的生成器。

在訓練過程中,只有負責嵌入 query 的 BERT 和負責生成的 BART 參與微調(diào)更新參數(shù),負責嵌入外部知識的 BERT 不用更新參數(shù)。在測試過程中,RAG-Token model 在計算當前詞的概率時,前面位置候選詞的概率已經(jīng)完成計算了。因此,RAG-Token model 如同樸素的生成模型一樣使用 beam search 解碼。而 RAG-Sequence model 要遍歷完所有文檔才能得到每個位置候選詞的概率。因此需要對每個文檔使用 beam search 解碼,然后再整合。

實驗結(jié)果

作者在四個知識密集型的任務上測試了 RAG 的性能,統(tǒng)一使用維基百科(包含2100萬個文檔)作為外部知識:

  • Open-domain question answering:開放域問答,指沒有參考文檔的問答。從 Table 1 來看,RAG 在大部分數(shù)據(jù)集上表現(xiàn)最好;
  • Abstractive question answering:抽取式問答,是從數(shù)據(jù)集給的文檔中選取一些詞作為回答。在實驗中,作者丟棄了數(shù)據(jù)集提供的文檔 gold context,把抽取式問答當作了開放域問答。從 Table 2 的 MSMARCO 來看,RAG 不敵加了 gold context 的模型,但比樸素的 BART 表現(xiàn)好;
  • Jeopardy question generation:開放域問題生成,前面兩個任務都是根據(jù)問題生成回答,這個任務是根據(jù)回答生成問題;
  • Fact verification:一個三分類推理任務,推理一段陳述被維基百科支持/被維基百科否認/無法判斷。

結(jié)果分析

總體來看,RAG 在開放域回答和開放域問題生成上取得較好的成績,而在依賴于 gold context 的任務上表現(xiàn)較差。與 BART 的結(jié)果對比可以發(fā)現(xiàn),作者融合檢索外部知識可以提高模型性能。同時,RAG 在生成句子的質(zhì)量上也可圈可點。
從生成的結(jié)果可以看到,對比 BART,RAG 可以生成不重復、多樣化和準確的回答。

RAG 的可解釋性可以體現(xiàn)在解碼過程中,文檔對候選詞的影響。分析候選詞的概率可以發(fā)現(xiàn),外部知識負責指導生成的大概內(nèi)容,然后模型的內(nèi)部知識負責生成具體的回復。例如,生成“sun”的時候,第二個文檔占主導,而在解碼“sun”后面的單詞時,文檔的概率都不高,說明是模型的內(nèi)部知識在起作用。作者也通過樸素的 BART 來驗證了這一觀點。

總結(jié)

  • 在需要借助外部知識才能進行的生成任務上,RAG 表現(xiàn)出細致多樣的生成能力,并在三個開放域問答任務上取得了 SOTA 的成績;
  • 對比 T5 和 BART,RAG 更新外部知識是低成本的;
  • RAG 的 Retriver 使用稠密向量進行檢索,作者也嘗試直接使用基于重復詞的檢索算法 BM25,發(fā)現(xiàn) BM25 只有在 fact verification 任務上比稠密向量好;
  • RAG 為我們提供了外部知識和內(nèi)部知識如何交互的新思路,雖然作者只在問答任務中進行實驗,但 RAG 也可以應用于其他 NLP 任務。例如,在閑聊對話系統(tǒng)中,RAG 可以讓回復更加可控可解釋,回答更豐富。

RAG 已成為檢索融合生成的經(jīng)典范例,而且還有進一步發(fā)展的空間,相信未來檢索融合生成的工作會越來越多。

總結(jié)

以上是生活随笔為你收集整理的【论文笔记】检索还是生成回复?RAG:我都要的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。