文檔截圖嵌入統(tǒng)一多模態(tài)檢索方法原理 原創(chuàng)
本文單獨(dú)來看看檢索部分的多模態(tài)嵌入部分。
(a)傳統(tǒng)方法;(b)本文方法
局限性: 現(xiàn)有的檢索范式缺乏跨模態(tài)的統(tǒng)一編碼過程,導(dǎo)致兩個問題:
- 預(yù)處理工作繁瑣:需要專門的處理來應(yīng)對各種文檔類型和內(nèi)容模態(tài),而這些處理往往不完美。例如,HTML文件由于其多樣的結(jié)構(gòu),復(fù)雜性較高,使得單一工具難以準(zhǔn)確解析所有信息。同樣,ppt和PDF通常需要OCR模型來提取文本并分別處理其他內(nèi)容類型,如表格和圖表。處理這些長尾問題較為復(fù)雜。
- 破壞文檔原始布局信息:解析過程可能導(dǎo)致文檔布局信息丟失。文檔的視覺呈現(xiàn)可以傳達(dá)通過內(nèi)容提取難以捕捉的關(guān)鍵信息。例如,除了文本和圖像的內(nèi)容外,這些元素在文檔中的大小和位置可能編碼了一些信息。
解決手段:提出了文檔截圖嵌入(Document Screenshot Embedding, DSE),將不同格式和模態(tài)的文檔統(tǒng)一為一種形式進(jìn)行直接文檔編碼和索引:截圖。與使用各種工具從不同格式的文檔中提取文本和圖像不同,截圖易于獲取并且文檔的所有信息在視覺上都得到了保留。如上圖(b)所示,DSE將給定文檔的截圖進(jìn)行embedding。
方法
文檔截圖embedding
采用雙編碼器架構(gòu)進(jìn)行密集檢索,其中文檔截圖和用戶文本查詢分別通過視覺編碼器和文本編碼器編碼成密集向量。
多模態(tài)大模型作為文檔截圖編碼器
視覺編碼器
一個文檔截圖D,首先由視覺編碼器Ev處理,生成隱藏層表示。序列的長度由視覺編碼器的圖像tokenizer決定。以 clip-vit-large-patch14-336l 為例,任何給定的截圖首先轉(zhuǎn)換為 336 X 336 像素的圖像,然后分成 24 X 24 個塊(即總共 576 個塊),每個塊由 14 X 14 像素組成。每個塊展平并通過可訓(xùn)練的線性投影映射到塊嵌入。塊嵌入由視覺編碼器編碼成隱藏層表示。但是,如果截圖包含大量文本(例如維基百科網(wǎng)頁),576 個塊的潛在嵌入可能無法捕捉截圖中的細(xì)粒度文本信息。
視覺-語言模型
對比學(xué)習(xí)
query和文檔之間的相似性通過embedding之間的余弦相似度計算:
在訓(xùn)練期間,embedding模型使用InfoNCE 損失進(jìn)行優(yōu)化:
實驗
監(jiān)督檢索效果
零樣本檢索效果
補(bǔ)丁序列長度的影響
不同數(shù)量的作物輸入圖像下,DSE的有效性和效率之間的權(quán)衡。推理速度是在單個H100 GPU上通過BF16精度和FlashAttention實現(xiàn)的
參考文獻(xiàn)
Unifying Multimodal Retrieval via Document Screenshot Embedding,??https://arxiv.org/pdf/2406.11251??
本文轉(zhuǎn)載自公眾號大模型自然語言處理 作者:余俊暉
