HoVLE:通過整體視覺-語言嵌入釋放單體視覺-語言模型的潛力 原創
摘要
大型語言模型(LLMs)的快速發展催化了視覺-語言模型(VLMs)的發展。整體VLMs避免了模態特定的編碼器,提供了一種有希望的替代方案,但面臨著性能較差的挑戰。大多數現有的整體VLMs需要調整預訓練的LLMs以獲得視覺能力,這可能會降低它們處理語言的能力。為了解決這一困境,本文提出了一種新的高性能整體VLM,名為HoVLE。我們注意到,當圖像嵌入與文本嵌入對齊時,LLMs已被證明能夠解釋圖像。當前整體VLMs的挑戰實際上在于缺乏一個全面的嵌入模塊來處理視覺和語言輸入。因此,HoVLE引入了一個全面的嵌入模塊,將視覺和文本輸入轉換為共享空間,允許LLMs像處理文本一樣處理圖像。此外,還精心設計了一個多階段訓練策略來增強整體嵌入模塊。首先,它被訓練以從預訓練的視覺編碼器和LLM的文本嵌入中提取視覺特征,實現大規模訓練,使用未配對的隨機圖像和文本令牌。整個模型進一步在多模態數據上進行下一個令牌預測,以對齊嵌入。最后,加入了指令調整階段。我們的實驗表明,HoVLE在各種基準測試中的表現接近領先的組合模型,大幅度超越了以前的整體模型。
圖 1. 在不同基準測試上的性能比較:組合型 VLMs(虛線)與整體型 VLMs(實線)。以往的整體型 VLMs 相較于組合型 VLMs 存在顯著的性能差距,而我們的 HoVLE 展示出與最新的組合型 VLMs 相當的競爭能力。
1. 引言
大型語言模型(LLMs)[2, 5, 11, 107, 132]的快速發展顯著加速了視覺-語言模型(VLMs)[70, 113, 135]的發展,這些模型展示了強大的視覺-文本處理能力。組合VLMs目前是構建高性能VLMs的主要方法[21, 71, 110],它們將預訓練的視覺編碼器與LLMs集成在一起,如圖2(a)所示。通過結合預訓練的視覺理解能力與語言建模能力,組合VLMs實現了令人印象深刻的多模態性能。另一方面,對開發沒有模態特定編碼器的VLMs的興趣日益增長,本文中稱為整體VLMs。這些模型將圖像和文本輸入作為一個統一的整體處理,直接將它們輸入LLM,如圖2(b)所示。由于它們的整體設計,這些VLMs具有更簡單的架構,為多模態任務提供了更大的潛力,例如統一生成和識別[105, 115, 134]。整體VLMs越來越受到關注,并已在許多研究中展示了它們的潛力[6, 18, 26]。然而,整體VLMs在性能上仍然落后于組合VLMs。一些研究[6, 8, 105, 134]探索了從頭開始訓練整體VLMs,使用多模態和純文本數據的組合。這種做法無法利用現有的預訓練模型,導致訓練需要大量的計算需求。另一個研究方向[18, 26]提出了通過持續預訓練[33]將視覺理解能力注入預訓練的LLMs,使用大規模和高質量的多模態數據。然而,這種持續調整方法可能會干擾預訓練LLMs已經獲得的語言知識,可能限制它們的多模態性能[26]。
圖 2. VLM架構比較。
(a) 組合型VLMs將預訓練的視覺編碼器與LLMs結合,使用額外的連接器對齊圖像和文本的嵌入。(b) 現有的整體型VLMs直接將圖像和文本輸入到LLMs中,這需要持續的預訓練以獲得視覺能力。(c) HoVLE使用整體嵌入模塊將圖像和文本輸入投射到統一的嵌入空間,使LLMs能夠以類文本的方式解釋圖像。同色塊表示具有相同的Transformer層架構。
當前整體VLMs的性能限制主要源于需要調整預訓練的LLMs。然而,組合VLMs的成功表明,只要圖像嵌入與文本嵌入正確對齊,預訓練的LLMs就可以在不需要進一步預訓練的情況下解釋視覺信息。因此,當前整體VLMs調整困境的原因在于缺乏一個能夠協調不同模態的整體嵌入模塊。
為此,我們開發了一個模態共享的整體嵌入模塊,如圖2(c)所示,該模塊將混合的視覺和語言輸入映射到共享的嵌入空間。它可以使預訓練的LLMs像處理文本一樣解釋視覺輸入。與組合VLMs類似,這不僅避免了調整預訓練的LLMs,還保留了它們的語言能力,同時成功集成了視覺能力。我們的實驗表明,這樣一個整體嵌入模塊確實可以實現高性能的整體VLMs。在這項工作中,我們介紹了HoVLE,這是一種新型的整體視覺-語言模型,它學習了一個整體視覺-語言嵌入模塊來擴展LLMs的視覺能力。整體嵌入模塊由與LLM相同的因果Transformer層組成。它接受圖像和文本作為輸入,并將它們投影到統一的嵌入空間中。這些嵌入隨后被輸入到LLM中,構成了一個整體VLM。為了賦予整體嵌入模塊視覺和語言編碼能力,提出了一個多階段訓練策略。首先,該模塊被訓練以從預訓練的視覺編碼器和LLM的文本嵌入中提取視覺特征。提取階段不需要圖像-文本對,而是使用大規模未配對的隨機圖像和文本令牌作為輸入。提取后,整體嵌入模塊與LLM結合,在多模態數據上執行下一個令牌預測,以便輸出嵌入可以進一步對齊到統一空間中。最后,整個模型通過指令調整階段進行增強。對齊和指令調整階段與組合VLMs中使用的階段類似,不需要額外的監督數據。廣泛的實驗表明,我們的HoVLE能夠與這些領先的組合VLMs在17個多模態基準測試中實現接近的性能。它還大幅度超越了以前的整體VLMs,例如在MMBench[74]上大約15個百分點,顯示了HoVLE的有效性。
貢獻總結
- 提出了HoVLE作為一種新型的整體VLM,通過將視覺和語言輸入投影到共享的嵌入空間,擴展了LLMs的視覺能力,而不影響語言能力。
- 提出了一種新穎的多階段訓練策略,賦予整體嵌入模塊視覺和語言編碼能力。我們的訓練程序使HoVLE能夠在不需要額外監督數據的情況下,與組合VLMs相比發展出強大的視覺和語言能力。
- HoVLE在性能上與組合VLMs相當,并大幅度超越了以前的整體VLMs。
2. 相關工作
組合視覺-語言模型
大型語言模型(LLMs)的快速發展和成功激發了研究人員對多模態模型的興趣,視覺-語言模型(VLMs)成為了一個突出的焦點[21, 26, 57, 70, 72, 102]。組合VLMs已成為該領域的主導范式,其中圖像令牌通常通過視覺編碼器生成,并且使用額外的連接器(例如,MLP投影)。許多著名的商業模型,包括GPT4V[121]、Gemini系列[106]、Claude-3V[4]、Grok1.5V[119]和MM1[88],在各種多模態任務中展示了令人印象深刻的性能。在開源領域,像LLaVA[70, 72]、BLIP[57]、Emu2[102]、InternVL[21]和Qwen-VL[5]這樣的模型脫穎而出。然而,組合VLMs面臨幾個挑戰,例如由于它們的異構架構導致的部署和優化復雜性,圖像和文本處理之間網絡容量設計的權衡,以及跨模態理解能力的潛在限制[8, 18, 26, 105]。
整體視覺-語言模型
與組合VLMs相比,整體VLMs不依賴于特定的視覺編碼器。一些工作探索了從頭開始訓練一個整體VLM。Fuyu-8B[6]直接將圖像像素塊輸入到主干網絡中,使用簡單的線性投影,而Chameleon[105]、Transfusion[134]和Emu3[115]采用圖像分詞器將圖像映射到離散的令牌作為輸入。然而,這些方法需要收集大量的純文本和配對的圖像-文本數據,以及密集的訓練計算資源才能獲得良好的性能。其他方法提出了擴展現有的預訓練LLMs到VLMs。SOLO[18]使用簡單的線性投影處理原始圖像像素,并微調預訓練的LLM以發展視覺能力。EVE[26]采用了一個補丁嵌入層與交叉注意力來增強圖像表示,以及一個補丁對齊層,與預訓練的視覺編碼器一起提供細粒度的視覺監督。然而,這些方法需要持續預訓練LLMs,這可能會減少它們處理語言的能力。當前的整體VLMs在圖像-文本理解任務上的表現仍然落后于它們的組合對應物。
相比之下,通過引入一個整體嵌入模塊,HoVLE能夠與最先進的組合VLMs實現相當的性能,大幅度超越其他整體VLMs。
知識蒸餾
知識蒸餾是一種有效的技術,用于將教師模型的知識和能力轉移到學生模型。在VLMs領域,知識蒸餾也已成功地應用于各種任務。DistillVLM[27]和EfficientVLM[111]使用知識蒸餾來壓縮模型大小并加速推理速度。VPD[39]和LSKD[90]利用工具或LLMs合成多模態數據,以便VLMs可以被訓練以提取專家模型和LLMs中的技能。我們的工作使用知識蒸餾來賦予整體嵌入模塊通用的視覺和語言編碼能力。由于蒸餾目標可以獨立計算,我們可以使用未配對的隨機圖像和文本數據,消除了收集額外多模態數據的需求。
3. 方法
在本節中,我們介紹了HoVLE,一個具有良好視覺和語言能力的整體視覺-語言模型。在接下來的部分中,我們介紹了實現這樣一個統一模型的網絡架構和訓練程序。詳細信息如圖3所示。
圖 3.(a) HoVLE 的架構。HoVLE 首先動態地將輸入圖像分割為圖像塊,并對輸入文本進行標記化處理。整體嵌入模塊隨后將這些輸入投射到統一的嵌入空間中。最后,LLM 處理這些統一的嵌入以生成最終輸出。(b) HoVLE 的訓練策略。蒸餾階段訓練整體嵌入模塊,通過未配對的隨機圖像和文本,從預訓練的視覺編碼器和LLM的文本嵌入中提取知識。對齊階段將整體嵌入模塊與凍結的LLM結合,通過自回歸訓練對視覺-語言嵌入進行對齊。指令微調階段通過微調整個模型進一步增強HoVLE的整體能力。
3.1 網絡架構
組合VLMs的成功表明,當圖像嵌入與文本嵌入正確對齊時,LLMs能夠理解視覺信息。受此啟發,HoVLE提出可以使用一個整體嵌入模塊來構建整體VLM。該模塊將混合的原始圖像和文本作為輸入,并將其投影到共享的嵌入空間中。這樣,LLMs就可以像處理文本一樣解釋圖像,從而形成整體VLM。
整體嵌入模塊
我們首先介紹整體嵌入模塊,將視覺和語言輸入投影到共享的嵌入空間中。具體來說,給定輸入圖像 I 和文本 T ,我們首先通過簡單的標記化和線性投影將它們轉換為向量形式:
xI = PatchEmbed(DynProcess(I)) + PE
xT = TextEmbed(Tokenizer(T))
其中 DynProcess(·) 是來自InternVL[21]的動態高分辨率策略。該過程將圖像分割成448×448的瓦片,并附加一個全局縮略圖以提供整體上下文。類似的操作已被許多組合和整體VLMs[26, 41, 120]采用,并被證明對模型性能有益。 PatchEmbed(·) 指的是一個步長為 s 的補丁嵌入層,將圖像瓦片轉換為序列 xI 的 nI 個圖像令牌,維度為 c 。 PE∈RnI×c 是可學習的位置嵌入。 Tokenizer(·) 將原始文本轉換為令牌索引, TextEmbed(·) 是一個詞匯量為 v 、維度為 c 的詞嵌入層。 xT 是一個序列,包含 nT 個文本令牌。之后,這些圖像令牌和文本令牌被合并作為輸入令牌 x∈Rn×c。整體嵌入模塊使用一系列因果Transformer層將這些令牌投影到共享的嵌入空間中:
X^ = CausalTransformer(x)
其中 x^ 表示輸入的最終嵌入。每個Transformer層的架構與LLM的相同,為了簡單和統一。類似于LLMs,這些Transformer層對圖像和文本令牌使用因果注意力。這種架構的有效性表明,對于多模態任務中的圖像,1D因果建模與非因果建模同樣有效,與[104]中的最新發現一致。
整體視覺-語言模型
通過將整體嵌入模塊與預訓練的LLM結合,可以自然地構建整體VLM。在整體嵌入模塊生成輸入嵌入后,LLM將它們作為輸入并執行下一個令牌預測:
pn+1 = LLM(x^; θLLM),
其中 θLLM 指的是LLM的參數, pn+1∈Rv 是下一個令牌的概率。通過這種方式,我們用整體嵌入模塊替換了組合VLMs中的模態特定編碼器。該模塊與LLM具有相同的Transformer層,因此整個模型呈現出簡單的架構,導致我們的整體VLM。
3.2 訓練程序
為了賦予整體嵌入模塊良好的視覺和語言編碼能力,我們精心設計了一個多階段訓練程序。第一階段訓練整體嵌入模塊以從預訓練的視覺編碼器和LLM中提取圖像特征和文本嵌入,提供通用編碼能力。第二階段將整體嵌入模塊與LLM結合,執行自回歸訓練,將不同模態對齊到共享的嵌入空間。
蒸餾階段
本階段的目標是使用整體嵌入模塊提供基本的視覺和語言編碼能力。我們從整體嵌入模塊的輸出中提取圖像和文本嵌入,分別表示為 x^I 和 x^T 。使用預訓練的視覺編碼器和LLM嵌入層計算目標圖像特征 z_I 和文本特征 z_T 。訓練目標是
其中 Ldistill 是兩個特征之間的負余弦相似度,θEmbed 指的是整體嵌入模塊的參數。
未配對隨機圖像和文本用于蒸餾
蒸餾階段對輸入圖像和文本沒有任何要求,因為它們的目標特征是獨立計算的。因此,我們提出將隨機圖像與隨機文本作為輸入結合起來。實際上,這種策略比使用配對的圖像-文本輸入更有效,可能因為在蒸餾期間更好地覆蓋了詞匯表,如第4.3節所示。
在實踐中,我們從LAION-2B[94]數據集中隨機抽取了5億張圖像,并為每個圖像隨機抽取100個文本令牌作為訓練數據。每個樣本由用戶查詢和模型響應組成。我們將圖像放在查詢的開頭,然后是查詢和響應的文本內容,每個都有50個隨機文本令牌。與以前的整體VLMs不同,HoVLE可以受益于大規模視覺預訓練,釋放整體VLM的全部潛力。
對齊階段
為了對齊圖像和文本嵌入,整體嵌入模塊進一步與LLM結合,執行自回歸訓練。訓練目標是
其中 Lalign 是交叉熵損失, pi 和 yi 分別表示第 i 個文本令牌的輸出概率和目標索引。在訓練期間,LLM被凍結,只優化整體嵌入模塊。
這個階段類似于組合VLMs中使用的對齊階段,但我們沒有額外的MLP連接器。在對齊過程中,模型在4500萬多模態數據上進行訓練,涵蓋諸如字幕、檢測和OCR數據等多個領域。請參考附錄A了解更多細節。
3.3 指令調整
現在整體嵌入模塊已經具備了強大的視覺和語言編碼能力。為了進一步加強整個VLM遵循指令的能力,加入了一個視覺指令調整階段。
在這個階段,整個模型使用與對齊階段相同的自回歸訓練目標進行優化。訓練數據包含大約500萬條數據,涵蓋視覺問題回答、數學、世界知識等。請參考附錄A了解更多細節。
4. 實驗
4.1 實施細節
網絡架構
HoVLE采用InternLM21.8B[11]作為LLM主干。整體嵌入由8個因果Transformer層組成,隱藏尺寸為2048,注意力頭數為16,與InternLM2-1.8B中的配置相同。圖像補丁嵌入層的步長為 s = 28 ,輸出維度為 c = 2048 。文本嵌入的詞匯量為92553。為了展示我們模型處理高分辨率圖像的能力,像其他工作[6, 26, 62]一樣,我們還提供了HoVLE (HD)。它使用步長為 s = 14 的補丁嵌入,并在整體嵌入后應用像素洗牌[21]以將視覺令牌數量減少1/4。所有其他細節保持不變。
訓練程序
在蒸餾階段,我們從LAION-2B[94]中隨機抽取了5億張圖像,并為每個圖像隨機抽取100個文本索引作為訓練數據。我們使用InternViT300M[19, 21]和InternLM21.8B的文本嵌入作為圖像和文本令牌的教師模型。對于對齊,使用了包含5000萬個樣本的數據集集合,如附錄A所示。對于指令調整,使用了包含500萬個樣本的數據集集合,如附錄A所示。我們在所有三個階段都使用AdamW作為優化器,學習率分別為3e-4,5e-5 和 4e-5 。所有階段的批量大小都設置為4096。請參考附錄A了解更多超參數。
評估基準
我們在17個公共基準上評估我們的模型。MMbench[74]、MME[28]、MMMU[128]、MM-Vet[125]和SEED[56]專注于多模態感知和推理,為VLM能力提供了全面的評估。POPE[60]和HallB[31]專門針對幻覺檢測。對于OCR和與OCR相關的視覺上問題回答,使用了TextVQA[100]、ChartQA[84]、InfoVQA[87]、DocVQA[86]和OCRBench[73]。GQA[43]評估視覺場景理解,而ScienceQA[78]和AI2D[50]評估科學圖像理解。MathVista專注于數學推理。對于實驗中顯示的具體指標值,MMbench-EN結果被計算并呈現為MMB分數。POPE分數在其三個類別中平均,MME分數計算為感知和認知分數之和,SEED分數反映特定圖像準確性。
4.2 主要結果
我們在表1和表2中將HoVLE與以前的組合和整體VLMs進行了比較。我們強調幾個關鍵觀察結果如下:(1)以前的整體VLMs和組合VLMs之間存在顯著的性能差距,表明構建具有最先進性能的整體VLMs的挑戰。(2)與現有的整體VLMs相比,我們的HoVLE在參數更少的情況下表現出顯著更好的性能。例如,HoVLE在MMBench上超過了以前最好的整體VLM大約15個百分點,這是一個涵蓋各種細粒度能力的全面多模態基準。這一顯著改進歸功于整體嵌入,它防止了持續預訓練破壞存儲在預訓練LLMs中的語言知識。(3)通過引入更高分辨率,HoVLE (HD)在VQA基準測試中一致提高了性能,展示了我們整體嵌入在處理不同分辨率時的多功能性。(4)與以前的組合VLMs相比,HoVLE (HD)能夠與這些模型中的許多模型提供競爭結果。這表明引入整體嵌入提供了一種有效的編碼,允許LLM理解圖像的同時保留其語言能力。盡管HoVLE (HD)仍未達到像Qwen2-VL2B[110]和Phi-3 Vision[1]這樣的最先進組合VLMs,但它縮小了整體和組合VLMs之間的差距,表明了高性能整體VLMs的可行性。
4.3 消融研究
在本節中,我們旨在展示和討論影響我們HoVLE的設計選擇。消融實驗在蒸餾和對齊階段分別使用300M和8M數據進行訓練,除非另有說明。
整體嵌入深度
為了驗證整體嵌入的有效性,我們首先在表3中比較了具有不同整體嵌入深度的模型。沒有Transformer層的模型退化為沒有整體嵌入的VLM,其較差的性能表明了該模塊的重要性。隨著深度從4增加到12,模型的性能一直更好。我們推測深層嵌入有利于提取視覺表示。HoVLE使用8層在性能和模型復雜性之間取得平衡。
訓練策略
表4顯示了不同訓練階段的影響。結果表明,省略任何階段都會導致性能下降。其中,去除蒸餾階段導致最嚴重的性能退化,突出了其重要性。我們觀察到,經過蒸餾的模型在后續訓練階段的損失下降更快,可能是因為蒸餾提供了表示提取的通用能力,有助于加速訓練。指令調整的改進大于對齊階段。我們假設這是因為LLM有更多的可訓練參數,允許整個模型很好地擬合數據。
蒸餾數據擴展
圖6展示了隨著蒸餾數據擴展,模型性能的變化。總體而言,模型的性能隨著更多的蒸餾數據而更好,暗示了全面訓練的重要性。具體來說,模型在300M數據時性能提升迅速,并隨著更多數據的添加以更漸進的速度繼續提升。我們使用500M蒸餾數據作為默認設置。請參考附錄B了解更多基準上的擴展性能。
蒸餾文本數據
表5展示了蒸餾過程中不同文本輸入選擇的效果。LAION[94]數據集為每個圖像提供了一個簡短的文本說明,因此我們也可以使用方法圖像-文本對作為輸入。然而,這種方法產生了相對較低的結果,并且在對齊期間模型繼續顯示出高損失值。我們假設LAION數據集中的文本數據缺乏足夠的多樣性以覆蓋完整的詞匯表,表明配對數據可能需要更高質量和多樣性的文本。相反,我們提出使用隨機文本作為輸入。表5顯示,這種策略優于配對文本數據。我們還觀察到在對齊期間損失較低。通過利用隨機文本,我們減少了收集高質量圖像-文本對的需求,從而增強了大規模訓練的數據利用。
4.4 分析
可視化
為了更好地理解引入的整體嵌入的效果,我們在圖5中可視化了LLM的注意力圖。我們發現,像EVE[26]和Emu3[115]這樣的現有整體模型,在初始層顯示出更密集的文本到圖像的注意力,而像InternVL2[20]和我們的HoVLE模型則在整個網絡層中保持稀疏的注意力模式。所有模型在后層(以最后層為例)顯示出稀疏的注意力模式。請參考附錄C了解更多中間層的注意力圖。
圖 5. EVE、Emu3、InternVL2 和我們的 HoVLE 在 LLM 主干網絡的第一層和最后一層的注意力圖。
Y軸表示查詢(query)tokens,X軸表示鍵(key)tokens,其中文本模態tokens以灰色表示,圖像模態tokens以黃色表示。四種模型使用相同的輸入,但由于不同的圖像預處理,輸入tokens的序列長度有所不同。我們在每個完整注意力圖的下方突出顯示了文本到圖像的注意力。我們的 HoVLE 與組合型的 InternVL2 類似,在整個網絡層中表現出稀疏的注意力分布,而其他整體型模型 Emu3 和 EVE 在淺層中表現出更密集的注意力分布。
我們假設更稀疏的文本到圖像的注意力表明視覺特征被有效地提取并與文本令牌對齊,允許文本令牌只關注最相關的視覺信息。相反,更密集的文本到圖像的注意力可能表明模型仍在LLM組件內提取視覺特征的過程中。因此,通過引入整體嵌入,LLM可能更有效地處理視覺和語言輸入。
表 6. HoVLE (HD) 的推理速度與性能權衡。“TTFT” 表示生成首個 token 的時間(單位:秒),“TPS” 表示每秒生成的 token 數量(吞吐量)。“Avg. Score” 表示在 17 個基準測試上的平均性能。詳細結果請參閱附錄。
速度-性能權衡
我們在表6中報告了HoVLE (HD)的速度-性能權衡。對于評估,我們使用一張圖像和256個文本令牌作為輸入,在測試期間將模型限制為輸出120個令牌。InternVL2作為主要比較模型,因為它使用了相同的LLM。當DynProcess()的瓦片分辨率為336時,HoVLE (HD)實現了與InternVL2相當的性能,同時也顯示出更低的計算需求。隨著輸入分辨率的增加,HoVLE的性能穩步提高,但代價是速度變慢。此外,我們觀察到在推理期間使用KV緩存[92]可以顯著減少計算時間,使內核啟動成為TPS中的主要瓶頸。優化內核可以進一步提高處理速度。
5. 結論
本工作介紹了HoVLE,一個整體視覺-語言模型(VLM),它以統一的方式處理圖像和文本。HoVLE引入了一個整體嵌入模塊,將圖像和文本輸入投影到共享的嵌入空間中。這允許大型語言模型(LLM)像處理文本一樣解釋圖像。此外,設計了一個多階段訓練程序來加強整體嵌入的編碼能力。首先,蒸餾階段提供了通用的視覺和語言編碼能力,而對齊階段對齊不同的模態。最后的指令調整階段增強了整體能力。廣泛的實驗表明,HoVLE超越了以前的整體VLMs,并與組合VLMs展現出競爭性的性能。這項工作縮小了整體和組合VLMs之間的差距,為整體VLMs的發展提供了一個有希望的方向。
限制
由于計算資源有限,我們的實驗在2B參數規模上進行。擴展到更大的規模可以進一步洞察我們方法的模型可擴展性,我們希望在未來的工作中探索這一點。
本文轉載自公眾號AIRoobt ,作者:Chenxin Tao等
