論文淺嘗 | 弱監督下極簡的視覺語言預訓練模型

語言: CN / TW / HK

筆記整理:黃雨峰,浙江大學碩士,研究方向為知識圖譜表示學習、多模態。

論文引用:Wang Z, Yu J, Yu A W, et al. Simvlm: Simple visual language model pretraining with weak supervision[J]. arXiv preprint arXiv:2108.10904, 2021.

1. Motivation

現階段,很多模型[如LXMERT等]將影象區域特徵迴歸的物件檢測或標記作為預訓練目標的一部分。需要用到fast RCNN等檢測模型,訓練集也需要大量標註,因此成本很高,模型的可擴充套件性也會降低。有研究提出利用多種跨模態損失函式作為訓練目標的一部分,如影象-文字匹配等。這些函式經常與影象標註生成、MLM等其它目標形成複合預訓練損失,導致不同損失和資料集之間難以平衡。

視覺語言預訓練,學習兩種模態的聯合表示,然後在視覺語言基準資料集上微調。為了捕獲影象和文字之間的對齊,以前的方法利用了多個型別的模態的標記資料集,使VLP的預訓練複雜,對於模型的效能有一定的瓶頸。這種基於預訓練-微調的方法通常缺乏zero-shot的泛化學習能力。而自迴歸語言模型(GPT-3)展現了強大的效能,並且沒有進行微調,表明文字引導的zero-shot泛化是一個很有前途的方案。

作者希望的VLP模型具有如下優點:可以無縫地插入到預訓練-微調正規化中,並在標準VL基準資料集上實現比較好的效能;不像以前的方法那樣需要一個複雜的預訓練目標;在跨模態設定中具有文字引導的zero-shot泛化的能力。

因此,全新的影象-文字預訓練模型SimVLM與現有的VLP模型的區別:

(1)只使用了單一的預訓練損失,是當前最簡化的VLP模型

(2)只使用了弱監督,極大地降低了對預訓練資料的要求

(3)使生成模型具備了極強的零樣本能力,包含零樣本跨模態遷移和開放式視覺問答(VQA)

2. Mothed

2.1 Objective

它使用字首語言建模(PrefixLM)的單一目標,進行端到端訓練。它不僅可以像GPT-3那樣自然地執行文字生成,而且還可以像BERT那樣以雙向的方式處理上下文資訊。

PrefixLM不同於標準的LM,它允許對字首序列進行雙向注意,並且只對剩餘的token進行單向的注意。在預訓練過程中,隨機選擇長度為Tp的token的字首序列從輸入序列中截斷。

影象可以被視為其文字描述的字首。因此,對於給定的影象-文字對,作者將一定長度的影象特徵序列置於文字序列之前,並強制模型對長度為Tp的字首進行取樣,來計算文字資料的LM損失。

2.2 Architecture

它採用了ViT/CoAtNet的結構,直接將原始影象作為輸入。這樣的模型也適合大規模的資料,並很容易與PrefixLM目標相容。

對於視覺模態,作者將圖片分成了多個patch,然後flatten成一維序列(這一步就類似視覺Transformer的預處理)。

對於文字模態,作者使用可學習的embed層將單詞進行embedding。

為了保留位置資訊,作者分別為影象和文字輸入添加了兩個可訓練的一維位置編碼向量,並另外為Transformer層內的影象patch添加了二維相對注意力。

2.3 Data

這些設定減輕了目標檢測的需求,並允許模型利用大規模的弱標記資料集,作者使用大規模的帶噪聲的影象-文字資料從頭開始對所有模型引數進行預訓練這對zero-shot泛化有更好的效果。

3. Experiment

3.1 資料集、基線、評估指標

3.1.1 資料集

在pretrained的部分,作者對影象文字和 僅文字輸入兩種型別的資料進行預訓練。對於聯合視覺和語言資料,利用了ALIGN資料集(包含大約1.8B個有噪聲的影象-文字對)。對於僅文字的資料集,採用了 Colossal Clean Crawled Corpus (C4)資料集。總共包含4,096 image-text pairs (ALIGN) and 512 text-only documents (C4)。

在finetune的部分,模型在六個視覺語言基準上進行了微調和評估,包括三個區別性任務:VQA v2、SNLI-VE和NLVR2;以及三個生成任務:CoCo Caption,NoCaps和Multi30k。同時作者還研究了它的zero-shot泛化和在單模態任務上的效能。

3.1.2 Baseline

為了檢驗視覺語言預訓練的質量,我們首先將SimVLM與最先進的(SOTA) VLP方法(包括LXMERT、VL-T5、UNITER、OSCAR、Villa、SOHO、UNIMO和VinVL)在流行的多模態任務上進行比較。

3.2 實驗結果

3.2.1 主實驗結果

對於判別任務,SimVLM在使用更少容量的情況下已經超過了之前所有的方法,SimVLM-huge相比之前的SOTA (VinVL)獲得了近4分的絕對分數提升,使VQA上的單模型效能首次超過80%。此外,SimVLM在NLVR2和SNLI-VE上的效能也始終優於先前的方法,說明它處理更復雜的視覺-語言推理的能力。

對於包括影象標題和影象轉換在內的生成任務,SimVLM還使用原始的微調技術進行了很大的改進。在CoCo字幕的公開“Karpathy”5k測試分割以及NoCaps基準測試中,我們的模型在4個指標中的3個優於使用更復雜的CIDEr優化強化學習方法訓練的之前的方法。最後,SimVLM對於Multi30k從英語到德語的影象翻譯也是有效的。

這些實驗表明,模型可以無縫地插入到訓練前微調正規化中,使用極簡的訓練和微調程式,具有卓越的效能。

3.2.2 Zero-Shot Image Caption

該模型在zero-shot 影象字幕的兩個資料集上的實驗結果與supervised下的結果相比,也是非常有競爭力的。同時可以看到在image caption任務時,在輸入的時候加入“a picture of”的字首可以幫助提升實驗結果。

3.2.3 Zero-Shot Cross-Modality Transfer

從實驗結果和case分析中我們可以看出,模型可以達到不錯的實驗效果,還能生成德語描述,同時實現跨語言和跨模態轉移。

3.2.4 Zero-Shot VQA

從實驗結果和case分析可以看出,SimVLM的在zero-shot VQA任務上相比其他預訓練模型也表現出更加強大的效能。

4 . Summery

在這項工作中,作者提出了一個簡單而有效的視覺語言預訓練框架。與以往使用目標檢測和多個輔助損失的工作不同,我們的模型將整個影象作為patch處理,並使用單個字首語言建模目標進行端到端訓練。

該模型優於現有的VLP模型,並在6個VL基準測試上實現了SOTA效能,而無需額外的資料或任務特定的設定。此外,它在視覺語言理解中獲得了更強的泛化效能,支援zero-shot影象字幕和開放式VQA。

OpenKG

OpenKG(中文開放知識圖譜)旨在推動以中文為核心的知識圖譜資料的開放、互聯及眾包,並促進知識圖譜演算法、工具及平臺的開源開放。

點選 閱讀原文 ,進入 OpenKG 網站。

「其他文章」