劍橋團隊開源:首個預訓練通用多模態後期交互知識檢索器

機器之心專欄

機器之心編輯部

背景

儘管多模態大模型(例如 GPT4-Vision、Gemini 等)展現出了強大的通用圖文理解能力,它們在回答需要專業知識的問題時表現依然不盡人意。即使 GPT4-Vision 也無法回答知識密集型問題(圖一上),這成爲了很多企業級落地應用的瓶頸。

圖 1:GPT4-Vision 在 PreFLMR 多模態知識檢索器的幫助下可以獲得相關知識,生成正確的答案。圖中展示了模型的真實輸出。

針對這個問題,檢索增強生成(RAG,Retrieval-Augmented Generation)提供了一個簡單有效的讓多模態大模型成爲” 領域專家” 的方案:首先,一個輕量的知識檢索器(Knowledge Retriever)從專業數據庫(例如 Wikipedia 或企業知識庫)中獲得相關的專業知識;然後,大模型將這些知識和問題一起作爲輸入,生成準確的答案。多模態知識提取器的知識 “召回能力” 直接決定了大模型在回答推理時能否獲得準確的專業知識。

近期,劍橋大學信息工程系人工智能實驗室完整開源了首個預訓練、通用多模態後期交互知識檢索器 PreFLMR(Pre-trained Fine-grained Late-interaction Multi-modal Retriever)。相比以往常見的模型,PreFLMR 有以下特點:

1.PreFLMR 是一個可以解決文文檢索,圖文檢索,知識檢索等多個子任務的通用預訓練模型。該模型經過百萬級的多模態數據預訓練後,在多個下游檢索任務中取得了優秀的表現。同時,作爲一個優秀的基底模型,PreFLMR 在私有數據上稍加訓練就能夠獲得表現極佳的領域專用模型。

圖 2:PreFLMR 模型同時在多項任務上取得極佳的多模態檢索表現,是一個極強的預訓練基底模型。

2. 傳統的密集文本檢索(Dense Passage Retrieval, DPR)只使用一個向量表徵問詢(Query)或文檔(Document)。劍橋團隊在 NeurIPS 2023 發表的 FLMR 模型證明了 DPR 的單向量表徵設計會導致細粒度信息損失,導致 DPR 在需要精細信息匹配的檢索任務上表現不佳。尤其是在多模態任務中,用戶的問詢(Query)包含複雜場景信息,壓縮至一維向量極大抑制了特徵的表達能力。PreFLMR 繼承並改進了 FLMR 的結構,使其在多模態知識檢索中有得天獨厚的優勢。

圖 3:PreFLMR 在字符級別(Token level)上編碼問詢(Query,左側 1、2、3)和文檔(Document,右側 4),相比於將所有信息壓縮至一維向量的 DPR 系統有信息細粒度上的優勢。

3.PreFLMR 能夠根據用戶輸入的指令(例如 “提取能用於回答以下問題的文檔” 或 “提取與圖中物品相關的文檔”),從龐大的知識庫中提取相關的文檔,幫助多模態大模型大幅提升在專業知識問答任務上的表現。

圖 4:PreFLMR 可以同時處理圖片提取文檔、根據問題提取文檔、根據問題和圖片一起提取文檔的多模態問詢任務。

劍橋大學團隊開源了三個不同規模的模型,模型的參數量由小到大分別爲:PreFLMR_ViT-B (207M)、PreFLMR_ViT-L (422M)、PreFLMR_ViT-G (2B),供使用者根據實際情況選取。

除了開源模型 PreFLMR 本身,該項目還在該研究方向做出了兩個重要貢獻:

下文將簡略介紹 M2KR 數據集,PreFLMR 模型和實驗結果分析。

M2KR 數據集

爲了大規模預訓練和評估通用多模態檢索模型,作者彙編了十個公開的數據集並將其轉換爲統一的問題 - 文檔檢索格式。這些數據集的原本任務包括圖像描述(image captioning),多模態對話(multi-modal dialogue)等等。下圖展示了其中五個任務的問題(第一行)和對應文檔(第二行)。

圖 5:M2KR 數據集中的部分知識提取任務

PreFLMR 檢索模型

圖 6:PreFLMR 的模型結構。問詢(Query)被編碼爲 Token-level 的特徵。PreFLMR 對問詢矩陣中的每一個向量,找到文檔矩陣中的最近向量並計算點積,然後對這些最大點積求和得到最後的相關度。

PreFLMR 模型基於發表於 NeurIPS 2023 的 Fine-grained Late-interaction Multi-modal Retriever (FLMR) 並進行了模型改進和 M2KR 上的大規模預訓練。相比於 DPR,FLMR 和 PreFLMR 用由所有的 token 向量組成的矩陣對文檔和問詢進行表徵。Tokens 包含文本 tokens 和投射到文本空間中的圖像 tokens。後期交互(late interaction)是一種高效計算兩個表徵矩陣之間相關性的算法。具體做法爲:對問詢矩陣中的每一個向量,找到文檔矩陣中的最近向量並計算點積。然後對這些最大點積求和得到最後的相關度。這樣,每個 token 的表徵都可以顯式地影響最終的相關性,以此保留了 token-level 的細粒度(fine-grained)信息。得益於專門的後期交互檢索引擎,PreFLMR 在 40 萬文檔中提取 100 個相關文檔僅需 0.2 秒,這極大地提高了 RAG 場景中的可用性。

PreFLMR 的預訓練包含以下四個階段:

同時,作者展示了 PreFLMR 可以在子數據集(如 OK-VQA、Infoseek)上進一步微調以在特定任務上獲得更好的檢索性能。

實驗結果和縱向擴展

最佳檢索結果:表現最好的 PreFLMR 模型使用 ViT-G 作爲圖像編碼器和 ColBERT-base-v2 作爲文本編碼器,總計二十億參數。它在 7 個 M2KR 檢索子任務(WIT,OVEN,Infoseek, E-VQA,OKVQA 等)上取得了超越基線模型的表現。

擴展視覺編碼更加有效:作者發現將圖像編碼器 ViT 從 ViT-B(86M)升級到 ViT-L(307M)帶來了顯著的效果提升,但是將文本編碼器 ColBERT 從 base(110M)擴展到 large(345M)導致表現下降並造成了訓練不穩定問題。實驗結果表明對於後期交互多模態檢索系統,增加視覺編碼器的參數帶來的回報更大。同時,使用多層 Cross-attention 進行圖像 - 文本投射的效果與使用單層相同,因此圖像 - 文本投射網絡的設計並不需要過於複雜。

PreFLMR 讓 RAG 更加有效:在知識密集型視覺問答任務上,使用 PreFLMR 進行檢索增強大大提高了最終系統的表現:在 Infoseek 和 EVQA 上分別達到了 94% 和 275% 的效果提升,經過簡單的微調,基於 BLIP-2 的模型能夠擊敗千億參數量的 PALI-X 模型和使用 Google API 進行增強的 PaLM-Bison+Lens 系統。

結論

劍橋人工智能實驗室提出的 PreFLMR 模型是第一個開源的通用後期交互多模態檢索模型。經過在 M2KR 上的百萬級數據預訓練,PreFLMR 在多項檢索子任務中展現出強勁的表現。M2KR 數據集,PreFLMR 模型權重和代碼均可以在項目主頁 https://preflmr.github.io/ 獲取。

拓展資源