我們距離GPT-4V真的很近了嗎? 原創(chuàng)
在 ChatGPT 引爆 AI 圈之后,很多人預(yù)言 2024 年將會(huì)是多模態(tài)的元年。的確,我們?cè)?23 年的最后一季度見(jiàn)證了 GPT-4V 的發(fā)布,前不久Google 家的 Gemini 和 Anthropic 的 Claude 3 也同樣支持多模態(tài)(Multimodal to Text),并且 Gemini 1.5 中能夠從兩小時(shí)的視頻中準(zhǔn)確“撈針”出其中一幀包含的畫(huà)面。
國(guó)內(nèi)這方面的工作以 Qwen-VL 為代表,也同樣取得了非常不錯(cuò)的效果。我們最近也在大視覺(jué)語(yǔ)言模型(LMM)做了一些嘗試,發(fā)布了 Reka Flash,能夠接受圖片、音頻和視頻的輸入,在 MMMU 上也靠著相對(duì)較小的基礎(chǔ)語(yǔ)言模型(21B)也排名能夠排名靠前(截至 2024 年 3 月 9 日,這各領(lǐng)域變化太快了誰(shuí)知道明天會(huì)是什么樣呢哈哈),且 vibe test 下來(lái)感覺(jué)還行)。
但是我們真的距離 GPT-4V 很近了嗎?The Dawn of LMMs 展現(xiàn)了很多目前無(wú)法被 benchmark 分?jǐn)?shù)所涵蓋的能力,似乎還在提醒著我們,前面的路還很長(zhǎng)。這篇文章,我將嘗試結(jié)合自己的經(jīng)歷和公開(kāi)的資料,分享一下對(duì)未來(lái)視覺(jué)語(yǔ)言模型發(fā)展的一些想法。
01 Why LMMs?
?
為什么大家都會(huì)預(yù)測(cè)視覺(jué)語(yǔ)言模型會(huì)在 2024 年爆發(fā)?我覺(jué)得原因主要有兩點(diǎn):
1. 視覺(jué)的基礎(chǔ)模型眾多 + 數(shù)據(jù)充足:CV 的自監(jiān)督學(xué)習(xí)隨著 BERT 開(kāi)始就已經(jīng)有一系列工作,CLIP、MAE 、DINO 等能夠很好地編碼圖片,很好地起到了 visual tokenizer 的效果。
此外,應(yīng)對(duì)上下文的限制,QFormer、Perceiever 也已經(jīng)被廣泛地驗(yàn)證了其有效性。除了純文本以外,圖文對(duì)也是少數(shù)我們能夠輕易獲取到的大量的數(shù)據(jù) (e.g,Laion5B),image captioning 本質(zhì)也是一種 next token prediction。
2. 應(yīng)用場(chǎng)景廣泛:這個(gè)也很直接,日常生活中大多數(shù)數(shù)據(jù)的呈現(xiàn)方式就是,圖片 + 文本 -> 文本的范式能夠極大擴(kuò)充模型處理任務(wù)的范圍。
另外,隨著大語(yǔ)言模型發(fā)展催生出的一系列 Agent 研究,在瀏覽網(wǎng)頁(yè)的時(shí)候會(huì)依賴 html 作為輸入。如果能夠直接讓 Agent 看到屏幕,輸出對(duì)應(yīng)的操作坐標(biāo),更加簡(jiǎn)潔優(yōu)雅。進(jìn)一步地,Deepmind 的 RT 2 也驗(yàn)證了視覺(jué)語(yǔ)言模型能夠很快地遷移到諸如 robotic 場(chǎng)景,在 embodied 環(huán)境中發(fā)揮重要的作用。
這兩個(gè)條件可謂是大視覺(jué)語(yǔ)言模型發(fā)展的天時(shí)和地利,我們也同樣可以用這一條路徑來(lái)進(jìn)一步驗(yàn)壓縮即智能這一想法,看看這一框架是否能夠在具備了更豐富模態(tài)信息后,背后世界模型的學(xué)習(xí)速率是否會(huì)進(jìn)一步加快。
關(guān)于這一點(diǎn),之前我們的一個(gè)工作 VEC 就發(fā)現(xiàn)即使基于純文本 NTP 訓(xùn)練的 LLMs 也能夠?qū)W習(xí)到視覺(jué)世界的一些基礎(chǔ)概念,但更 embodied 的一些知識(shí)則很難(或者以相當(dāng)?shù)偷乃俾剩┍粚W(xué)習(xí)到,需要借助視覺(jué)語(yǔ)言模型來(lái)輔助學(xué)習(xí)。
02 模型架構(gòu)
目前主流的 LMM 架構(gòu)基本上是以大語(yǔ)言模型 LLM 為核心骨架,然后將圖片視覺(jué)信息整合到 LLM 的預(yù)測(cè)過(guò)程中,因而這個(gè)框架里一般有以下幾個(gè)組件:
1. 基座語(yǔ)言模型:負(fù)責(zé)處理多模態(tài)的 embedding,并且執(zhí)行預(yù)測(cè)推理的功能。一般選擇能夠獲取到的最強(qiáng)、大小最合適的語(yǔ)言模型即可;
2. 視覺(jué)編碼器:負(fù)責(zé)將圖片信息編碼成一組向量,常用的選擇是 CLIP-style 的各個(gè)模型(e.g., CLIP-ViT-L/14),最新的 Prismatic VLM 表明,CLIP 得到的圖片表示缺少細(xì)粒度的信息,可以通過(guò)和另外的視覺(jué)編碼器結(jié)合來(lái)提升在 grounding 等任務(wù)上的性能。
3. 模態(tài)橋接(Modality Bridge):負(fù)責(zé)將視覺(jué)編碼器得到的圖片表示進(jìn)行變換映射到新的空間方便 LLM 進(jìn)行處理。這里的做法有一些不同的方案:
- Image as Word Embedding:一種經(jīng)典的嘗試是將視覺(jué)編碼器得到的圖片向量通過(guò)簡(jiǎn)單的 MLP 映射到對(duì)應(yīng)的 word embedding 維度,隨后就可以將圖片作為多個(gè) word embeddings 進(jìn)行統(tǒng)一的處理。這一方面的局限是視覺(jué)編碼器的分辨率往往是固定且比較小的(224 和 336)。
?
而在很多場(chǎng)景下這樣的分辨率完全不夠用(OCR 識(shí)別、Agent 瀏覽等),可以通過(guò) post-training 來(lái)提升圖片的分辨率也可以 bypass 掉 image encoder(沒(méi)有了預(yù)訓(xùn)練分辨率的限制),直接將圖片切成小塊,隨后映射到 word embedding 空間。
Fuyu-8B 就是這樣一個(gè)思路,在高分辨率的場(chǎng)景下展現(xiàn)出了非常出色的性能。分辨率提升帶來(lái)的圖片向量數(shù)量平方級(jí)增長(zhǎng)帶來(lái)的計(jì)算開(kāi)銷,可以通過(guò)利用 QFormer 或者是 Perceiver 來(lái)映射到固定數(shù)量來(lái)解決。
- Cross Attention to Visual Embedding:Deepmind 最早搞的 Flamingo就是通過(guò)在 LLM 中引入額外的 Gated Cross-Attention Layer,來(lái)在文本生成的過(guò)程中整合視覺(jué)端的信息:
這種方案對(duì)區(qū)分不同模態(tài)有著更加強(qiáng)的先驗(yàn),但后續(xù)看到的一些開(kāi)源實(shí)現(xiàn)和改進(jìn),都很難超越前一種方案。如果訓(xùn)練量足夠大,那么在前一種方案中 LLM 也能夠自適應(yīng)地學(xué)習(xí)到這種先驗(yàn),因而我個(gè)人覺(jué)得這個(gè)方案或許在 2 年前是有道理,但在今天 scaling law 的暴力美學(xué)下,可能更少先驗(yàn),更多數(shù)據(jù)會(huì)是樸實(shí)且有效的方案。
GPT-4V 是什么架構(gòu)?雖然 tech report 里啥也沒(méi)說(shuō),但是我們從 GPT-4V 的收費(fèi)計(jì)算的方式以及 API Doc,可能可以猜測(cè)一下背后視覺(jué)模塊的方案。收費(fèi)模式分兩種:
- Low Resolution: 這種模式下圖片會(huì)被算作 85 input token 進(jìn)行收費(fèi);
- High Resolution: 圖片首先在保持長(zhǎng)寬比會(huì)被縮放 2K x 2K 的方塊內(nèi)(花費(fèi) 85 個(gè) token)然后圖片的短邊將會(huì)被縮放到 768px,并且計(jì)算縮放后的圖片需要多少個(gè) 512 x 512 的 grid 來(lái)覆蓋。
- ?
官方給出的示例:
由此我們可以看到,一個(gè) 512 x 512 的 image tile 被 170 個(gè) token 所表示。假設(shè)背后也是 VIT,那我們可以推測(cè):
- 如果使用 QFormer 對(duì)輸出的 visual token 做降采樣,那原先的 visual tokens 在 300 - 1000 左右(參考 Qwen-VL 的 report,1024 個(gè) patch 被壓縮到 256 個(gè)的效果相對(duì)最好),則意味著 VIT 的 patch size 最大可能是 28,最小可能是 16 的樣子;
- 如果沒(méi)有使用 QFormer 進(jìn)行壓縮,那么以為著 512 x 512 的圖片可能被用了一個(gè) 40 的 patch size 。如果是用了這樣的 patch size,那么我們可以進(jìn)一步推測(cè) low resolution 原始的圖片可能會(huì)被統(tǒng)一放縮到 384 x 384 ,因此我們可以用差不多 85 個(gè) token 來(lái)表示每個(gè)圖片。
最近開(kāi)源的 LLaVA-Next 也采用了類似的方案,并且在一種 benchmark 上都取得了出色的性能,側(cè)面驗(yàn)證了這種方法的有效性。還有一種是 adaptive 的搜索式的方案 V*,根據(jù)需要來(lái)切分圖片里的小塊重新交給模型,類似起到 re-attention 的效果,在小物體的檢測(cè)問(wèn)題上面有很大的潛力??偟膩?lái)說(shuō),這些方案都是為了解決輸入圖片分辨率不夠的問(wèn)題。
03 數(shù)據(jù)
數(shù)據(jù)一直是這波大語(yǔ)言模型發(fā)展的重中之重,從訓(xùn)練和測(cè)評(píng)的角度,目前我個(gè)人的感受是:
- LMM 依舊能夠通過(guò)構(gòu)建高質(zhì)量的訓(xùn)練數(shù)據(jù)獲取性能躍遷的階段;
- LMM 測(cè)評(píng)基準(zhǔn)有了不少進(jìn)展,但是依舊無(wú)法比較全面的 cover 多模態(tài)的能力。多模態(tài)下的 language modeling loss 也許依舊是一個(gè)金指標(biāo)。
訓(xùn)練數(shù)據(jù)
?
我們大致的可以將訓(xùn)練分成兩個(gè)階段:Modality Alignment Training 和 Supervised fine tuning(SFT),前者為了圖片映射到 LLM 的語(yǔ)義空間,而后者則是激發(fā)模型的能力來(lái)做各種下游任務(wù)。
Alignment Dataset: 這塊早先大家會(huì)用開(kāi)源的 Laion400M 和 Laion5B 進(jìn)行對(duì)齊訓(xùn)練,但實(shí)際情況可能是這些數(shù)據(jù)集中的 image-text pair 都過(guò)于 noisy,對(duì)于學(xué)習(xí)模態(tài)的 alignment 效率并不高。
一種解決思路是對(duì) alignment數(shù)據(jù)集進(jìn)行更加細(xì)粒度的表述,進(jìn)而能夠幫助模型更好地學(xué)習(xí)圖片中物體的相關(guān)位置等關(guān)系,和LLM原先的知識(shí)掛上鉤。ShareGPT4V 就是一個(gè)很好的嘗試,驗(yàn)證了利用 GPT-4V 重新標(biāo)注 image captions,就能夠帶來(lái)明顯的提升。除了 ShareGPT4V 以外,CapsFusion 也展現(xiàn)了用更豐富的 caption 帶來(lái)的提升。
SFT Dataset: 學(xué)術(shù)界開(kāi)源的比較好的訓(xùn)練數(shù)據(jù)目前主要是 LLaVA 系列,其利用 bounding box 等輔助信息將圖片文本化后,利用 ChatGPT/GPT-4 來(lái)生成了大量的 pseudo multimodal pair (detailed captioning, reasoning and conversation)。
這個(gè)范式非常有效,也是為什么 LLaVA 系列一出來(lái)效果很驚艷的原因。但他依舊存在著一些問(wèn)題:
- 既然是 pseudo multimodal,那必然會(huì)引發(fā) hallucination 問(wèn)題(因?yàn)?ChatGPT 并沒(méi)有真正的 see the image)。這一點(diǎn)也是目前大家關(guān)注的重點(diǎn)。解決的方案有 LLaVA-RLHF,通過(guò)額外引入一個(gè) Factual reward model 來(lái)提升 hallucination;Volcano 則是用 self-feedback 來(lái) revise 輸出。或者更直接一點(diǎn),我們用早先人工標(biāo)注的數(shù)據(jù)做一下統(tǒng)一格式,在保真度方面就會(huì)有很大的提升,這方面我們做了 M3IT 來(lái)方便大家重新利用之前的數(shù)據(jù)集來(lái)做 SFT 。
- 任務(wù)的覆蓋面不夠廣,在重要的 OCR、Chart 場(chǎng)景下能力都有所欠缺。這點(diǎn)我們對(duì)比 Qwen、LLaVA 1.5 以及 LLaVA-Next 的性能就能看出來(lái),使用了更多更豐富的多模態(tài)數(shù)據(jù)集,基本上都能對(duì)下游如 MMMU、MathVista 等測(cè)評(píng)數(shù)據(jù)集有所提升。
通過(guò)這些研究我們可以猜測(cè),GPT-4V 背后一定是大量的數(shù)據(jù)工程,具體地可能體現(xiàn)在:
Alignment 端:相比于開(kāi)源模型利用 CLIP 等作為 vision encoder,OpenAI 應(yīng)該采用了強(qiáng)化版的 CLIP 模型(畢竟現(xiàn)在的 CLIP 還都是他們 2021 年的成果)。之前的 CLIP 不夠好的很大原因就在于圖片和文本的信息量不對(duì)等,caption 大多是簡(jiǎn)單的幾個(gè)詞來(lái)描述物體,而圖片中則有豐富的顏色、位置等時(shí)空信息。
不妨可以想象一下,我們用現(xiàn)在的 GPT-4V 標(biāo)注整個(gè) web images(~ 10B level ?),提升文本端的豐富度并對(duì) hallucination 做控制。在此數(shù)據(jù)集基礎(chǔ)上我們訓(xùn)練一個(gè) vision encoder,再迭代地更新 GPT-4V,相信會(huì)有一個(gè)明顯的提升;
SFT 端:我認(rèn)為在足夠好的對(duì)齊 + 在基模型足夠強(qiáng)大這兩個(gè)條件下,可能只需要足夠多樣的(質(zhì)量 >> 數(shù)量)的 prompting 數(shù)據(jù)就能夠在現(xiàn)在的 VQA、Captioning benchmark 上表現(xiàn)出色。因?yàn)榭陀^來(lái)說(shuō),現(xiàn)在的測(cè)評(píng)數(shù)據(jù)集也都集中在這兩個(gè)任務(wù)形式上,因此少量的 prompt 就能夠泛化到下游的數(shù)據(jù)集上。
測(cè)評(píng)基準(zhǔn)
?
目前關(guān)注 LMM 測(cè)評(píng)的工作有很多,大致歸類一下:
綜合性 Benchmark:融合了各種多模態(tài)任務(wù),綜合地評(píng)估 LMM 各個(gè)方面的能力,主要形式是 VQA,給定問(wèn)題和圖片讓模型回答 Yes/No 或者是給出選項(xiàng),代表的工作有 MME 還有 MM-Vet。
這里有一些有意思的事情是 MME 采用 Yes/No parsing 來(lái)評(píng)估,而 MM-Vet 則會(huì)采用 ChatGPT 打分的方式評(píng)估,前者其實(shí)對(duì) GPT-4V 喜歡給出帶理由的回答的模型并不友好,模型可能回答正確但沒(méi)有被正確解析;而后者則容易傾向于 prefer ChatGPT style 的模型,偏好使用了接近數(shù)據(jù)的模型。
特定領(lǐng)域的 Benchmark:hallucination 是多模態(tài)更容易體現(xiàn)出來(lái)的一個(gè)問(wèn)題,造成的潛在后果也挺大,這方面測(cè)評(píng)的 benchmark 像 POPE 和 MMHal。但是 POPE 有個(gè)問(wèn)題這個(gè)數(shù)據(jù)集依賴于 COCO 的 tag,就我個(gè)人的經(jīng)驗(yàn)而言,那個(gè) tag 的準(zhǔn)確率并不高,POPE 上的分?jǐn)?shù)因而會(huì)收到一定程度的影響。
此外,大家認(rèn)為 math reasoning 可能是比較有挑戰(zhàn)性的任務(wù),因此像 MMMU 和 MathVista 的關(guān)注度都比較高,目前 GPT-4V 也距離人類還是有很大差距。這塊我們最近的一個(gè)工作是意識(shí)到 ArXiv 上的很多 paper 天然也是多模態(tài)的,并且涵蓋了豐富的學(xué)科內(nèi)容,因而我們構(gòu)建了一個(gè) Multimodal ArXiv,提供 captioning 和 QA (GPT-4V generated) 的數(shù)據(jù)集,能夠很有效地提升模型數(shù)學(xué)推理的能力。
這些基準(zhǔn)上的分?jǐn)?shù)依舊很難比較全面的反應(yīng)模型的能力,模型會(huì)做題不代表這個(gè)模型可用性高。能夠給用戶體驗(yàn)讓用戶有 wow 感覺(jué)的模型,才可能說(shuō)真的是看到了 GPT-4V 的尾巴,而目前能做到這點(diǎn)的模型,還不多。
04 Future Directions
?
總體來(lái)看,我認(rèn)為我們和 GPT4-V 的差距在于 (i) 基模型的指令跟隨和理解能力;(ii) 模態(tài)對(duì)齊的訓(xùn)練質(zhì)量和數(shù)量,以及 (iii) 多樣的 SFT 數(shù)據(jù)的構(gòu)建。
其中 (i) 是國(guó)內(nèi)很多公司和研究組努力的方向,相信在大伙的努力下我們會(huì)有一個(gè)強(qiáng)大的基模型,現(xiàn)在有的 Qwen 、Deepseek、Skywork 等系列模型都很有機(jī)會(huì)。
(ii) 目前開(kāi)源出來(lái)數(shù)據(jù)集的量級(jí)還不夠大,而這件事情的投入(re-annotating the image world)應(yīng)該也是巨大。但值得注意的是,DALLE 3 和 Sora 也是用了類似的方案來(lái)對(duì) image/video的描述進(jìn)行細(xì)節(jié)化,因而進(jìn)一步提升了生成圖片和視頻的質(zhì)量。做這件事情的意義可能對(duì)于我們?nèi)ソR粋€(gè)高分辨率的世界模型是有重大意義的。
(iii) 這件事情或許可以交給學(xué)術(shù)界來(lái)搞,定義和標(biāo)注有意義的多模態(tài)任務(wù),進(jìn)而整合到 SFT 過(guò)程中即可。
除去這些看似比較 boring 的搞數(shù)據(jù)以外,還有什么值得探索的方向呢,這邊我也分析一些我個(gè)人比較感興趣的問(wèn)題(帶貨環(huán)節(jié)):
1. LMM Hallucination 形成的原因?在文本領(lǐng)域的 Hallucination 的原因大家也都還在廣泛地討論中,那引入一個(gè)額外模態(tài)之后,hallucination 的來(lái)源會(huì)更多了嗎?是數(shù)據(jù)還是模型架構(gòu)帶來(lái)的問(wèn)題?如果我們能夠更清晰的看到模型內(nèi)部的一些信號(hào),或許會(huì)對(duì)理解這些問(wèn)題更有幫助。
2. LMM 的安全性:ChatGPT 出來(lái)之后就有很多 Red Teaming 和 Jailbreaking的嘗試,那 GPT-4V 會(huì)不會(huì)也有這種安全性上的 concern 呢?
Red Teaming VLM 提供了一個(gè)很好的 benchmark 來(lái)做這方面的探索;此外,ImgTrojan 也發(fā)現(xiàn)之前 NLP 廣泛存在的后門(mén)攻擊同樣適用于 LMM,并且會(huì)成為更為隱蔽的特洛伊木馬來(lái)規(guī)避掉 safe alignment。這里后續(xù)的研究又可以進(jìn)行攻擊、防御、消除的探索。
3. RLHF/DPO for LMM:前面提到的 alignment 和 sft 更多地還是依賴于人類標(biāo)注的數(shù)據(jù),當(dāng)人類無(wú)法給出 ground-truth 的標(biāo)注的時(shí)候,我們就需要構(gòu)建一個(gè) reward model 來(lái)告訴我們哪些回復(fù)是更合適的。
RLHF 和 DPO 已經(jīng)在大語(yǔ)言模型上被驗(yàn)證了有效性,但當(dāng)存在額外的模態(tài)的時(shí)候,如何定義哪個(gè)回復(fù)是更好的(例如會(huì)有更多樣的偏見(jiàn)),如何更好地協(xié)調(diào)一致的 reward label 的標(biāo)注等等都會(huì)帶來(lái)新的問(wèn)題和挑戰(zhàn)。
我們的 VLFeedback 提供了一個(gè)很直給的方案,讓 GPT-4V 來(lái)標(biāo)注不同的方面,并且也驗(yàn)證了這個(gè)框架的有效性。但最近我們也發(fā)現(xiàn) DPO 在不同基模型上的效果還不太一樣,依舊存在很多細(xì)節(jié)的問(wèn)題,值得進(jìn)一步的分析。
總的來(lái)說(shuō),LMM 在無(wú)論是學(xué)術(shù)界還是工業(yè)界,都依舊大有可為。
希望能和這一領(lǐng)域的研究者們一起,接近 GPT-4V,超越 OpenAI!
本文轉(zhuǎn)自 PaperWeekly ,作者:李磊
