电竞比分网-中国电竞赛事及体育赛事平台

分享

基于檢索的自然語言處理模型研究梳理

 520jefferson 2022-01-10

? 作者|張北辰

大規(guī)模預訓練模型可以隱式的編碼知識,在多種下游任務取得了巨大成功,但仍存在擴大規(guī)模的資源消耗、無法及時更新世界知識等問題。部分研究者將檢索方法引入NLP模型,有效解決了上述問題。筆者對近年頂級會議與近期arXiv上的一些相關(guān)工作進行了解讀,文章也同步發(fā)布在AI Box知乎專欄(知乎搜索 AI Box專欄),歡迎大家在知乎專欄的文章下方評論留言,交流探討!

導讀

大規(guī)模預訓練模型可以隱式的編碼知識并應用于下游任務,為開放域問答、對話、摘要等任務帶來了巨大的性能提升。然而不斷擴大語言模型參數(shù)量以及訓練數(shù)據(jù)規(guī)模也可能帶來如下問題:

  1. 低效。模型規(guī)模數(shù)量級增大帶來的性能增益可能越來越小。
  2. 靜態(tài)。預訓練模型編碼隱式知識的方式難以對具有時效性的知識進行調(diào)整。
  3. 不透明。研究者很難判斷模型本身掌握了什么知識,在完成任務時用到了哪些知識。在很多下游任務中,語言模型可能會產(chǎn)生事實幻覺(Fact hallucination)。

為了解決上述問題,研究者們提出了改進任務表現(xiàn)的另一種思路:基于檢索的自然語言模型。這類模型可以在外部知識庫中搜索所需信息,結(jié)合外部知識以及語言模型的本身優(yōu)勢完成任務。

本文整理了基于檢索的自然語言模型及其下游應用的部分研究進展,歡迎大家批評和交流。

Generalization through memorization: Nearest neighbor language models [ICLR 2020]

這篇論文提出了一種將 kNN 最近鄰模型與語言模型預測分布相結(jié)合的方法,NN-LM。該方法可以有效提高預訓練語言模型對例如事實知識等稀有文本形式的建模能力。

圖片

基于訓練集 建立數(shù)據(jù)庫,其中鍵為詞預訓練權(quán)重,值為目標詞。在給定上下文 預測當前目標詞 時,從數(shù)據(jù)庫中找到的 個最近鄰詞,并將具有相同目標詞的概率進行聚合,得到分布 ,將該分布與語言模型分布結(jié)合得到最終的預測目標詞概率分布。

文章指出,最能體現(xiàn) NN-LM 改進的樣本通常包含稀有模式,包括事實性知識、名字以及與訓練集重疊較多的句子。在這些例子中,將訓練樣本和測試樣本映射到相似的表示似乎比隱式記憶下一個句子更容易。

REALM: Retrieval-Augmented Language Model Pre-Training [ICML 2020]

這篇論文在語言模型預訓練階段中引入了一個知識檢索模型。相比于不能在下游任務中微調(diào)的 NN-LM,REALM 能夠在預訓練、微調(diào)和推理階段顯式利用大型語料庫中的知識。

圖片

REALM 將模型輸出分布 分解為檢索、預測兩個步驟:

  1. 給定輸入 ,從知識庫中檢索可能對模型有幫助的文檔集合 。文章將這個過程建模為
  2. 依據(jù)檢索結(jié)果 和輸入 生成輸出 ,建模為 ,將 視為隱變量,將目標 建模為對于所有可能有用的文檔集合 的邊緣概率分布:

模型包括知識檢索器和知識增強編碼器:

  • 知識檢索器將 建模為輸入 和文檔 內(nèi)積的歸一化指數(shù)函數(shù)。該論文從反向傳播公式的角度出發(fā),證明了檢索模型的訓練能夠更好的完成最終任務目標。
  • 知識增強編碼器將輸入 和文檔 拼接輸入到 Transformer 編碼器中。預訓練任務采用 masked language modeling (MLM),開放域問答任務中采用了預測 span 的訓練方式。

在具體實現(xiàn)中,該工作用可能性最高的 個文檔的概率來近似 ,從而實現(xiàn)對檢索器的反向傳播。由于參數(shù)更新,對整個知識庫進行重新編碼計算量巨大。因此作者在預訓練階段選擇每隔若干訓練步刷新知識庫索引。

Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks [NeurIPS 2020]

