RAG+RAU:對檢索增強型語言模型(RALM)進(jìn)行全面、深入綜述
大型語言模型(LLMs)在自然語言處理(NLP)領(lǐng)域促進(jìn)了重大進(jìn)展,但它們也面臨著諸如幻覺和需要特定領(lǐng)域知識等挑戰(zhàn)。為了緩解這些問題,最近的一些方法將從外部資源檢索到的信息與LLMs相結(jié)合,顯著提高了它們在NLP任務(wù)中的表現(xiàn),但是缺乏對檢索增強型語言模型(RALM)全面概述。
因此,對包括檢索增強生成(RAG)和檢索增強理解(RAU),提供了對它們的范式、演變、分類和應(yīng)用的深入、全面綜述。
圖1:RALM研究總體概述
一、RALM是什么?
- 檢索增強語言模型(RALM):RALM是通過使用檢索到的信息來改進(jìn)語言模型的輸出,以獲得用戶滿意的結(jié)果的過程。RALM可以分類為檢索增強生成(Retrieval-Augmented Generation, RAG)和檢索增強理解(Retrieval-Augmented Understanding, RAU)。
- 交互方式:RALM的交互方式主要分為三種,如圖2所示:
順序單次交互:檢索器找到與輸入最相關(guān)的文檔,然后語言模型接收這些文檔和輸入,產(chǎn)生輸出。
順序多次交互:在長對話生成和解決多跳問題時,可能需要在語言模型和檢索器之間進(jìn)行多次交互。
并行交互:檢索器和語言模型獨立工作,輸出通過加權(quán)插值確定。
- 基本架構(gòu):RALM的基本架構(gòu)可以表示為一個函數(shù) y=F(x,z),其中 x 是輸入,y 是輸出,z 是檢索到的信息,F(xiàn)()是一個函數(shù),可以是語言模型或數(shù)據(jù)處理函數(shù)。
- 順序單次交互:在這種模式下,語言模型接收輸入 x 和相關(guān)文檔 z,然后輸出第 i 個標(biāo)記 yi。
- 順序多次交互:對于需要多次檢索的任務(wù),如長對話生成,語言模型先生成輸出,然后在需要檢索時使用已輸出的內(nèi)容進(jìn)行檢索。
- 并行交互:檢索器和語言模型并行工作,獨立處理輸入 x,然后通過插值函數(shù) I()確定輸出 y。
圖2:檢索器與語言模型交互的三種不同方式
圖3:三種交互類型的路線圖。紫色區(qū)域代表順序交互 RALM 模型的工作,紅色框表示順序多次交互 RALM 模型的工作,黃色區(qū)域指示并行交互RALM模型的工作。?
二、檢索器(Retriever)
檢索增強語言模型(RALM)中檢索器(Retriever)的作用和分類:
- 檢索器的作用:檢索器在RALM架構(gòu)中扮演著至關(guān)重要的角色,通過檢索相關(guān)信息顯著提升語言模型的準(zhǔn)確性和輸出質(zhì)量。
- 檢索方法分類:檢索方法被分為四個主要類別:
稀疏檢索(Sparse Retrieval):依賴于簡單的術(shù)語匹配,如TF-IDF和BM25算法,適用于基于知識的檢索任務(wù)。
密集檢索(Dense Retrieval):使用深度學(xué)習(xí)技術(shù),通過雙編碼器架構(gòu)生成密集的嵌入向量,以提高檢索的準(zhǔn)確性。
互聯(lián)網(wǎng)檢索(Internet Retrieval):利用互聯(lián)網(wǎng)搜索技術(shù),允許非專業(yè)人士使用RALM,適合開放領(lǐng)域和泛化。
混合檢索(Hybrid Retrieval):結(jié)合不同檢索技術(shù)的優(yōu)勢,以提高RALM架構(gòu)的有效性和魯棒性。
- 稀疏檢索:進(jìn)一步細(xì)分為詞頻(Word Frequency)和稀疏向量表示(Sparse Vector Representation),涉及使用機器學(xué)習(xí)方法來改善檢索性能。
- 密集檢索:包括詞嵌入(Word Embedding)、多模態(tài)檢索(Multimodal Retrieval)和知識蒸餾(Knowledge Distillation)技術(shù),利用深度學(xué)習(xí)模型來增強檢索能力。
- 互聯(lián)網(wǎng)檢索:討論了如何利用互聯(lián)網(wǎng)作為檢索工具,包括使用商業(yè)搜索引擎API和公共爬取快照構(gòu)建的查找表。
- 混合檢索:通過結(jié)合不同的檢索方法,如kNN搜索、BM25和翻譯模型,來提高檢索性能。
- 檢索器的優(yōu)化:研究人員通過提高檢索質(zhì)量控制和優(yōu)化檢索時間來提升檢索器的性能。
RALM工作中檢索器的總結(jié)
三、語言模型(Language Model, LM)
檢索增強語言模型(RALM)中語言模型(Language Model, LM)的作用和分類:
- 語言模型的作用:語言模型在RALM中扮演著核心角色,它們的發(fā)展極大地推動了自然語言處理(NLP)領(lǐng)域,使語言模型更加強大和有創(chuàng)造力。
- 語言模型的分類:在RALM架構(gòu)中,語言模型通常被分為以下幾類:
自編碼器語言模型(AutoEncoder Language Model):這類模型通過無監(jiān)督學(xué)習(xí)來捕捉輸入文本的關(guān)鍵特征,常用于理解任務(wù)。
自回歸語言模型(AutoRegressive Language Model):這些模型旨在預(yù)測下一個詞,基于前面的詞,適用于生成任務(wù),如對話生成和機器翻譯。
編碼器-解碼器語言模型(Encoder-Decoder Language Model):這類模型使用編碼器-解碼器架構(gòu)來處理文本,適用于需要同時理解源文本和生成目標(biāo)文本的任務(wù)。
- 自編碼器語言模型:詳細(xì)介紹了BERT等模型如何通過遮蔽語言模型(Masked Language Model, MLM)來學(xué)習(xí),以及它們在NLU任務(wù)中的應(yīng)用。
- 自回歸語言模型:討論了GPT系列模型和其他自回歸模型在NLP任務(wù)中的重要性,尤其是在生成文本方面。
- 編碼器-解碼器語言模型:介紹了Transformer架構(gòu)和它的變種,如T5和BART,它們?nèi)绾瓮ㄟ^編碼器和解碼器來處理復(fù)雜的文本轉(zhuǎn)換任務(wù)。
- 語言模型的優(yōu)化:探討了如何通過指令調(diào)整(instruction tuning)和結(jié)構(gòu)模型優(yōu)化來提高語言模型的性能。
- 后生成輸出增強:討論了如何通過后處理來增強語言模型的輸出,例如使用KNN-LM(K-Nearest Neighbor Language Model)來改進(jìn)輸出質(zhì)量。
- 端到端訓(xùn)練:介紹了端到端訓(xùn)練方法,這種方法通過最小化手動干預(yù)并專注于數(shù)據(jù)來優(yōu)化RALM。
- 中間模塊:討論了構(gòu)建中間模塊以協(xié)調(diào)檢索器和語言模型活動的嘗試,以解決空間限制或大型語言模型的黑盒問題。
- 未來研究方向:提出了未來研究的方向,包括提高模型的魯棒性、改進(jìn)檢索技術(shù)、考慮成本效益的解決方案,以及擴(kuò)展應(yīng)用領(lǐng)域。
RALM方法中的語言模型總結(jié)?
四、增強組件(RALM Enhancement )
如何通過增強組件來提升檢索增強語言模型(RALM)的輸出質(zhì)量?
- 檢索器增強(Retriever Enhancement):介紹了如何通過提高檢索質(zhì)量控制和優(yōu)化檢索時機來增強檢索器的性能。這包括使用更精細(xì)的檢索技術(shù),如自然語言推理和摘要模型,以及通過分類信息來提高檢索的相關(guān)性。
- 語言模型增強(LM Enhancement):在語言模型方面的增強工作,包括預(yù)生成檢索處理、結(jié)構(gòu)模型優(yōu)化和生成后輸出增強。這些方法旨在提高語言模型的生成能力和理解能力。
- 整體增強(Overall Enhancement):對RALM架構(gòu)整體的改進(jìn),包括端到端訓(xùn)練和構(gòu)建中間模塊。端到端訓(xùn)練方法旨在最小化手動干預(yù),而中間模塊則用于協(xié)調(diào)檢索器和語言模型的活動。
RALM增強方法的分類?
五、數(shù)據(jù)源(Data Sources)
檢索增強語言模型(RALM)中使用的常見數(shù)據(jù)源,并根據(jù)數(shù)據(jù)的結(jié)構(gòu)化程度對它們進(jìn)行了分類:
- 結(jié)構(gòu)化數(shù)據(jù)(Structured Data):這類數(shù)據(jù)具有明確的結(jié)構(gòu),如表格和知識圖譜,通常用于存儲數(shù)字、日期、文本等數(shù)據(jù)類型。結(jié)構(gòu)化數(shù)據(jù)易于使用結(jié)構(gòu)化查詢語言(如SQL)進(jìn)行查詢、分析和處理。?
- 非結(jié)構(gòu)化數(shù)據(jù)(Unstructured Data):與結(jié)構(gòu)化數(shù)據(jù)相對,非結(jié)構(gòu)化數(shù)據(jù)沒有明確定義的數(shù)據(jù)結(jié)構(gòu),包括文本、圖像和音頻等多種形式。這類數(shù)據(jù)需要自然語言處理和圖像識別等技術(shù)來解析和理解。
六、應(yīng)用(Applications)
檢索增強語言模型(RALM)在自然語言處理(NLP)中的各種應(yīng)用:
- RALM在NLG任務(wù)上的應(yīng)用:涉及生成任務(wù),如機器翻譯、數(shù)學(xué)教學(xué)和對話生成。這些應(yīng)用主要依賴于模型的生成能力。?
- RALM在NLU任務(wù)上的應(yīng)用:涉及理解任務(wù),如槽位填充、圖像生成和事實檢查。這些任務(wù)主要依賴于模型的理解能力。?
- RALM在NLU和NLG任務(wù)上的綜合應(yīng)用:涉及同時需要生成和理解能力的任務(wù),如文本摘要和問答系統(tǒng)。
RALM應(yīng)用的分類
七、評估方法與基準(zhǔn)(Evaluation)
檢索增強語言模型(RALM)的評估方法和基準(zhǔn):
- 評估方法:介紹了用于評估RALM性能的多種方法,包括通用基準(zhǔn)測試和特定于RALM的評估指標(biāo)。
- 基準(zhǔn)測試:使用不同的數(shù)據(jù)集來測試RALM在各種任務(wù)上的表現(xiàn),如WikiEval、LLM-generated、MMLU-Med等。
- 評估指標(biāo):包括檢索質(zhì)量、生成質(zhì)量、上下文相關(guān)性、答案相關(guān)性、魯棒性、信息整合、錯誤檢測等。
- 評估模型:介紹了各種評估模型,如RAGAS、RGB、CRUD-RAG、ARES、MIRAGE和RECALL,它們各自關(guān)注不同的評估方面。
- RAGAS:使用WikiEval數(shù)據(jù)集來評估RALM的忠實度、答案相關(guān)性和上下文相關(guān)性。
- RGB:開發(fā)了一個雙語中文和英文的評估系統(tǒng),使用準(zhǔn)確性、拒絕率和錯誤檢測率等指標(biāo)。
- CRUD-RAG:考慮了檢索組件和構(gòu)建外部知識庫的影響,這些之前未被充分考慮。
- ARES:使用輕量級語言模型來確定RALM各個組件的質(zhì)量,并使用人工標(biāo)注的數(shù)據(jù)點進(jìn)行預(yù)測驅(qū)動的推理。
- MIRAGE:專注于醫(yī)療領(lǐng)域的評估,整合了五個數(shù)據(jù)集,包括MMLU-Med,來評估醫(yī)療RALM的能力。
- RECALL:通過在現(xiàn)有數(shù)據(jù)集中引入不準(zhǔn)確信息,然后測試RALM是否容易受到這些不準(zhǔn)確信息的影響。
RALM中評估方法的總結(jié)
八、局限性與未來展望(Evaluation)
檢索增強語言模型(RALM)目前面臨的一些限制:
- 魯棒性不足:RALM系統(tǒng)雖然在多個領(lǐng)域表現(xiàn)出性能優(yōu)勢,但由于引入了檢索技術(shù),也引入了多種不確定性。例如,通過簡單的前綴攻擊,可以降低RALM輸出的相關(guān)性和準(zhǔn)確性,甚至改變檢索器的檢索策略。
- 檢索結(jié)果質(zhì)量不佳:盡管提出了多種模型來優(yōu)化輸出質(zhì)量,但檢索結(jié)果的質(zhì)量仍不能完全與語言模型對齊。特別是當(dāng)使用互聯(lián)網(wǎng)作為檢索工具時,互聯(lián)網(wǎng)來源的質(zhì)量參差不齊,如果未能適當(dāng)考慮,可能會引入噪聲或誤導(dǎo)性信息。
- 成本過高:一些現(xiàn)有的RALM需要進(jìn)行大量的模型更改以及復(fù)雜的預(yù)訓(xùn)練和微調(diào)操作,這大大增加了時間和空間開銷,降低了RALM的可擴(kuò)展性。此外,隨著檢索規(guī)模的增加,存儲和訪問數(shù)據(jù)源的復(fù)雜性也隨之增加。
- 應(yīng)用范圍有限:盡管RALM在多個領(lǐng)域提高了語言模型的性能,但從應(yīng)用角度來看,改進(jìn)并不顯著。RALM仍然在執(zhí)行一些早期語言模型的常規(guī)工作,例如問答和摘要。雖然最近有一些有趣的應(yīng)用方向,如數(shù)學(xué)教學(xué)和槽位填充,但這還不夠。
當(dāng)前RALM模型的局限性和未來展望的總結(jié)
RAG and RAU: A Survey on Retrieval-Augmented Language Model in Natural Language Processing
https://arxiv.org/pdf/2404.19543
https://github.com/2471023025/RALM_Survey
本文轉(zhuǎn)載自 ??PaperAgent??,作者: PaperAgent
