蘋果最近又搞了個大新聞,偷偷摸摸地發(fā)布了一個叫 FastVLM 的模型。聽名字可能有點懵,但簡單來說,這玩意兒就是讓你的 iPhone 瞬間擁有了“火眼金睛”,不僅能看懂圖片里的各種復(fù)雜信息,還能像個段子手一樣跟你“貧嘴”!而且最厲害的是,它速度快到飛起,蘋果官方宣稱,首次給你“貧嘴”的速度比之前的一些模型快了足足85倍!這簡直是要逆天啊!
視覺語言模型的 “成長煩惱”
現(xiàn)在的視覺語言模型,就像個不斷進(jìn)化的小天才,能同時理解圖像和文本信息。它的應(yīng)用可廣了,從幫咱們理解圖片里的內(nèi)容,到輔助創(chuàng)作圖文并茂的作品,都不在話下。一般來說,VLMs 是把預(yù)訓(xùn)練的視覺骨干網(wǎng)絡(luò)提取的視覺 token,通過投影層傳給預(yù)訓(xùn)練的大語言模型(LLM)。之前好多研究都在探索怎么訓(xùn)練和微調(diào)這幾個組件,讓模型變得更強(qiáng)。
研究發(fā)現(xiàn),提高圖像分辨率能顯著提升 VLMs 在一些任務(wù)上的表現(xiàn),尤其是處理那些文字和圖表豐富的圖像時。你想啊,圖片越清晰,模型能 “看” 到的細(xì)節(jié)就越多,理解起來不就更準(zhǔn)確嘛!但這也帶來了不少麻煩。一方面,很多預(yù)訓(xùn)練的視覺編碼器不太支持高分辨率圖像,強(qiáng)行用的話,預(yù)訓(xùn)練效率會變得超級低。為了解決這個問題,有人嘗試持續(xù)預(yù)訓(xùn)練視覺骨干網(wǎng)絡(luò),讓它適應(yīng)高分辨率;還有人把圖像切成小塊,像拼圖一樣分別處理,不過這也挺麻煩的。
另一方面,高分辨率推理的計算成本太高了!不管是直接進(jìn)行高分辨率推理,還是把圖像切塊后進(jìn)行低分辨率推理,都會產(chǎn)生很大的延遲。而且高分辨率圖像生成的 token 更多,這又增加了 LLM 處理這些 token 的時間,導(dǎo)致整個模型輸出首個 token 的時間(TTFT)變長。這就好比你讓一個人一下子處理太多任務(wù),他肯定會手忙腳亂,速度變慢。
FastVLM 來 “救場”
面對這些難題,蘋果的研究團(tuán)隊搞出了 FastVLM,它就像是給 VLMs 注入了一劑 “加速藥水”,能在保證性能的同時,大幅提升運(yùn)行效率。
架構(gòu)設(shè)計:另辟蹊徑的 “智慧結(jié)晶”
FastVLM 的核心是 FastViTHD 這個新型混合視覺編碼器。在探索 VLM 架構(gòu)時,團(tuán)隊發(fā)現(xiàn)混合視覺編碼器(卷積層加上 Transformer 塊)是個不錯的選擇。卷積層可以輕松處理不同分辨率的圖像,Transformer 塊則能進(jìn)一步優(yōu)化視覺 token,讓 LLM 更好地理解。他們用的 FastViT 就是基于這種架構(gòu),經(jīng)過 MobileCLIP 預(yù)訓(xùn)練,效果還不錯。比如,在相同的 VLM 基準(zhǔn)測試中,F(xiàn)astViT 生成視覺 token 的速度比 ViT 模型快4倍多,準(zhǔn)確率也更高。
不過,團(tuán)隊并沒有滿足于此。為了讓模型在高分辨率下表現(xiàn)更出色,他們又設(shè)計了 FastViTHD。這個新架構(gòu)在 FastViT 的基礎(chǔ)上做了不少改進(jìn)。它增加了一個額外的階段和下采樣層,讓 self - attention 層處理的張量更小,這樣就能減少圖像編碼延遲,還能為計算密集型的 LLM 解碼器生成更少的 token,從而降低 TTFT。打個比方,這就像是給模型的 “信息高速公路” 拓寬了車道,還優(yōu)化了交通規(guī)則,讓信息傳遞得又快又穩(wěn)。
訓(xùn)練與優(yōu)化:精心打磨的 “成長之路”
訓(xùn)練 FastVLM 就像培養(yǎng)一個優(yōu)秀的運(yùn)動員,需要精心規(guī)劃。研究人員采用了兩階段訓(xùn)練法,和 LLaVA -1.5的設(shè)置類似。第一階段,只訓(xùn)練投影儀,用的是 LLaVA -558K 對齊數(shù)據(jù)集,訓(xùn)練時圖像分辨率和骨干網(wǎng)絡(luò)預(yù)訓(xùn)練分辨率一致。第二階段,用 LLaVA -665K 監(jiān)督微調(diào)數(shù)據(jù)集,把模型的所有模塊都拿來訓(xùn)練,這時圖像分辨率就設(shè)置成目標(biāo)分辨率。
為了讓模型更好地適應(yīng)不同的任務(wù)和數(shù)據(jù)集,研究人員還做了很多優(yōu)化。比如,他們嘗試了多尺度特征提取,把網(wǎng)絡(luò)不同階段的信息整合起來,讓模型能更好地理解圖像。就像我們看一幅畫,不僅要看整體,還要關(guān)注細(xì)節(jié),多尺度特征提取就起到了這個作用。此外,他們還對比了不同的池化策略和連接器設(shè)計,發(fā)現(xiàn)用深度卷積進(jìn)行池化能讓模型性能更優(yōu)。
實驗結(jié)果:實力碾壓的 “高光時刻”
在實驗環(huán)節(jié),F(xiàn)astVLM 簡直就是 “學(xué)霸”,成績相當(dāng)亮眼!研究人員在主流基準(zhǔn)測試中對 FastVLM 進(jìn)行了全面評估,包括 GQA、ScienceQA、TextVQA 等多個任務(wù)。結(jié)果顯示,在和其他模型的對比中,F(xiàn)astVLM 優(yōu)勢明顯。
和基于卷積的 ConvLLaVA 相比,同樣的 LLM 和相似的訓(xùn)練數(shù)據(jù)規(guī)模下,F(xiàn)astVLM 在 TextVQA 任務(wù)上性能提升了8.4%,在 DocVQA 任務(wù)上提升了12.5%,而且速度還快了22%。在高分辨率下,這種優(yōu)勢更加明顯,F(xiàn)astVLM 的速度比 ConvLLaVA 快了2倍,在多個基準(zhǔn)測試中都取得了更好的成績。
和其他用多個視覺編碼器的模型比,F(xiàn)astVLM 也毫不遜色。像 Cambrian -1用了多個視覺編碼器,視覺編碼在總 TTFT 中占比很大,而 FastVLM 用單個編碼器,不僅速度比它快7.9倍,在相似的視覺指令調(diào)優(yōu)數(shù)據(jù)集訓(xùn)練下,性能還超過了 Cambrian -1。就算是在對視覺 token 數(shù)量很敏感的文本豐富型評估任務(wù)中,F(xiàn)astVLM 也能憑借更少的視覺 token 取得更好的成績。
FastVLM 的優(yōu)勢與意義
FastVLM 的出現(xiàn),給視覺語言模型領(lǐng)域帶來了新的希望。它最大的優(yōu)勢就是在保證模型性能的同時,大幅提升了運(yùn)行效率。以前的模型在處理高分辨率圖像時,要么速度慢,要么準(zhǔn)確率低,F(xiàn)astVLM 很好地解決了這些問題。
對于我們普通用戶來說,這意味著以后在手機(jī)上使用相關(guān)應(yīng)用時,體驗會大大提升。比如用圖像搜索功能,以前可能要等半天才能出結(jié)果,現(xiàn)在用搭載 FastVLM 的應(yīng)用,瞬間就能得到答案。對于開發(fā)者來說,F(xiàn)astVLM 提供了一個高效的模型框架,能讓他們開發(fā)出更強(qiáng)大、更智能的應(yīng)用。
從更宏觀的角度看,F(xiàn)astVLM 的成功也為未來的研究指明了方向。它證明了通過優(yōu)化架構(gòu)和訓(xùn)練方法,可以在資源有限的設(shè)備上實現(xiàn)高性能的視覺語言模型。相信在不久的將來,會有更多基于 FastVLM 的創(chuàng)新應(yīng)用出現(xiàn),讓我們的生活變得更加智能和便捷。
論文地址:https://www.arxiv.org/pdf/2412.13303
項目地址:https://github.com/apple/ml-fastvlm
標(biāo)簽:蘋果 FastVLM 視覺語言模型 iPhone