MiniGPT-4升級(jí)到MiniGPT-v2了,不用GPT-4照樣完成多模態(tài)任務(wù)
幾個(gè)月前,來(lái)自 KAUST(沙特阿卜杜拉國(guó)王科技大學(xué))的幾位研究者提出了一個(gè)名為 MiniGPT-4 的項(xiàng)目,它能提供類(lèi)似 GPT-4 的圖像理解與對(duì)話(huà)能力。
例如 MiniGPT-4 能夠回答下圖中出現(xiàn)的景象:「圖片描述的是生長(zhǎng)在冰凍湖上的一株仙人掌。仙人掌周?chē)芯薮蟮谋?,遠(yuǎn)處還有白雪皚皚的山峰……」假如你接著詢(xún)問(wèn)這種景象能夠發(fā)生在現(xiàn)實(shí)世界中嗎?MiniGPT-4 給出的回答是這張圖片在現(xiàn)實(shí)世界中并不常見(jiàn),并給出了原因。
短短幾個(gè)月過(guò)去了,近日,KAUST 團(tuán)隊(duì)以及來(lái)自 Meta 的研究者宣布,他們將 MiniGPT-4 重磅升級(jí)到了 MiniGPT-v2 版本。
論文地址:https://arxiv.org/pdf/2310.09478.pdf
論文主頁(yè):https://minigpt-v2.github.io/
Demo: https://minigpt-v2.github.io/
具體而言,MiniGPT-v2 可以作為一個(gè)統(tǒng)一的接口來(lái)更好地處理各種視覺(jué) - 語(yǔ)言任務(wù)。同時(shí),本文建議在訓(xùn)練模型時(shí)對(duì)不同的任務(wù)使用唯一的識(shí)別符號(hào),這些識(shí)別符號(hào)有利于模型輕松的區(qū)分每個(gè)任務(wù)指令,并提高每個(gè)任務(wù)模型的學(xué)習(xí)效率。
為了評(píng)估 MiniGPT-v2 模型的性能,研究者對(duì)不同的視覺(jué) - 語(yǔ)言任務(wù)進(jìn)行了廣泛的實(shí)驗(yàn)。結(jié)果表明,與之前的視覺(jué) - 語(yǔ)言通用模型(例如 MiniGPT-4、InstructBLIP、 LLaVA 和 Shikra)相比,MiniGPT-v2 在各種基準(zhǔn)上實(shí)現(xiàn)了 SOTA 或相當(dāng)?shù)男阅?。例?MiniGPT-v2 在 VSR 基準(zhǔn)上比 MiniGPT-4 高出 21.3%,比 InstructBLIP 高出 11.3%,比 LLaVA 高出 11.7%。
下面我們通過(guò)具體的示例來(lái)說(shuō)明 MiniGPT-v2 識(shí)別符號(hào)的作用。
例如,通過(guò)加 [grounding] 識(shí)別符號(hào),模型可以很容易生成一個(gè)帶有空間位置感知的圖片描述:
通過(guò)添加 [detection] 識(shí)別符號(hào),模型可以直接提取輸入文本里面的物體并且找到它們?cè)趫D片中的空間位置:
框出圖中的一個(gè)物體,通過(guò)加 [identify] ,可以讓模型直接識(shí)別出來(lái)物體的名字:
通過(guò)加 [refer] 和一個(gè)物體的描述,模型可以直接幫你找到物體對(duì)應(yīng)的空間位置:
你也可以不加任何任務(wù)識(shí)別符合,和圖片進(jìn)行對(duì)話(huà):
模型的空間感知也變得更強(qiáng),可以直接問(wèn)模型誰(shuí)出現(xiàn)在圖片的左面,中間和右面:
方法介紹
MiniGPT-v2 模型架構(gòu)如下圖所示,它由三個(gè)部分組成:視覺(jué)主干、線(xiàn)性投影層和大型語(yǔ)言模型。
視覺(jué)主干:MiniGPT-v2 采用 EVA 作為主干模型,并且在訓(xùn)練期間會(huì)凍結(jié)視覺(jué)主干。訓(xùn)練模型的圖像分辨率為 448x448 ,并插入位置編碼來(lái)擴(kuò)展更高的圖像分辨率。
線(xiàn)性投影層:本文旨在將所有的視覺(jué) token 從凍結(jié)的視覺(jué)主干投影到語(yǔ)言模型空間中。然而,對(duì)于更高分辨率的圖像(例如 448x448),投影所有的圖像 token 會(huì)導(dǎo)致非常長(zhǎng)的序列輸入(例如 1024 個(gè) token),顯著降低了訓(xùn)練和推理效率。因此,本文簡(jiǎn)單地將嵌入空間中相鄰的 4 個(gè)視覺(jué) token 連接起來(lái),并將它們一起投影到大型語(yǔ)言模型的同一特征空間中的單個(gè)嵌入中,從而將視覺(jué)輸入 token 的數(shù)量減少了 4 倍。
大型語(yǔ)言模型:MiniGPT-v2 采用開(kāi)源的 LLaMA2-chat (7B) 作為語(yǔ)言模型主干。在該研究中,語(yǔ)言模型被視為各種視覺(jué)語(yǔ)言輸入的統(tǒng)一接口。本文直接借助 LLaMA-2 語(yǔ)言 token 來(lái)執(zhí)行各種視覺(jué)語(yǔ)言任務(wù)。對(duì)于需要生成空間位置的視覺(jué)基礎(chǔ)任務(wù),本文直接要求語(yǔ)言模型生成邊界框的文本表示以表示其空間位置。
多任務(wù)指令訓(xùn)練
本文使用任務(wù)識(shí)別符號(hào)指令來(lái)訓(xùn)練模型,分為三個(gè)階段。各階段訓(xùn)練使用的數(shù)據(jù)集如表 2 所示。
階段 1:預(yù)訓(xùn)練。本文對(duì)弱標(biāo)記數(shù)據(jù)集給出了高采樣率,以獲得更多樣化的知識(shí)。
階段 2:多任務(wù)訓(xùn)練。為了提高 MiniGPT-v2 在每個(gè)任務(wù)上的性能,現(xiàn)階段只專(zhuān)注于使用細(xì)粒度數(shù)據(jù)集來(lái)訓(xùn)練模型。研究者從 stage-1 中排除 GRIT-20M 和 LAION 等弱監(jiān)督數(shù)據(jù)集,并根據(jù)每個(gè)任務(wù)的頻率更新數(shù)據(jù)采樣比。該策略使本文模型能夠優(yōu)先考慮高質(zhì)量對(duì)齊的圖像文本數(shù)據(jù),從而在各種任務(wù)中獲得卓越的性能。
階段 3:多模態(tài)指令調(diào)優(yōu)。隨后,本文專(zhuān)注于使用更多多模態(tài)指令數(shù)據(jù)集來(lái)微調(diào)模型,并增強(qiáng)其作為聊天機(jī)器人的對(duì)話(huà)能力。
最后,官方也提供了 Demo 供讀者測(cè)試,例如,下圖中左邊我們上傳一張照片,然后選擇 [Detection] ,接著輸入「red balloon」,模型就能識(shí)別出圖中紅色的氣球:
感興趣的讀者,可以查看論文主頁(yè)了解更多內(nèi)容。