Fudan DISC推出跨視覺(jué)語(yǔ)言模態(tài)預(yù)訓(xùn)練模型MVPTR
復(fù)旦大學(xué)數(shù)據(jù)智能與社會(huì)計(jì)算實(shí)驗(yàn)室
復(fù)旦大學(xué)數(shù)據(jù)智能與社會(huì)計(jì)算實(shí)驗(yàn)室(Fudan DISC)推出大規(guī)??缫曈X(jué)語(yǔ)言模態(tài)預(yù)訓(xùn)練模型:MVPTR。
本文介紹了 Fudan DISC 實(shí)驗(yàn)室提出的一種基于多層次語(yǔ)義對(duì)齊的多階段視覺(jué) - 語(yǔ)言預(yù)訓(xùn)練模型 MVPTR,MVPTR 是一個(gè)多階段的視覺(jué) - 語(yǔ)言表征模型和預(yù)訓(xùn)練方法,通過(guò)顯式地學(xué)習(xí)表示不同層級(jí)的,來(lái)自圖片和文本信息的語(yǔ)義,并且在不同的階段對(duì)齊不同層次的語(yǔ)義,在大規(guī)模圖片 - 文本對(duì)語(yǔ)料庫(kù)上預(yù)訓(xùn)練的 MVPTR 模型在下游視覺(jué) - 語(yǔ)言任務(wù)上取得了明顯的進(jìn)展,包括圖片 - 文本檢索、視覺(jué)語(yǔ)言問(wèn)答、視覺(jué)推斷、短語(yǔ)指代表示。
- 論文鏈接:https://arxiv.org/abs/2201.12596;
- 代碼鏈接:https://github.com/Junction4Nako/mvp_pytorch.
論文動(dòng)機(jī)
視覺(jué)和語(yǔ)言是人類(lèi)智能的兩大重要體現(xiàn),為了能協(xié)同處理來(lái)自視覺(jué)和文本的信息,近年來(lái)關(guān)于視覺(jué) - 語(yǔ)言的多模態(tài)研究專(zhuān)注于從不同的任務(wù)出發(fā)去對(duì)齊視覺(jué)和語(yǔ)言的語(yǔ)義學(xué)習(xí),比如圖片文本檢索、視覺(jué)語(yǔ)言問(wèn)答(VQA)、短語(yǔ)表示指代等等。為了能打破任務(wù)間的壁壘,學(xué)習(xí)到泛化的多模態(tài)表示,研究者嘗試去構(gòu)建了視覺(jué) - 語(yǔ)言的預(yù)訓(xùn)練模型(如 VL-BERT、UNITER、OSCAR 等),它們?cè)诖笠?guī)模的圖片 - 文本對(duì)上進(jìn)行自監(jiān)督的預(yù)訓(xùn)練后能在下游任務(wù)上通過(guò)微調(diào)取得不錯(cuò)的性能。
目前的視覺(jué)語(yǔ)言預(yù)訓(xùn)練模型大多沿襲了 BERT 中的序列建模方法,從圖片中通過(guò)物體檢測(cè)器 / CNN / 視覺(jué) Transformer 抽取物體級(jí)別 / grid 級(jí)別 / patch 級(jí)別的特征拼接為視覺(jué)序列,將其與分詞后的文本序列拼接成一個(gè)序列,通過(guò)多層 Transformer 學(xué)習(xí)模態(tài)內(nèi)和跨模態(tài)的交互,這樣的方式比較直接,但研究者認(rèn)為其背后卻少了對(duì)于跨模態(tài)信息間多層語(yǔ)義粒度對(duì)齊的探索。
該研究在這里給出了一個(gè)圖片 - 文本對(duì)的例子來(lái)說(shuō)明圖片 - 文本間的語(yǔ)義匹配情況。首先模態(tài)內(nèi)的語(yǔ)義存在著層次嵌套結(jié)構(gòu),整個(gè)圖片可以由很多的子圖組成,每個(gè)子圖里可能有多個(gè)物體存在;對(duì)于一個(gè)句子,可以被分詞成很多的 token,多個(gè) token 可以組成短語(yǔ)。同時(shí)各個(gè)層次間的語(yǔ)義對(duì)齊是互相幫助的,image tagging 將 token 對(duì)應(yīng)到圖片及圖片中的物體,可以進(jìn)一步幫助包含這個(gè)詞的短語(yǔ)匹配到圖片中的區(qū)域,完成 phrase grounding 的任務(wù)。基于物體和 token 的匹配、短語(yǔ)和圖片區(qū)域的匹配信息,可以進(jìn)一步推斷出圖片 - 句子間的相似度,完成 image-text retrieval 的任務(wù)。
所以為了能協(xié)同利用起多個(gè)層次的語(yǔ)義對(duì)齊,來(lái)自 Fudan DISC 實(shí)驗(yàn)室的研究者提出了 MVPTR:a Multi-stage Vision-language Pre-training framework。MVPTR 首先從文本和圖片中分別構(gòu)建了兩個(gè)層次的語(yǔ)義:對(duì)于圖片,該研究使用物體檢測(cè)器抽取區(qū)域的特征,并且用預(yù)測(cè)出的物體類(lèi)別作為物體級(jí)別的語(yǔ)義概念;對(duì)于文本,除了分詞后的 token,該研究使用文本場(chǎng)景圖解析器從中提取出場(chǎng)景圖的結(jié)構(gòu)化元組,作為短語(yǔ)級(jí)的語(yǔ)義概念。同時(shí) MVPTR 的模型分成了兩個(gè)階段:?jiǎn)文B(tài)學(xué)習(xí)和跨模態(tài)學(xué)習(xí)階段。在單模態(tài)階段,模型學(xué)習(xí)模態(tài)內(nèi)的交互,得到各個(gè)模態(tài)的多層語(yǔ)義的表示;在跨模態(tài)階段,模型學(xué)習(xí)模態(tài)間的交互,并進(jìn)行細(xì)粒度的推理。對(duì)于 MVPTR 的預(yù)訓(xùn)練,該研究設(shè)計(jì)在不同階段設(shè)計(jì)了不同的自監(jiān)督任務(wù),來(lái)進(jìn)行多層次的語(yǔ)義對(duì)齊。在單模態(tài)的視覺(jué)端,研究者引入了 MCR(masked concept recovering)來(lái)對(duì)齊區(qū)域特征和物體級(jí)別的概念;在跨模態(tài)階段,首先通過(guò) VSC(visual-semantic constrastive)來(lái)粗粒度地對(duì)齊全局的圖片、文本單模態(tài)表征,然后使用 WPG(weakly-supervised phrase grouding)對(duì)齊短語(yǔ)級(jí)概念和區(qū)域特征,最后使用 ITM(image-text matching)和 MLM(masked language modeling)作為高層次的語(yǔ)義推斷任務(wù)。
通過(guò)在約 9M 的圖片 - 文本對(duì)的語(yǔ)料庫(kù)上進(jìn)行預(yù)訓(xùn)練,該研究的 base 設(shè)定下的 MVPTR 在下游任務(wù)上有著更好的表現(xiàn)。
方法介紹
MVPTR 的模型結(jié)構(gòu)如下圖所示:
模型輸入
為了能顯式地學(xué)習(xí)多層次語(yǔ)義,如圖所示,對(duì)于每個(gè)模態(tài)研究者構(gòu)建了兩個(gè)部分的輸入,通過(guò)不同的顏色進(jìn)行表示。受啟發(fā)于之前主要是用在 Image captioning 任務(wù)中的方法,該研究通過(guò)學(xué)習(xí)概念 embedding 的方法引入其他層次的語(yǔ)義。
對(duì)于文本,類(lèi)似 BERT 的處理方式,該研究首先將其經(jīng)過(guò)分詞器拆分成詞,同時(shí)使用現(xiàn)成的文本場(chǎng)景圖解析器 SPICE 將其解析為一個(gè)場(chǎng)景圖,將圖中的結(jié)構(gòu)元組(物體,屬性 - 物體,物體 - 關(guān)系 - 物體)作為短語(yǔ)級(jí)語(yǔ)義概念。對(duì)于每個(gè)短語(yǔ)概念,該研究會(huì)為其單獨(dú)學(xué)習(xí)一個(gè) embedding 表示,初始化自其中所有詞的平均 embedding,同時(shí)因?yàn)楦拍钚枰蟹夯?,該研究只考慮出現(xiàn)在預(yù)訓(xùn)練語(yǔ)料庫(kù)中超過(guò) 50 次的短語(yǔ)。
對(duì)于圖片,該研究使用固定的物體檢測(cè)器從圖片中檢測(cè)出重要的物體的標(biāo)記框和對(duì)應(yīng)的視覺(jué)特征,進(jìn)一步通過(guò)一個(gè)線性層將視覺(jué)特征和標(biāo)記框坐標(biāo)映射到與其他 embedding 同樣的維度。同時(shí)對(duì)每個(gè)框使用對(duì)應(yīng)的物體標(biāo)簽作為物體級(jí)別的概念,使用其標(biāo)簽詞的 embedding 作為這個(gè)概念的表示。
單模態(tài)學(xué)習(xí)
在單模態(tài)學(xué)習(xí)階段,MVPTR 只通過(guò)一個(gè)視覺(jué)編碼器和文本編碼器學(xué)習(xí)模態(tài)內(nèi)的交互和表示,視覺(jué)編碼器以拼接后物體特征序列和物體標(biāo)簽序列作為輸入,學(xué)習(xí)物體間的關(guān)系,同時(shí)對(duì)齊物體特征和對(duì)應(yīng)的物體級(jí)概念;文本編碼器以拼接后的詞序列和短語(yǔ)序列作為輸入,提供短語(yǔ)中的結(jié)構(gòu)信息,并進(jìn)一步學(xué)習(xí)語(yǔ)境下的短語(yǔ)級(jí)概念。
MCR 遮蓋概念恢復(fù)
在視覺(jué)編碼器中,輸入的視覺(jué)序列里包括了物體級(jí)的概念,以預(yù)測(cè)標(biāo)簽的方式。之前的代表性工作 Oscar 認(rèn)為這樣的概念可以作為錨點(diǎn)幫助對(duì)齊物體表示和詞。為了能進(jìn)一步地強(qiáng)化其錨點(diǎn)的作用,該研究提出了一個(gè)預(yù)訓(xùn)練任務(wù) MCR。
類(lèi)似于 BERT 的 MLM 任務(wù),研究者隨機(jī)地遮蓋輸入標(biāo)簽序列中的一部分,將其設(shè)為特殊字符 [MASK] 或隨機(jī)替換,基于視覺(jué)編碼器的輸出,通過(guò)一個(gè)線性層預(yù)測(cè)遮蓋部分原本的標(biāo)簽。MCR 任務(wù)可以看作是弱監(jiān)督下的視覺(jué)特征和物體概念的對(duì)齊(預(yù)測(cè)特定的標(biāo)簽需要學(xué)習(xí)到對(duì)應(yīng)物體與其的聯(lián)系),MCR 類(lèi)似 image tagging,能進(jìn)一步對(duì)齊區(qū)域的表示,幫助之后跨模態(tài)的交互學(xué)習(xí)。
跨模態(tài)學(xué)習(xí)
在學(xué)習(xí)了單模態(tài)內(nèi)的交互和表征后,在第二階段學(xué)習(xí)跨模態(tài)的語(yǔ)義交互和對(duì)齊。首先從粗粒度,使用 VSC 任務(wù)對(duì)齊單模態(tài)編碼器得到的全局表示,對(duì)齊兩個(gè)編碼器的語(yǔ)義空間;之后將對(duì)齊后的 token、短語(yǔ)、物體特征序列拼接輸入到多模態(tài)編碼器中進(jìn)行學(xué)習(xí),為了防止在進(jìn)行后續(xù)預(yù)訓(xùn)練任務(wù)中產(chǎn)生從標(biāo)簽到詞的 shortcut,影響真正跨模態(tài)關(guān)系的學(xué)習(xí),標(biāo)簽序列并沒(méi)有被考慮進(jìn)去。在本階段,進(jìn)一步通過(guò) WPG 來(lái)對(duì)齊物體特征和短語(yǔ)表示,并基于之前的表征,完成高層的推理任務(wù),包括 ITM 和 MLM。
VSC 視覺(jué)語(yǔ)義對(duì)比學(xué)習(xí)
在輸入跨模態(tài)編碼器之前,MVPTR 通過(guò) VSC 對(duì)齊兩個(gè)模態(tài)編碼器的語(yǔ)義空間,其具體的做法類(lèi)似于 CLIP 和 ALBEF 中的訓(xùn)練方式,在全局層次上粗粒度地對(duì)齊圖片和文本。
該研究將視覺(jué)、文本編碼器得到的“[CLS]”token 的表示作為圖片和文本的全局表征,以?xún)蓚€(gè)向量間的余弦相似度作為語(yǔ)義相似度。使用 InfoNCE 作為訓(xùn)練損失,同一 batch 里僅匹配的圖片 - 文本為正樣本對(duì)(對(duì)應(yīng)模型圖中 cosine similarity 矩陣的對(duì)角線部分),其余都為負(fù)樣本對(duì)。
通過(guò)對(duì)全局粗粒度的對(duì)齊,該研究將處在對(duì)齊后空間的 token、短語(yǔ)、物體特征序列拼接輸入跨模態(tài)編碼器。
WPG 弱監(jiān)督下的短語(yǔ)對(duì)齊
在跨模態(tài)學(xué)習(xí)階段,該研究進(jìn)一步顯式地學(xué)習(xí)短語(yǔ)間的對(duì)齊關(guān)系,因?yàn)闊o(wú)法得到具體的圖片區(qū)域和短語(yǔ)的匹配關(guān)系,研究者在 MVPTR 中使用類(lèi)似現(xiàn)有的弱監(jiān)督的 phrase grounding 方法進(jìn)行學(xué)習(xí)。
對(duì)于每一個(gè)共同編碼的圖片 - 文本對(duì),該研究考慮跨模態(tài)編碼器得到的 n 個(gè)短語(yǔ)的表征和 m 個(gè)物體特征的表征,通過(guò)余弦相似度計(jì)算每個(gè)短語(yǔ) - 區(qū)域間的語(yǔ)義相似度,對(duì)這樣 n*m 的相似度矩陣?;诙鄻永龑W(xué)習(xí)的方法對(duì)每個(gè)短語(yǔ)選擇與其最相似的一個(gè)區(qū)域作為該短語(yǔ)在整個(gè)圖片中匹配的得分,對(duì)所有短語(yǔ)進(jìn)行平均后得到基于短語(yǔ) - 區(qū)域匹配的圖片 - 文本匹配得分。之后訓(xùn)練過(guò)程中可以根據(jù)圖片 - 句子匹配的得分
類(lèi)似之前在 ALBEF 工作中的發(fā)現(xiàn),該研究在跨模態(tài)編碼器的第三層訓(xùn)練 WPG。在模型完成各層次的匹配之后,最后模型完成高層次的語(yǔ)義推理任務(wù),包括 ITM 和 MLM。
ITM 圖文匹配
圖文匹配是視覺(jué) - 語(yǔ)言預(yù)訓(xùn)練模型中常用的預(yù)訓(xùn)練任務(wù),本質(zhì)上是一個(gè)序列關(guān)系推斷的任務(wù),需要判斷該多模態(tài)序列的圖片和文本是否匹配。
在 MVPTR 中,該研究直接通過(guò)使用跨模態(tài)編碼器輸出的 CLS token 特征,學(xué)習(xí)一個(gè)多層感知器來(lái)預(yù)測(cè)是否匹配的 2 分類(lèi)得分。類(lèi)似 ALBEF 的做法,該研究基于 VSC 任務(wù)輸出的全局相似度從訓(xùn)練批次中采樣得到較難的負(fù)樣本進(jìn)行 ITM 任務(wù)。
MLM 遮蓋語(yǔ)言模型
遮蓋語(yǔ)言模型同樣是預(yù)訓(xùn)練模型中的常見(jiàn)任務(wù),研究者認(rèn)為其本質(zhì)上是一個(gè)推理任務(wù),因?yàn)閷?duì)于描述性文本中的關(guān)鍵詞語(yǔ)的遮蓋和回復(fù),比如數(shù)量詞、形容詞、名詞、動(dòng)作等實(shí)質(zhì)上是從不同角度的推理任務(wù)。MLM 的設(shè)定與其他的預(yù)訓(xùn)練模型一致:隨機(jī)遮蓋或替換一部分的 token,通過(guò)模型輸出的表征,學(xué)習(xí)一個(gè)多層感知器預(yù)測(cè)原本的 token。
實(shí)驗(yàn)
預(yù)訓(xùn)練設(shè)定
首先在模型結(jié)構(gòu)上,該研究采取了與 BERT-base 一樣的參數(shù)設(shè)定,兩個(gè)單模態(tài)編碼器均為 6 層的 Transformer 架構(gòu),參數(shù)初始化自 BERT-base 的前六層;跨模態(tài)編碼器也為 6 層的 Transformer 架構(gòu),參數(shù)初始化自 BERT-base 的后六層。
預(yù)訓(xùn)練的數(shù)據(jù)集上,MVPTR 使用了和 VinVL 一樣的數(shù)據(jù)集,包括 MSCOCO、FLickr30k、GQA、Conceptual Captions、SBU、OpenImages,一共包括約 5M 的圖片和 9M 的圖文對(duì)。對(duì)于圖片特征的抽取,MVPTR 使用的 VinVL 提供的物體檢測(cè)器。具體的模型和訓(xùn)練參數(shù)設(shè)置可以參考論文中的介紹。
該研究對(duì)預(yù)訓(xùn)練后的 MVPTR 在多個(gè)下游任務(wù)上進(jìn)行了微調(diào),包括在 MSCOCO 和 Flickr30k 上的圖文檢索任務(wù)、VQA v2 上的視覺(jué)問(wèn)答任務(wù)、SNLI-VE 上的視覺(jué)推理任務(wù)、RefCOCO + 上的短語(yǔ)表示指代任務(wù),具體的微調(diào)方法和參數(shù)設(shè)定等請(qǐng)參考文章以及代碼。
下圖給出了在其中三個(gè)任務(wù)上結(jié)果:
可以看到預(yù)訓(xùn)練后的 MVPTR 在 MSCOCO 和 FLickr 上的圖文檢索任務(wù)上都有著明顯的提升,表明多個(gè)層次的語(yǔ)義對(duì)齊能夠很好地幫助模型學(xué)習(xí)到全局上圖片 - 文本的匹配關(guān)系。同時(shí)研究者在 Flickr 數(shù)據(jù)集上驗(yàn)證了 MVPTR 中單模態(tài)編碼器的語(yǔ)義對(duì)齊能力(表 2 的下半部分),并比較了 MVPTR 的單模態(tài)部分和其他基于單模態(tài)編碼器的方法(CLIP * 為該實(shí)驗(yàn)中微調(diào)后的 CLIP-ViT32 版本),從結(jié)果可以看出通過(guò)引入額外的概念,以及物體概念的對(duì)齊任務(wù) MCR,單模態(tài)部分表現(xiàn)甚至要優(yōu)于另外兩個(gè)模型 CLIP,盡管 MVPTR-Uni 的參數(shù)規(guī)模僅為另外兩者的一半(6 層與 12 層 Transformer 架構(gòu))。
在跨模態(tài)推理任務(wù)上,MVPTR 在 VQA 上有著一定的提升,同時(shí)對(duì)比 MVPTR 和 VinVL 在各個(gè)類(lèi)別上的表現(xiàn),MVPTR 在 VQA v2 的 “其他” 類(lèi)問(wèn)題上表現(xiàn)較好,VinVL 在數(shù)字類(lèi)問(wèn)題上表現(xiàn)較好。因?yàn)?VinVL 會(huì)直接根據(jù)物體檢測(cè)標(biāo)簽去預(yù)測(cè)答案,研究者猜想這樣的方法能很好地完成數(shù)數(shù)類(lèi)問(wèn)題,而 MVPTR 則更好地學(xué)習(xí)了跨模態(tài)的交互,來(lái)解決需要推理的其他類(lèi)問(wèn)題。在 SNLI-VE 上的視覺(jué)蘊(yùn)含任務(wù)里,MVPTR 在測(cè)試集上效果要稍遜于 ALBEF,研究者認(rèn)為 ALBEF 在測(cè)試集上的強(qiáng)大的泛化表現(xiàn)來(lái)自于其設(shè)計(jì)的動(dòng)量蒸餾方法,此外,該研究也會(huì)進(jìn)一步探究這樣的方法對(duì)于 MVPTR 的改進(jìn)。
在 RefCOCO + 上的短語(yǔ)指代表示任務(wù)上,因?yàn)樵撊蝿?wù)很依賴(lài)于物體檢測(cè)器和所考慮的區(qū)域選擇,所以研究者比較了 MVPTR 和 VinVL(VinVL 的結(jié)果為該研究使用與 MVPTR 類(lèi)似方法進(jìn)行微調(diào)實(shí)驗(yàn)得到):在 RefCOCO + 上的 testA 和 testB 上的兩個(gè)測(cè)試集準(zhǔn)確率上,MVPTR 的表現(xiàn)為 80.88/67.11,要高于 VinVL 的 80.5/65.96,說(shuō)明 MVPTR 具有更強(qiáng)的對(duì)于短語(yǔ)級(jí)別對(duì)齊能力。
消融實(shí)驗(yàn)
為了驗(yàn)證各層次對(duì)齊的協(xié)同促進(jìn)作用,該研究針對(duì)物體 / 短語(yǔ)級(jí)概念的引入和對(duì)齊設(shè)計(jì)了消融實(shí)驗(yàn):
首先比較表內(nèi)的前三行,可以看出缺少物體級(jí)概念的引入會(huì)給其他層次的語(yǔ)義對(duì)齊帶來(lái)負(fù)面影響,包括細(xì)粒度、粗粒度的圖片文本匹配,短語(yǔ)級(jí)別的對(duì)齊,并進(jìn)一步影響對(duì)視覺(jué)問(wèn)答的推理能力,且影響為所有消融實(shí)驗(yàn)里最大的,說(shuō)明物體級(jí)的概念為其他層次對(duì)齊的基礎(chǔ)。同時(shí)僅在引入輸入的基礎(chǔ)上,通過(guò) MCR 的弱監(jiān)督能進(jìn)一步提高模型的性能,尤其是對(duì)于 Uni-RSUM 的影響說(shuō)明了 MCR 能強(qiáng)化物體概念的錨點(diǎn)能力。總的來(lái)說(shuō)物體級(jí)別的對(duì)齊幫助了短語(yǔ)級(jí)與圖文級(jí)的對(duì)齊。
通過(guò)比較第一行和最后兩行,可以看到短語(yǔ)級(jí)的概念能比較有效地幫助完成 visual grounding 和細(xì)粒度的圖文匹配任務(wù),同時(shí)比較最后兩行可以看出如果不通過(guò) WPG 顯式地引導(dǎo)學(xué)習(xí)短語(yǔ)概念的表示,僅在輸入端引入短語(yǔ)概念反而會(huì)引入一些噪聲,拉低了圖文匹配的表現(xiàn)??偟膩?lái)說(shuō)短語(yǔ)級(jí)的對(duì)齊幫助了圖片文本的對(duì)齊。
概念的層次化表示
在 MVPTR 中該研究顯式學(xué)習(xí)了短語(yǔ)級(jí)、物體級(jí)的概念,研究者通過(guò)可視化學(xué)習(xí)到的概念 embedding 表征來(lái)驗(yàn)證兩者間存在嵌套層次關(guān)系。如下圖所示,研究者使用 t-SNE 將學(xué)習(xí)到的 embedding 降維到 2 維,選擇了幾個(gè)常見(jiàn)的物體概念(三角形)和包含該物體概念的短語(yǔ)概念(圓點(diǎn))進(jìn)行呈現(xiàn):
可以從圖中看到明顯的層次化特點(diǎn):物體級(jí)別的概念作為聚類(lèi)的中心,與其相關(guān)的短語(yǔ)級(jí)概念分布在其周?chē)?,出現(xiàn)在各種場(chǎng)景中的 man 和 car 分布很廣泛,cat/dog/bird 都為動(dòng)物分布很接近。
短語(yǔ)指代可視化
為了顯式展現(xiàn) MVPTR 學(xué)習(xí)到的短語(yǔ)級(jí)別概念的對(duì)齊,該研究使用 WPG 中的短語(yǔ) - 區(qū)域間的相似度,對(duì)每個(gè)短語(yǔ)展示了與其語(yǔ)義相似度最高的區(qū)域,以下展現(xiàn)了一個(gè) MSCOCO 測(cè)試集中的例子: