Oscar: Object-Semantics Aligned Pre-training for Vision-Language Tasks
邊看邊寫的。寫暈乎了。。
摘要:
當前視覺語言任務常用 大規模預訓練模型+多模態表示(這里指image-text pair)。他們結合的比較暴力(圖文簡單拼接+self-attention機制),我們的核心idea就是引入了目標識別生成的tag 作為錨點降低了對齊難度。
結論:
在六個視覺+語言的理解/生成任務上取得了state-of-the-art
1 Introduction:
肯定大方法:Vision-Language pre-training (VLP)在vision-language(V+L)tasks上state-of-the-art(SoTA,ps:還沒見過老外這么縮)
前人不太行:
1.結合比較粗暴:簡單拼接圖文,使用self-attention機制
2.視覺作為輸入的問題:可能過采樣(ps:正樣本過擬合),有噪音,以及模糊
我們:
1.引入目標檢測的tag作為錨點,降低對齊的學習難度(main idea)
2.使用(有詞序列,一組目標標簽和一組圖像區域特征組成的)三位一體的訓練樣本
[
PS:下面涉及到兩個命題。1.圖像主要(salient)對象的准確檢測 2. 1中的對象常在text中被提及。他這里使用的語氣是正向的表達,(motivated by& are often mentioned)
但細說的話這是兩個hypothesis:1.目標識別准確率應該比較高了,但如何定義主要對象,這里可能涉及到一些的問答或者可控的事情。2.主要對象就要被提及么,邏輯不太通順吧。
]
3.首創性:錨點在NLP有應用但在VLP是首次。之前有人在V+Ltask中引入了錨點但是是針對增強圖像區域的特征表示的
4.contributions:提出VLP模型Oscar,在多個V+Lbenchmarks上創紀錄,針對他們的main idea開展了廣泛的分析和實驗論證。
2 Background:
定義一個N維的數據集為:
I for image and w for text sequence
預訓練的目的是以自監督方式訓練一個針對圖文對的跨模態表示方式,並且經過微調后可適用與多類下游任務
當前VLP的限制在於input singular embeddings(單次還是奇異?不認識)的質量。
作者指出當前的兩個問題:
1. 模糊:因為圖像區域的重疊
2. 缺少GT
3 Oscar Pre-training:
受到人類通感的啟發,開發了Oscar去在semantic level去尋找各模態中名的實(invariant)
input:
Word-Tag-Image triple(w,q,v),這里好像說明了tag是以圖像中檢測出來的w構成的(?不確定
alignment:
word 和 tag 的對齊交給BERT模型負責(NLP 閱讀理解方面18年里程碑,部分指標已超越人類) 圖像中被檢測出tag的區域會分配給更高的注意力權重
生成標簽和區域:
給定一個有K個區域的圖像,使用Faster R-CNN提取出(v',z)的視覺語義(visual semantic)作為位置敏感形區域特征向量(position-sensitive region feature vector)
其中區域特征——v'是2048D 向量;區域位置——z是RD向量(R=4or6)
之后通過線性映射轉換為v向量以確保和word embedding 同維度
與此同時,同一個Faster R-CNN對圖像檢測出一組高精度目標標簽,對這組標簽進行word embedding得到word sequence q。
預訓練目的:
對(q,w,v)輸入以兩種解讀,並基於此設計VLP模型。x是模態的角度旨在模態間區分。x‘是字典的角度旨在區分不同語義空間。
A Dictionary View: Masked Token Loss.
定義了一個discrete token sequence as h=[w,q],使用了Masked Token Loss (MTL) 。每個iteration中隨機mask 15%的h,以token[MASK]代替。訓練模型基於臨近token和全部圖像特征v通過最
小化如下的公式來猜出[MASK]。
作者補了一句with additional image information attended to help ground the learned word embeddings in the vision context.
A Modality View: Contrastive Loss.
這次的配對是h'=[q,v](也就是標簽和圖像放在一起作為視覺信息)。采樣了一組polluted的q(50%概率以從數據集中隨機采樣到的tag sequence進行替換),被污染部分記為[CLS]。
編碼器的輸出為(h',w)對這部分增加了一個FC層作為一個二分類器,預測是否含有表達原來的圖片信息(y=1)。
跨模態訓練中,使用tag代替圖像去調整BERT的word嵌入空間,使word更接近檢測出來的tag而不是被污染的
總的損失函數是簡單相加,應該有改頭
Discussion:我們故意留了個簡單相加的形式,與現存VLP的Loss比 我們的簡單且更有效。
Pre-training Corpus:
反正挺多的列在附錄了。總共4.1m獨立的圖像和6.5m的三位一體數據。
Implementation details:
跑了兩個模型Oscar_B和Oscar_L
BERT的隱藏層數H base設置為768, lager設置為1024
用於控制維度的線性映射矩陣W
可訓練的就這兩個參數,使用了AdamW Optimizer
OscarBis trained for at least 1.0M steps, with learning rate 5e−5and batch size 768. OscarLis trained for at least 900k steps, with learning rate 1e−5 and batch size 512. The sequence length of discrete tokens h and region features v are 35 and 50, respectively.
4 Adapting to V+L Tasks
說了半天模型,現在說說任務。總共試驗了七個下游任務包括五個理解任務和兩個生成任務。下面的文章結構是introduce the tasks and our fine-tuning strategy
Image-Text Retrieval
分成了圖像檢索和文本檢索兩個子任務——二分類問題。把一個對齊的圖文對隨機替換一個,交給分類器去預測是否對齊了。使用了binary classification loss。測試階段根據概率得分生成查詢的排序。
Image Caption
使用了seq2seq的模型,和pre-training一樣輸入為三位一體的數據,隨機mask15%的caption,再根據相應的輸出進行分類以預測token(英文有點暈)?生成caption時只能參考其之前的token去模擬單向生成過程,caption同時完全關注圖像區域和目標標簽反之不然' Note that all caption tokens will have full attentions to image regions and object tags but not the other way around. '(ps:是指有全局信息么?)。
推理時將圖像區域,目標標簽和一個特殊token[CLS]編碼作為輸入,生成時對生成位置放[MASK]再根據輸出可能性采樣一個token 替換掉[MASK]並在后接一個[MASK],輸出[STOP]時停止。使用了beam search(束搜索,類似一個幾步內的貪婪或者說幾步的決策樹)(beam size=5)跑的COCO
Novel Object Captioning (NoCaps)
用了predicted Visual Genome and Open Images labels去生成tag序列,未初始化預訓練
VQA
VQA v2.0, 三位一體改成了問題 標簽 和圖像區域,以多標簽分類處理,Oscar的輸出fed給任務別的線性分類器。
懶得寫了調一下
GQA
NLVR2
5 Experimental Results & Analysis
定義了個幾個state-of-the-art
SoTAs: 小模型在基於 Transformer 的 VLP 模型之前實現的最佳性能。
SoTAb:與 BERT base 大小相似的 VLP 模型實現的最佳性能
SoTAL:大小與 BERT large 相似的模型產生的最佳性能。其實to the best of our knowledge只有UNITER
我們最優,基本提升還都不小,而且我們訓練樣本還少(6.5m 相較於UNITER 9.6m 以及LXMERT 9.18m)。SoTA甚至比不過我們的小模型
定性來說
下標可視化了COCO test set上習得的圖文對 語義特征空間,並比較了使用/不適用tag進行預訓練
finding1 類間: 同一類的模態間距離減少,作者舉了person 和 zebra(ps:如果讓我來表述的話,我不會去說減少,而是說修正了一部分前面說到的圖像采樣缺點(重疊 噪音 過采樣),像bus dog之類的目測是負優化)
finding2 跨類:tag的輔助拉近了相近語義的距離,作者舉了動物組,家具組,交通工具組(ps:潑個冷水,bus和train 圖分的比較開但是語義粘連的有點厲害)
作者標簽的准確性和多樣性提高了caption的細粒度。
消融實驗:
1. Tag
針對tag做了三任務三組的對比,在問答 檢索 和caption ** no tags predicted tags 和GT tags進行試驗
結論當然是tag有助於多快好省到達收斂(ps:從圖來看貌似caption的幫助最小)
2.Attention Interaction
在fine-tuning階段對圖文檢索進行了實驗。
先說一下表:第二行為baseline,也就是w-v注意力未引入tag。第一行為引入了tag,第三行為未引入視覺信息。
finding:1.tag引入有用 2. tag不適合作為特征。 1+2=Oscar是對的
3. Tag in Pre-training
在數據集visual genome和open image上訓練了兩個目標檢測器
finding: 1.我們再一次驗證了要tag 2.VG版本略好於OI版本,解釋為VG的對象集豐富(ps:這個很好理解啊,標簽多才好caption,准確率還有BERT兜着)
6 Related Work
VLP
早期工作主要依賴於self-attention的Transformers去學習多模態下的聯合表達。Oscar到了新的SoTA,拓寬了下游任務范圍,降低了對齊難度提高了效率
Object Tags
(圖像+*)早些時候圖像+特征向量方法成為了圖像理解的主流。但前人的做法或者簡單的將tag作為輸入,有的人做了圖像+tag但沒有和caption關聯。我們提出的三位一體結構,提供了更完整的更多的信息量
Multimodal Embeddings
前期的工作證明在V+L task 中 聯合嵌入是有助於進行圖文對齊的。前人有用kernelized canonical correlation analysis把圖文映射到同一空間做annotation和segmentation,image capiton和text-based image retrieval的,有人開創性的指出使用沒標注的文本信息去識別視覺對象,並得到了進一步研究,證明了利用預訓練的語言知識對語義對齊和跨模態遷移學習采樣有效。 基於此我們利用預訓練時豐富的word embedding信息,提高了模型泛化能力。