這項工作引入文檔檢索器和外部知識庫來增強生成式語言模型在知識密集任務中表現(xiàn)。相比于 REALM 使用抽取式的方法完成下游任務,RAG 將檢索技術(shù)用于生成式語言模型,形式更靈活,適用范圍更廣。

圖片

RAG 模型框架包括檢索器 和生成器 兩部分。檢索器在給定輸入 的條件下返回 top-K 文檔分布,生成器基于上下文 token、原始輸入 和一篇檢索文檔 生成當前 token。

文章提出了兩種對隱文檔進行邊緣化的方法來端到端地訓練模型。

  • RAG-Sequence Model 與 REALM 的思路比較相似,使用相同的文檔來生成整個目標序列。將單個檢索文檔作為單一隱變量進行邊緣化,并做 top-K 近似。
  • RAG-Token Model 在生成每個 token 時使用不同的檢索文檔進行邊緣化,使得模型在生成一個答案時可以參考不同的檢索文檔。

相比于直接從知識庫中檢索答案,生成答案有一定優(yōu)勢。只包含答案線索而不包含正確答案的檢索樣本仍然有助于生成答案,使得模型能夠更有效地訓練;即使正確答案不包含在任何檢索樣本中,RAG 仍可能生成正確答案。

Dense Passage Retrieval for Open-Domain Question Answering [ACL 2020]

這篇論文提出一種不進行額外預訓練的稠密檢索方法完成開放域問答任務。相比于基于反向填空任務 ICT 來進行額外預訓練的 ORQA,DPR 只使用問題答案對訓練檢索器。

DPR 模型架構(gòu)為雙塔 BERT 模型,以最大化問題和相關(guān)文檔表示的內(nèi)積為目標進行優(yōu)化。在負例選取方面,DPR 采用訓練集中其它問題對應的正例作為當前問題的負例,并具體實現(xiàn)中使用 batch 內(nèi)負例進行訓練,這樣可以利用矩陣乘法加快訓練過程。

Leveraging Passage Retrieval with Generative Models for Open Domain Question Answering [EACL 2021]

這項工作提出了一種文檔利用文檔檢索結(jié)合生成式語言模型完成開放域問答任務的方法。以往的生成式問答需要參數(shù)量較大的生成式語言模型,而 FiD 借助檢索外部知識來提高生成式問答的性能。

圖片

FiD 采用先檢索后生成的范式。檢索器基于 BM25 或 DPR;生成器將問題與各檢索文檔拼接后分別編碼后拼接,解碼器對拼接后的表示進行 cross attention,各檢索文檔信息在解碼器部分融合。

具體實驗中,當檢索文檔數(shù)量增多時,模型性能顯著提升,這表明生成式語言模型能夠很好地將多個文檔檢索結(jié)果融合。

Adaptive Semiparametric Language Models [TACL 2021]

這篇論文提出了一種將參數(shù)化神經(jīng)網(wǎng)絡與非參數(shù)化外部記憶模塊結(jié)合的語言模型。與 kNN-LM 的不同是,SPALM 通過門控機制對檢索片段進行后處理,將檢索樣本加入了訓練過程。

圖片

模型架構(gòu)包括兩部分。對于短期記憶,基于 Transformer-XL,將擴展上下文編碼成隱狀態(tài)進行緩存;對于長期記憶,使用永久數(shù)據(jù)庫,并基于稀疏檢索最近鄰方法對數(shù)據(jù)進行檢索。除此之外,文章設(shè)計了一種上下文依賴的門控機制來結(jié)合局部、擴展和全局信息。

End-to-End Training of Multi-Document Reader and Retriever for Open-Domain Question Answering [NeurIPS 2021]

這篇論文提出了一種端到端的結(jié)合多個檢索文檔信息的開放域問答方法。

圖片

EMDR 的模型結(jié)構(gòu)包括檢索器、閱讀器兩部分。檢索器是經(jīng)典的雙塔 BERT 模型,使用無監(jiān)督訓練過程進行初始化;閱讀器基于 FiD 模型。

