OPEN-RAG:利用開源大模型增強(qiáng)檢索增強(qiáng)推理 原創(chuàng)
檢索增強(qiáng)生成(RAG)已被證明可以提高大型語(yǔ)言模型(LLMs)的事實(shí)準(zhǔn)確性,但現(xiàn)有方法在有效使用檢索到的證據(jù)方面往往存在有限的推理能力,特別是當(dāng)使用開源LLMs時(shí)。
引入了一個(gè)新穎的框架OPEN-RAG,增強(qiáng)基于開源大型語(yǔ)言模型的檢索增強(qiáng)推理的能力,特別是處理復(fù)雜推理任務(wù)時(shí)的有限推理能力。
方法
1.LLMs轉(zhuǎn)MOE
模型轉(zhuǎn)換:OPEN-RAG將任意密集的LLM轉(zhuǎn)換為參數(shù)高效的稀疏專家混合(MoE)模型。該模型不僅能夠自我反思,還能處理復(fù)雜的推理任務(wù),包括單跳和多跳查詢。
路由器R從頭開始訓(xùn)練。FFN層保持凍結(jié)狀態(tài),并由基于并行適配器的專家E進(jìn)行調(diào)整。其他層被復(fù)制。
路由模塊:路由模塊負(fù)責(zé)根據(jù)輸入的歸一化輸出選擇Top-k專家。使用Softmax函數(shù)來(lái)計(jì)算每個(gè)專家的激活概率。
適配器模塊:每個(gè)專家的適配器模塊負(fù)責(zé)調(diào)整專家的輸出,以更好地適應(yīng)當(dāng)前的查詢。適配器模塊的參數(shù)是在訓(xùn)練過程中更新的,而原始的FFN層參數(shù)保持不變。
輸出:MoE模型的輸出是激活的專家輸出的加權(quán)和。
訓(xùn)練策略:在微調(diào)過程中使用QLora適配器,它具有負(fù)載平衡目標(biāo)和標(biāo)準(zhǔn)條件語(yǔ)言建模目標(biāo)。在訓(xùn)練和推理期間,只有部分專家(例如2個(gè)專家)是活躍的。
通過上述步驟,OPEN-RAG成功地將一個(gè)密集型的大型語(yǔ)言模型轉(zhuǎn)換為一個(gè)參數(shù)高效的稀疏混合專家模型,使其能夠更有效地處理復(fù)雜的推理任務(wù)。這種轉(zhuǎn)換不僅提高了模型的性能,還保持了模型的規(guī)模和參數(shù)效率。
2.混合自適應(yīng)檢索
大型語(yǔ)言模型(LLMs)在處理復(fù)雜問題時(shí),需要從外部知識(shí)源檢索信息以提高回答的準(zhǔn)確性。然而,頻繁的檢索會(huì)降低模型的推理速度,因此需要一種方法來(lái)動(dòng)態(tài)決定是否需要進(jìn)行檢索。
提出了一種混合自適應(yīng)檢索方法,根據(jù)模型置信度確定檢索的必要性,并在性能和速度之間取得平衡。該方法通過生成檢索/無(wú)檢索反射令牌來(lái)測(cè)量在強(qiáng)制無(wú)檢索設(shè)置下輸出的置信度,并根據(jù)這些置信度決定是否進(jìn)行檢索。
OPEN-RAG模型在訓(xùn)練時(shí)學(xué)習(xí)生成檢索(RT)和不檢索(NoRT)反射令牌。在推理時(shí)評(píng)估模型生成的輸出序列的置信度。
設(shè)計(jì)了兩種不同的置信度評(píng)分函數(shù):
- fminp:輸出序列中各個(gè)標(biāo)記概率的最小值。
- fmeanp:輸出序列中各個(gè)標(biāo)記概率的幾何平均值。
- 置信度評(píng)分函數(shù)
并且,使用一個(gè)可調(diào)的閾值γ來(lái)控制檢索頻率。如果置信度評(píng)分低于閾值γ,則觸發(fā)檢索。
3.推理過程
open-rag推理流程:首先,學(xué)習(xí)生成檢索/不檢索標(biāo)記,對(duì)比相關(guān)和不相關(guān)上下文,并將答案歸類為部分支持、完全支持或不支持。然后在推理時(shí),給定一個(gè)(多跳)用戶查詢,首先強(qiáng)制模型在輸入條件為不檢索的情況下生成答案,并根據(jù)模型的置信度動(dòng)態(tài)決定是否需要檢索。
- 接收輸入查詢:模型接收一個(gè)用戶輸入的查詢(q)。
- 生成檢索令牌:模型首先判斷是否需要進(jìn)行檢索來(lái)更好地回答這個(gè)查詢,并生成相應(yīng)的檢索令牌([RT]/[NoRT])。
- 無(wú)檢索生成答案:如果模型決定不需要檢索([NoRT]),它將使用其內(nèi)部知識(shí)(參數(shù)知識(shí))來(lái)生成答案。
- 執(zhí)行自適應(yīng)檢索:如果模型決定需要檢索([RT]),則執(zhí)行以下步驟:使用一個(gè)預(yù)定義的檢索器從外部知識(shí)源檢索最相關(guān)的文檔。根據(jù)需要,可以執(zhí)行單次檢索或多跳檢索。
- 處理檢索到的文檔:對(duì)于每個(gè)檢索到的文檔(s_t),模型執(zhí)行以下操作:
- 生成相關(guān)性令牌([Relevant]/[Irrelevant]),以判斷文檔是否與查詢相關(guān)。
- 如果文檔相關(guān),生成基礎(chǔ)令牌([Fully Supported]/[Partially Supported]),以指示答案的準(zhǔn)確性。
- 生成效用令牌([U:1]-[U:5]),以評(píng)估文檔對(duì)回答查詢的有用性。
- 生成答案:模型并行處理所有檢索到的文檔,并根據(jù)相關(guān)性、基礎(chǔ)和效用令牌的加權(quán)置信度分?jǐn)?shù)對(duì)所有可能的答案進(jìn)行排序。選擇排名最高的答案作為最終輸出。
- 輸出最終答案:模型輸出最終的答案。
實(shí)驗(yàn)
實(shí)驗(yàn)數(shù)據(jù)收集:為了使OPEN-RAG能夠處理無(wú)需檢索的查詢以及需要檢索的單跳和多跳查詢,研究者構(gòu)建了包含各種類型任務(wù)和數(shù)據(jù)集的訓(xùn)練數(shù)據(jù)。對(duì)于每個(gè)原始數(shù)據(jù)對(duì)(q,y),研究者使用真實(shí)標(biāo)注或批評(píng)LLM生成帶有反射令牌的新實(shí)例。
OPEN-RAG在所有監(jiān)督微調(diào)的LLMs中展示了顯著的性能提升,甚至在許多較大的模型(如65B CoVE)上也表現(xiàn)出色。特別是在多跳推理任務(wù)中,如HotpotQA
OPEN-RAG在有檢索的開源RAG模型中也表現(xiàn)出色,始終優(yōu)于現(xiàn)有的開源RAG模型,并且在大多數(shù)任務(wù)中達(dá)到了與專有模型相當(dāng)?shù)乃健?/p>
參考文獻(xiàn)
- OPEN-RAG: Enhanced Retrieval-Augmented Reasoning with Open-Source Large Language Models,??https://arxiv.org/pdf/2410.01782v1??
本文轉(zhuǎn)載自公眾號(hào)大模型自然語(yǔ)言處理 作者:余俊暉
