VisRAG:清華大學(xué)&面壁智能提出了一種新的RAG思路,效果提升明顯
1. 為啥要提出VisRAG?
檢索增強(qiáng)生成(Retrieval-augmented generation, RAG) 已經(jīng)成為解決LLM幻覺(jué)和知識(shí)更新的經(jīng)典方案,典型的RAG流程是基于文本的(以下簡(jiǎn)稱(chēng)TextRAG),以分割后的文本作為檢索單元。
但是在真實(shí)場(chǎng)景中,知識(shí)往往以多模態(tài)的形式出現(xiàn),比如教科書(shū)、手冊(cè)等。這些文檔中的文本與圖像交織在一起。為了從這類(lèi)數(shù)據(jù)源中提取文本,通常需要一個(gè)解析階段,這包括布局識(shí)別、光學(xué)字符識(shí)別(OCR)和文本合并等后處理步驟。雖然這種方法在大多數(shù)情況下是有效的,但解析過(guò)程還是會(huì)不可避免地引入錯(cuò)誤,從而對(duì)檢索和生成階段產(chǎn)生負(fù)面影響。
TextRAG只利用了文本信息,忽略了其他模態(tài),如圖像中可能包含的信息。盡管已經(jīng)對(duì)圖像檢索和多模態(tài)RAG進(jìn)行了研究,但這些研究主要集中在預(yù)定義場(chǎng)景中,其中圖像和描述性文本已經(jīng)被正確提取和配對(duì),與現(xiàn)實(shí)世界中文本和圖像(包括圖形)常常交錯(cuò)在單個(gè)文檔頁(yè)面內(nèi)的情況有所不同。
所以,本文作者提出了一種VisRAG,旨在探索完全基于視覺(jué)語(yǔ)言模型(VLMs)構(gòu)建純視覺(jué)RAG流程的可行性。
2. 什么是VisRAG?
VisRAG是一種新型視覺(jué)檢索增強(qiáng)生成系統(tǒng),由VLM驅(qū)動(dòng)的檢索器VisRAG-Ret和生成器VisRAG-Gen組成。
圖片
如上圖(左邊)所示,TextRAG 通常使用基于文本的單元進(jìn)行檢索和生成。右邊是 VisRAG,與傳統(tǒng)RAG框架利用文本片段進(jìn)行檢索和生成不同,VisRAG通過(guò)文檔圖像來(lái)保留全部信息,確保數(shù)據(jù)的完整性。
2.1 檢索階段
VisRAG的首個(gè)環(huán)節(jié),即VisRAG-Ret,在給定查詢(xún)q的情況下,從文檔集合D中檢索出一系列頁(yè)面。
借鑒了文本密集檢索器的 Bi-Encoder 架構(gòu),將查詢(xún)和文檔(直接使用文檔圖像,而非依賴(lài)提取的文本內(nèi)容)映射到嵌入空間。
Bi-Encoders:將句子 A 和 B 獨(dú)立地傳遞給 BERT,從而產(chǎn)生句子嵌入 u 和 v,然后可以使用余弦相似度比較。
查詢(xún)和頁(yè)面在VLM中分別以文本和圖像的形式獨(dú)立編碼,為了得到最終的嵌入向量,采用了位置加權(quán)平均池化處理VLM的最后一層隱藏狀態(tài)。
2.2 生成階段
VisRAG的第二環(huán)節(jié):VisRAG-Gen,利用視覺(jué)語(yǔ)言模型(VLM)根據(jù)用戶(hù)查詢(xún)和檢索出的頁(yè)面生成答案??紤]到檢索出的頁(yè)面往往都不止一頁(yè),而大多數(shù)多模態(tài)大模型只能接受單張圖片,所以提出了兩種方案來(lái)實(shí)現(xiàn):
? 頁(yè)面合并(Page Concatenation):將檢索出的頁(yè)面合并為一張圖片,在VisRAG中,作者主要嘗試的是水平合并。
? 加權(quán)篩選(Weighted Selection):讓VLM為top-k中的每個(gè)頁(yè)面生成一個(gè)答案,并選擇置信度最高的答案作為最終答案。
3. 效果對(duì)比
3.1 檢索性能
對(duì)比了VisRAG-Ret與三種情況模型進(jìn)行對(duì)比:
? a. 現(xiàn)成模型
? b. 僅利用合成數(shù)據(jù)的跨領(lǐng)域模型
? c. 同時(shí)利用領(lǐng)域內(nèi)和合成數(shù)據(jù)
圖片
如上表(a)(b)所示,VisRAG-Ret在跨領(lǐng)域數(shù)據(jù)上的訓(xùn)練成果超越了所有現(xiàn)成基線模型,包括文本和視覺(jué)模型。它顯著地優(yōu)于BM25和bge-large,并超越了擁有7.85B參數(shù)的先進(jìn)文本檢索模型NV-Embed-v2。
bge-large和NV-Embed-v2是在數(shù)百萬(wàn)查詢(xún)-文檔對(duì)上訓(xùn)練的,比VisRAG-Ret訓(xùn)練數(shù)據(jù)多出10倍。盡管bge-large在MTEB等基準(zhǔn)測(cè)試中勝過(guò)BM25,但在作者的數(shù)據(jù)集上表現(xiàn)不佳,表明:在干凈文本上訓(xùn)練的嵌入模型難以應(yīng)對(duì)現(xiàn)實(shí)世界文檔解析出的文本。
當(dāng)在相同的數(shù)據(jù)設(shè)置下訓(xùn)練時(shí),VisRAG-Ret顯著超越了文本模型MiniCPM (OCR) & (Captioner)和視覺(jué)模型SigLIP。
在跨領(lǐng)域環(huán)境中,VisRAG-Ret的優(yōu)勢(shì)更加明顯,相較于MiniCPM (OCR)和SigLIP分別實(shí)現(xiàn)了15%和22%的提升,而在領(lǐng)域內(nèi)環(huán)境中提升為8%和10%。說(shuō)明VisRAG-Ret相比以文本和視覺(jué)為中心的模型具有更佳的泛化能力。
盡管MiniCPM (Captioner)使用了相同的VLM MiniCPM-V 2.0進(jìn)行解析,但其表現(xiàn)不及VisRAG-Ret,這表明直接用VLMs編碼比用VLMs解析更為有效??赡苁且?yàn)樵趯⒍嗄B(tài)信息轉(zhuǎn)錄為文本時(shí)不可避免地會(huì)有信息損失。
MiniCPM (OCR)和SigLIP在不同數(shù)據(jù)集上的表現(xiàn)各異:
? SigLIP在ArxivQA和ChartQA中表現(xiàn)出色,而MiniCPM (OCR)在DocVQA和InfographicsVQA中顯著優(yōu)于SigLIP。這可能是因?yàn)閮蓚€(gè)模型的關(guān)注點(diǎn)不同:MiniCPM側(cè)重于文本,而SigLIP側(cè)重于視覺(jué)信號(hào)。
? VisRAG-Ret基于MiniCPM-V 2.0構(gòu)建,結(jié)合了SigLIP編碼器和MiniCPM語(yǔ)言模型的優(yōu)勢(shì),在所有數(shù)據(jù)集上均有良好表現(xiàn),能夠從文檔中捕獲更全面的信息。
與ColPali相比,ColPali是一個(gè)多向量文檔頁(yè)面嵌入模型,VisRAG-Ret保持了優(yōu)越的性能,實(shí)現(xiàn)了更佳的內(nèi)存效率。ColPali用分布在1030個(gè)128維向量上的256KB數(shù)據(jù)表示一頁(yè),而VisRAG-Ret僅使用單個(gè)2304維向量的4.5KB。這使得VisRAG-Ret更適合在現(xiàn)實(shí)世界的應(yīng)用中擴(kuò)展至數(shù)百萬(wàn)或數(shù)十億文檔。
3.2 生成性能
在統(tǒng)一的檢索智能體VisRAG-Ret之上,應(yīng)用了多種基于文本和視覺(jué)的生成器和方法,探究它們?cè)诮o定查詢(xún)和檢索文檔的情況下生成答案的能力。
圖片
上表展示了多種生成方式的效果:
? a. 基于文本的生成(TextRAG-Gen)
? b. 采用單張圖片輸入的VLM MiniCPM-V 2.0進(jìn)行的生成
? c. 采用能接受多張圖片輸入的VLM進(jìn)行的生成
當(dāng)模型僅被提供真實(shí)文檔("Oracle")時(shí),直接處理文檔圖像的VisRAG-Gen模型顯著超越了僅依賴(lài)提取文本的RAG-Gen模型。比如:MiniCPM-V 2.0在利用真實(shí)文檔時(shí)的性能比MiniCPM (OCR)高出36%。從文檔中提取答案時(shí)視覺(jué)線索的關(guān)鍵作用,并顯示出VisRAG-Gen相比TextRAG-Gen有著更高的性能潛力。
在實(shí)際應(yīng)用場(chǎng)景中,模型通常會(huì)接收到包含噪聲的前1至3個(gè)檢索文檔,VisRAG-Gen在同一系列模型中持續(xù)超越TextRAG-Gen。
特別是對(duì)于僅能處理單張圖片的MiniCPM-V 2.0,加權(quán)選擇方法在處理2或3個(gè)檢索文檔時(shí),比頁(yè)面合并方法展現(xiàn)出更優(yōu)的表現(xiàn)。簡(jiǎn)單的合并可能會(huì)向VLM傳遞過(guò)多不必要的信息,而加權(quán)選擇則基于各個(gè)文檔的條件,通過(guò)多個(gè)VLM輸出來(lái)篩選答案,從而減輕了信息負(fù)載。
TextRAG流程通常因檢索文檔數(shù)量的增加而受益,因?yàn)檫@能更好地覆蓋信。然而,盡管加權(quán)選擇增強(qiáng)了性能的穩(wěn)健性,但采用這種方法時(shí),隨著檢索文檔數(shù)量的增加,并沒(méi)有帶來(lái)顯著的性能提升。值得注意的是,僅有最先進(jìn)的VLM,如能處理多張圖片的GPT-4o,隨著檢索文檔數(shù)量的增加,表現(xiàn)出明顯的性能提升。這表明對(duì)多張圖片進(jìn)行推理對(duì)當(dāng)前的VLM來(lái)說(shuō)仍是一個(gè)挑戰(zhàn)。
3.3 整體性能
在這項(xiàng)實(shí)驗(yàn)中,對(duì)比了VisRAG與TextRAG兩條處理流程的效果,以評(píng)估VisRAG流程的有效性。
TextRAG流程中,采用了MiniCPM (OCR)負(fù)責(zé)檢索,MiniCPM-V 2.6 (OCR)負(fù)責(zé)生成,而VisRAG流程則由VisRAG-Ret負(fù)責(zé)檢索,MiniCPM-V 2.6負(fù)責(zé)生成。
圖片
圖片
上面兩個(gè)圖展示了在InfographicsVQA數(shù)據(jù)集上的性能表現(xiàn)。
VisRAG在精確檢索文檔的比率上超越了TextRAG,并且在從精確檢索到的文檔生成正確答案的比率上也有顯著提升。檢索和生成兩個(gè)階段的綜合改進(jìn),使得整體準(zhǔn)確率從22.1%提升至42.7%。
圖片
在六個(gè)評(píng)估數(shù)據(jù)集中,VisRAG平均實(shí)現(xiàn)了39%的準(zhǔn)確率提升(如上圖)。
? 論文原文: https://arxiv.org/abs/2410.10594
本文轉(zhuǎn)載自??大語(yǔ)言模型論文跟蹤??,作者:HuggingAGI ????
