點擊藍字
關注我們
AI TIME歡迎每一位AI愛好者的加入!
點擊?閱讀原文?觀看作者講解回放!
個人信息
作者:趙晗,浙江大學-西湖大學聯合培養博士生
內容簡介
近年來,在各個領域應用多模態大語言模型(MLLMs)取得了顯著的成功。然而,作為許多下游任務的基礎模型,MLLMs通常包含著名的Transformer網絡,其計算復雜度呈二次方增長,效率較低。在本文中,我們介紹了一種基于狀態空間模型構建的多模態大規模語言模型Cobra,該模型在高效處理長序列方面表現出顯著潛力,并且在序列長度方面具有快速推理和線性可擴展性。具體而言,Cobra涉及用預訓練的Mamba語言模型替換基于Transformer的主干模型(例如LLaMA或Phi)。然后,我們通過實驗探索了有效對齊視覺和文本模態的策略,并將不同預訓練的Mamba模型變體與視覺編碼器進行整合。在多個多模態基準測試中的實驗表明:(i)Cobra的性能比目前最高效的現有方法(例如LLaVA Phi和MobileVLM v2)快3至4倍。此外,由于實現了線性序列建模,其性能得到了顯著提升。(ii)Cobra僅微調了少量參數(約占模型參數的48%),與LLaVA相比,整體性能顯著提升。
論文地址:
https://arxiv.org/pdf/2403.14520
代碼鏈接:
https://sites.google.com/view/cobravlm
Background
多模態大語言模型(MLLM)在眾多視覺場景理解任務,包括視覺問答任務上取得了顯著的成功。然而,基于Transformer的大型模型,如著名的LLaVa系列等,在處理視覺語言token時,其時間復雜度隨序列長度呈二次方增長。而且在推理過程中,實際空間占用也會隨著生成長度的增加而增加。因此,它在端側計算資源有限的場景,或者對實時性有較高要求的機器人操作任務中部署受到了限制。
先前Efficient MLLM領域的研究主要有兩種解決方案。一種是采用輕量級語言模型,另一種是對視覺token進行token reduction以縮短序列長度。如圖所示,右側的兩張圖,是比較典型的token reduction方案。一種是通過視覺特征做卷積操作進行下采樣來減少token數量,也就是LDP方案。第二種是Q-Former,通過cross-attention的方式減少token數量。這種做法雖然效果明顯,但LDP會導致有一定程度的信息損失,從而降低模型性能。Q-Former需要一個較為復雜的訓練流程,這無疑增加了整個模型訓練的難度。
在2023年末,隨著Mamba模型的提出,大語言模型的架構選擇中,除了Transformer也有更多的工作來關注這種線性復雜度O(n)類的架構模型。Mamba是基于SSM的一個框架,輸入經過映射后得到一個data dependent的矩陣
和
以及將連續時間的參數進行離散化的補償參數
。通過圖式(2)中的線性變換,最終將輸入序列
變換成一個輸出序列
。
Motivation
SSM結合了注意力機制類模型在訓練時并行處理序列的優點,以及在推理時保持生成速度和空間占用恒定的優點。因此,作者希望進一步擴展Mamba在語言建模方面的能力。通過直接將更高計算效率的語言模型backbone和視覺處理模塊結合,可以保持高性能的視覺理解能力,避免因模型參數減少或視覺token數量下降造成的性能損失。同時,由于模型對序列長度的時間復雜度是線性,可以保證更高的生成速度。
First RNN-Based MLLM
如下圖為Efficient MLLM領域的路線圖,本文在三月份出版,作為第一篇將線性復雜度的RNN序列模型引入該領域的文章,至今已被引用超過50次。
Architecture
Corba的整體模型結構采用了類似層級的設計,通過視覺編碼器提取視覺特征,進行嵌入處理。此外,還通過自回歸執行指令來生成文本。在視覺編碼器中,本文采用了目前廣泛應用的一種方法,即Fused Vision Encoders。具體來說,它將DINOv2和SigLIP兩個模型輸出的特征在特征維度上進行融合,然后通過MLP Projector映射到語言embedding的維度,最后將整個序列輸入到Mamba架構的語言模型中。
Training Recipe
訓練方案:作者擴展了數據集,除了原始LLaVA v1.5的VQA數據集之外,還增加了兩個新的數據集,旨在提升模型的執行能力并減少視覺語言模型的幻覺。這兩個能力對模型性能至關重要。其次,在訓練過程中,作者直接對模型進行了兩個階段的指令調整,發現這種方式比先進行預訓練再進行調整的方式效果更好。
Benchmarking-VQA
下圖展示的是Cobra模型和其他模型在Benchmark上的性能比較。可以看到,Cobra-3.5B模型在各種指標上基本與同量級的small scales模型相當,即激活參數在3B或以下的baseline中,Cobra模型性能均能達到第一或者第二位。在各個Benchmark中,Cobra-8B則是在所有baseline中超越了其他模型。
Benchmarking-Grounding
本文也在COCO的三個數據集上對vision grounding任務進行了評估。結果顯示,Cobra-8B相較于LLaVa v1.5有顯著的性能提升。然而,Cobra-3.5B模型可能受限于模型容量,在此類任務上的表現稍弱。
Benchmarking-Latency
Cobra系列模型在推理延遲方面有顯著提升。與其他高效基準模型相比,Cobra在大約3B參數的LLaVA-Phi、MobileVLM v2上,token生成速度大約快3到4倍。即使是8B的模型,其生成速度也高于之前提到的模型。
Ablation Studies
如下圖所示,本文對Cobra架構的各個階段進行了消融實驗。第一行以3.5B作為基準。第二行僅使用SigLIP作為單獨的視覺編碼器。在缺少另一個編碼器的情況下,對于需要精確空間感知的任務,如VSR——一個用于空物體空間關系判斷的Benchmark以及包括一些visual grounding任務,在這些任務上表現出了顯著的性能下降。因此,本文中最終選擇將兩個編碼器融合。
第三行是將MLP替換成VLM中使用的輕量化下采樣的projector。但卻發現,這種替換在大多數任務上導致了一定程度的性能下降。然而,減少視覺token并未加快模型的生成速度。因此,在考慮高效的架構時,過度追求視覺token數量的壓縮似乎并非必要。
第四行是將經過chat語料微調過的模型替換未經過微調的Base模型。其中的兩項任務,VizWiz和VSR有較大的性能下降。所以最終本文選擇的是通過直接使用經過chat語料微調后的模型。
最后兩行是關于訓練流程的分析。第五行代表模型僅僅進行了一個epoch的微調。第六行則是完全按照LLaVa的訓練方案,先進行一個epoch的pre-alignment,然后再進行微調。可以明顯看到,如果模型沒有經過充分的微調,會始終處于欠擬合的狀態。在所有任務上,特別是在visual grounding任務上,表現非常差。在這種情況下,作者發現,即使進行了pre-alignment,也可能損害模型的最終性能。
Additional Evaluation
此外,作者在Text-VQA的Benchmark中有一個有趣的發現。在先前的LLaVa測試中,其測試方法是將圖片先通過一個OCR系統對圖像進行文字識別,然后將所有識別出的文字結果作為一個額外的prompt輸入給大模型。從圖中可以看出這種提示方法對于LLaVa模型非常有效,引入OCR提示后,準確率相比沒有引入提示的情況下提升了約12%。
在遵循LLaVa的測試方法時,作者發現使用OCR提示后,Cobra模型的效果非但沒有提升,反而有所下降。深入分析后,作者發現LLaVa在測試中將OCR的結果置于整個問題描述之后。起初,本文采取相同的做法,但結果表明,這會導致性能普遍下降。然而,若讓Cobra這類RNN模型先看到這些提示再進行測試,其結果與LLaVa的測試相似,有明顯的提升。這一發現使作者意識到RNN模型對信息流輸入的順序極為敏感。因此,在整體輸入結構設計上,可能存在進一步優化的空間。在定量實驗結果之后,本文還展示了幾個典型的例子。
Examples
如下圖所示,Corba展示出比LLaVa v1.5更強大的空間理解和場景描述能力。左側是根據這個問題,LLaVa v1.5回答了一個錯誤的答案。而Cobra能夠正確分析兩個物體之間的位置關系。在右邊的場景中,Cobra-3.5B提供了更準確、更詳細的描述。
在這一示例中,模型能夠準確描述圖像左下角的部分,比如湖邊的碎石,而LLaVa v1.5則錯誤地將這些理解為湖邊的長椅,還有其他場景描述的錯誤。這證明了Cobra模型在場景細節描述上更加精準和詳盡。
Conclusion
總結來說,本文提出了Cobra系列的兩個模型,3.5B和8B,它們成功地將多模態信息融合到Mamba類的語言模型中。不僅大幅度提升了MLLM的計算效率,而且與LLaVa等其他基于Transformer類的模型性能相仿,甚至達到了更高水平。
Potential Implementation
對于基于線性復雜度的RNN類的多模態大語言模型,作者認為還可以從其他方向進行深入研究。例如,利用其高效處理長序列的能力,可以將Cobra擴展為具備視覺模態理解的模型。
在zero-shot情況下,模型已經展現出從單張圖片到視頻輸入的泛化能力。如果在多樣本共同協作的情況下中進行微調訓練,將能進一步提升其視頻理解能力。
此外,Cobra還有望應用于機器人或自動駕駛等需要快速閉環反饋和精準決策的場景。圖中展示的RT-2是Google提出的操控機械臂完成抓取任務的視覺語言行為模型。該模型利用了大量云端GPU算力,但其動作指令的輸出頻率僅為1到3Hz,這對于高精度的機械臂抓取任務來說遠遠不足。然而,如果采用Cobra作為backbone或者其他高效的RNN模型,那么可以有效提升控制頻率。
本期文章由陳研整理
近期精彩文章推薦
跨越邊界,大模型如何助推科技與社會的完美結合?
?關于AI TIME?
AI TIME源起于2019年,旨在發揚科學思辨精神,邀請各界人士對人工智能理論、算法和場景應用的本質問題進行探索,加強思想碰撞,鏈接全球AI學者、行業專家和愛好者,希望以辯論的形式,探討人工智能和人類未來之間的矛盾,探索人工智能領域的未來。
迄今為止,AI TIME已經邀請了2000多位海內外講者,舉辦了逾700場活動,超800萬人次觀看。
?
我知道你?
在看
提出觀點,表達想法,歡迎?
留言
點擊 閱讀原文?觀看作者講解回放!