端到端訓練方法中,與 REALM 將單個檢索文檔作為隱變量不同,本文將檢索文檔集合作為隱變量 , 的可能取值,則答案的邊緣似然是 ,訓練目標是找到使得上述似然函數(shù)最大化的 。文章采用 EM 算法來學習隱變量模型,給定所有觀察變量,迭代計算 的后驗來更新參數(shù),使用 兩種估計來更新兩個模塊的參數(shù):

  1. 閱讀器參數(shù) 。利用 top-K 文檔集合及其對應分數(shù)來構(gòu)造 ,這等價于用先驗 來估計 。
  2. 檢索器參數(shù) 。文章基于后驗估計,使用答案 的額外信息來評估 ,從而更新 。文章假設(shè)檢索文檔集合中每個文檔的概率之和最大化與集合概率最大化等價,將 轉(zhuǎn)換為 ,再進一步基于貝葉斯定理轉(zhuǎn)換。

最終的訓練目標如下,優(yōu)化過程采用 EM 算法迭代求解,其中 為停止梯度操作符:

Internet-Augmented Dialogue Generation [arXiv:2107]

這項研究將互聯(lián)網(wǎng)作為外部知識庫,并通過實時搜索來增強對話生成,使對話系統(tǒng)能夠聚合更多的常識,并將其反映在對話中。

圖片

具體方法由兩個部分組成,一是搜索查詢生成器,二是基于 FiD 的編碼器-解碼器模型。搜索查詢生成器是一個編碼器-解碼器模型,將對話環(huán)境作為輸入,并生成一個搜索查詢,隨后在互聯(lián)網(wǎng)中檢索相關(guān)文檔。FiD 式模型對每個文檔進行單獨編碼,并將其與對話環(huán)境編碼拼接,最后用解碼器生成目標序列。

Improving Language Models by Retrieving from Trillions of Tokens [arXiv:2112]

這項工作提出了一種從大規(guī)模語料庫中檢索文檔塊用于增強自回歸模型的方法。相較于之前檢索增強生成的方法,該論文使用了超大規(guī)模的檢索語料庫,表明了檢索語料庫規(guī)模的可擴展性。

圖片

首先,RETRO 建立了用于檢索的數(shù)據(jù)庫,其鍵為 BERT 編碼表示,值為對應的文檔塊以及該文檔塊的下一個文檔塊。RETRO 的模型架構(gòu)包含檢索器,編碼器以及帶有塊注意力(Chunked cross attention, CCA)模塊的解碼器。模型將輸入也分為若干固定大小的塊,基于已經(jīng)生成的上下文及上下文分塊檢索到的文檔塊生成當前目標詞。

圖片
  • 檢索器基于固定的 BERT 預訓練模型,給定查詢塊,在數(shù)據(jù)庫中搜索最近鄰,輸出檢索到的文檔塊及后續(xù)文檔塊。

  • 編碼器負責編碼檢索文檔塊。其中檢索文檔塊的編碼過程會對輸入文檔塊表示進行 cross attention,使得檢索文檔塊的編碼能夠以可導的方式進行優(yōu)化。

  • 解碼器是類似于 GPT 的自回歸模型,負責編碼輸入文檔塊,輸出生成結(jié)果。其模型結(jié)構(gòu)包含常規(guī)的 Transformer 解碼模塊和 CCA 解碼模塊。CCA 模塊與正常 cross attention 模塊的不同在于鍵為 的最后一個 token 到 的頭 個 token,其中 是檢索文檔塊對應的原始文檔塊,這樣的設(shè)計可以有效減低 cross attention 的計算復雜度。

實驗證明,相較于增大模型參數(shù)量,增大檢索語料庫同樣可以有效提升模型性能,使得較小規(guī)模模型的性能與大規(guī)模模型相當。

小結(jié)

以上論文從端到端訓練方式、外部數(shù)據(jù)使用方式、下游任務適配等角度對基于檢索的自然語言模型展開研究。相較于擴大模型規(guī)模的漲點方式,這類模型可以通過擴展數(shù)據(jù)庫規(guī)模和更新數(shù)據(jù)庫的方式來解決模型復雜度和知識更新的問題,顯式的檢索文檔集合也讓模型輸出的依據(jù)更加透明。

更多推薦

圖片

Efficient and Effective: 百篇論文概覽負采樣方法的前世今生

圖片

從頂會論文看輕量化微調(diào)研究進展


圖片

從頂會論文看多模態(tài)預訓練研究進展

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多