基于BERT的多模学习——VL-BERT篇
前言
BERT的出現(xiàn)讓NLP發(fā)展實現(xiàn)了一個大飛躍,甚至有大佬說NLP已經(jīng)沒有可以做的啦,后面就是拼機器拼money了。但是,我認為任何領(lǐng)域的進步之后都會有更苛刻的要求,科研沒有盡頭,需求也永遠無法滿足。而多模態(tài),要求機器擁有多維度的感知能力,就是一個更強的挑戰(zhàn)。 關(guān)于這個話題也逐漸成為另外一個新熱點。從19年到現(xiàn)在的論文數(shù)量就可見一斑。
所以,為了迎上發(fā)展的勢頭,在繼videoBERT之后又調(diào)研了一番image和BERT結(jié)合的工作。下文將介紹MSRA出品的VL-BERT,通過這個模型來一覽現(xiàn)階段 image+BERT 的研究現(xiàn)狀吧。
后臺回復【VL-BERT】下載論文原文~~
模型介紹
VL-BERT模型以transformer為骨干,將BERT的輸入擴展為文本+圖像。那么問題來了,怎樣將兩者花式融合呢?讓我們揣測一下作者的煉丹思路:
圖片和文本沒法直接對齊,暴力輸入整張圖
于是就有了圖中用紅色虛線框起來的部分,直接將圖像、文本、segment和position embeding加和輸入。這樣做MLM任務是沒問題了,但怎樣確定模型能準確提取圖像信息呢?
提取圖像中的重要部分,增加無文本的圖像輸入
由于整張圖片的粒度遠大于文本token,一次性輸入整張圖片顯然不利于圖像和文本信息的交互。所以使用了目標檢測工具對圖片進行分塊,提取圖像中感興趣的核心部分RoI(region-of-interest),加上[IMG]標識,輸入到模型中(圖中淺綠色實線框起來的部分)。 為了不失掉全局信息,在[END]對應的位置又加上了整張圖像。另外,我們假設(shè)圖片的不同區(qū)域是沒有順序可言的,即position embedding是一樣的。
類比文本輸入,模型實際上接受的是文本token(subword)對應的word embedding,所以我們會對所有圖像輸入(不管是整張圖片還是局部RoIs)使用pre-trained R-CNN提取2048維的visual feature embedding輸入到模型中。
自監(jiān)督學習任務(pretrain)
結(jié)合上文介紹的模型結(jié)構(gòu),再強調(diào)一下兩個預訓練任務:
Masked Language Model with visual Clues
根據(jù)文本+圖像信息預測文本token,升級版的MLM。 唯一不同的是被mask的word除了根據(jù)沒被mask的文本來預測還可以根據(jù)視覺的信息來輔助。比如上圖中的例子,被mask后的word sequence是kitten drinking from [MASK],如果沒有圖片給我們的視覺信息是無法預測出被mask的詞是bottle。
Masked RoI Classification with LinguisticClues
根據(jù)文本+圖像信息預測RoIs的類別,針對圖像的“MLM”。 以下圖為例,首先對圖片使用目標檢測工具提取RoIs并獲得所屬類別,然后隨機mask局部區(qū)域(樹葉部分)。需要注意的是,由于模型會接收整張圖片的輸入,為了避免信息泄露,整張圖片對應的部分也要mask。最后,模型根據(jù)文本信息和被mask的圖片信息預測mask區(qū)域所屬類別。
下游任務(finetune)
模型通過接收<text, image>輸入,通過自監(jiān)督任務學習到general跨模態(tài)表示后,可以很自然的應用很多跨模態(tài)的任務中。延續(xù)原始BERT的設(shè)定,[CLS]最后輸出的feature可以預測文本和圖片的關(guān)系(sentence-image-relation),被mask的text token或者RoI的輸出用來做word-level或者RoI-level的預測。
下面來看看不同的下游任務是怎么實現(xiàn)的叭~
視覺常識推理(VCR)
給定一張圖片中的多個RoIs和問題(Q),需要選出答案(A)并解釋為什么(R)。VCR任務超越目標檢測(object detection),是需要結(jié)合認知層面的復雜推理任務。下圖展示了數(shù)據(jù)中的兩個例子[1],確實很難很復雜????。
整體任務{(diào)Q->AR}可以拆解成兩個子任務 {Q->A}(根據(jù)問題Q預測答案A) 和 {QA->R}(根據(jù)QA推理原因R)。而這兩個子任務都是選擇題,模型只需要從候選答案中挑選認為最正確的選項就好。如下圖文本輸入由兩部分組成Question(已知信息)和Answer(候選答案),圖像輸入為人工標注的RoIs。針對{Q->A}任務,已知的文本信息為問題Q的文本描述。對{QA->R}任務,已知的文本信息為問題Q加上一個任務預測的答案A。兩個任務都根據(jù)最后一層[CLS]的輸出預測該候選答案(A/R)是否正確。
有一個不合理的地方是,正常人的思維模式是先有一個靠譜的理論依據(jù)R得出正確答案A。但是上面模型的邏輯是先有正確答案,再去找合理的原因。因果顛倒。
最終結(jié)果,不管是對比task-specific模型R2C還是其他多模態(tài)模型,VL-BERT都有非常明顯的優(yōu)勢的。
視覺問答 (VQA)
文章follow了一個專門針對VQA任務設(shè)計的模型BUTD實驗設(shè)定,把VQA任務轉(zhuǎn)化為一個有3k+候選答案的多分類問題,根據(jù)被masked Answer token最后一層的輸出預測。
相比special design的網(wǎng)絡(luò)結(jié)構(gòu)(BUTD),VL-BERT在準確率上提升了5%,和其他多模態(tài)pretrain model效果相當。
Referenceing Expression Comprehension(visual grounding)
這個任務呢,是根據(jù)一句自然語言的描述,定位圖片中的具體區(qū)域,即判斷這句描述講的是圖片的哪個位置。 因為我們已經(jīng)對圖片劃分出了RoIs,所以只需要將每個RoIs最后的輸出,接一個Regin classification(二分類),判斷Query是否是描述這個區(qū)域即可。
分析
VL-BERT模型以transformer為骨干,將BERT擴展可以同時接受文本和圖片型輸入,學習跨模態(tài)的表示,在三個下游任務上遠超task specific的SOTA模型,并取得和其他pretrain模型comparable或者略勝一籌的結(jié)果。
其主要的優(yōu)勢在于 文本和圖片的深度交互。對比同期工作LXMERT[2],對text和image輸入分別使用single-modal Transformer,然后再接一個cross-modal Transformer,VL-BERT使用一個single cross-modal Transformer,讓文本和圖片信息能更早更多的交互。
但是這個工作我認為還是有一個需要打問號,或者進一步深入研究的地方。
文章使用的兩個自監(jiān)督任務都是由MLM衍生而來,沒有判斷文本和圖片是否一致(Sentence-Image Relation Prediction)的這個典型任務。
文章在對比實驗分析中,提到加入Sentence-Image Relation Prediction任務進行預訓練會導致下游任務效果下降,原因分析是由于數(shù)據(jù)質(zhì)量問題,sentence-image對應信號噪聲較大。 但是直覺上文本和圖片的對應關(guān)系是一個很強的學習跨模態(tài)表示的信號,并且在ViBERT[3]和LXMERT上該任務是有正向收益的。
如果優(yōu)化數(shù)據(jù)質(zhì)量,減少sentence-imgage對應信號的噪聲,是否可以優(yōu)化VL-BERT的效果?
如果仍然是負收益,是否是另外兩個自監(jiān)督任務已經(jīng)涵蓋了sentence-image對應信息,增加這個任務唯一的作用就是帶來了數(shù)據(jù)的噪聲?
這三個自監(jiān)督任務是否存在沖突或者矛盾的地方?其關(guān)系是什么?值得進一步的研究和探索。
關(guān)注【夕小瑤的賣萌屋】后臺回復【VL-BERT】下載帶筆記的論文原文~~
總結(jié)
以上是生活随笔為你收集整理的基于BERT的多模学习——VL-BERT篇的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 共同一作,会被认可吗?
- 下一篇: 报名通道开启 | 顶会 ICLR 20