多模態(tài)模型匯總-按需更新二

注意:時(shí)間逆序排列
關(guān)鍵詞:UNIMO, UNITER, Pixel-BERT, Oscar

多模態(tài)模型匯總-按需更新一:2019年發(fā)布的多模態(tài)模型匯總
多模態(tài)模型匯總-按需更新二:2020年發(fā)布的多模態(tài)模型匯總
多模態(tài)模型匯總-按需更新三:2021年發(fā)布的多模態(tài)模型匯總

模型詳情

UNIMO [Baidu 20.12]

UNIMO: Towards Unified-Modal Understanding and Generation via
Cross-Modal Contrastive Learning

https://arxiv.org/pdf/2012.15409.pdf
https://github.com/PaddlePaddle/Research/tree/master/NLP/UNIMO

當(dāng)前的多模態(tài)模型,在進(jìn)行單模態(tài)任務(wù)時(shí),效果大打折扣。因此提出UNIMO,集成單模態(tài)和多模態(tài)結(jié)構(gòu)的預(yù)訓(xùn)練模型,在多模態(tài)任務(wù)上效果好,在單模態(tài)任務(wù)上也不會(huì)下降太多。


UNIMO
UNIMO 模型框架

輸入
文本數(shù)據(jù):BookWiki and OpenWebText
圖片數(shù)據(jù):OpenImages and COCO unlabel
圖文對:COCO, Visual Genome (VG), Conceptual Captions (CC) and SBU Captions

文本數(shù)據(jù)
輸入:BPE分詞器得到 W =\lbrace{[CLS],w_1,...,w_n,[SEP] \rbrace}
Token representation:self-attention之后得到h = \lbrace{h_{[CLS]},h_{w_1},...,h_{w_n}, h_{[SEP]} \rbrace}

視覺數(shù)據(jù)
通過Faster R-CNN提取視覺信息region features V
輸入:V = \lbrace{[IMG],v_1,...,v_t \rbrace}
region表示:self-attention之后得到h = \lbrace{h_{[IMG]},h_{v_1},...,h_{v_n}, h_{v_t} \rbrace}

視覺文本數(shù)據(jù)
輸入: \lbrace{[IMG],v_1,...,v_t,[CLS],w_1,...,w_n,[SEP] \rbrace}
視覺和文本表示:h_{[IMG]},h_{[CLS]}

模型: Cross-Modal Contrastive Learning(CMCL) + Transformer
對比學(xué)習(xí):希望對應(yīng)的圖片V和文本W(wǎng)的距離d(V,W)更近,不相關(guān)的圖文距離越遠(yuǎn)越好。
為了保證不同級別的圖文對齊,使用了以下方式進(jìn)行正負(fù)樣本構(gòu)建。

樣本的構(gòu)建

  1. Text Rewriting
    對圖像標(biāo)題的進(jìn)行不同層次的重寫:
    1.1 句子級別的改寫:回譯,翻譯成其他語言再翻譯回來,增強(qiáng)正樣本;
    1.2 對Image-Text pairs,根據(jù)TF-IDF相似度對圖像標(biāo)題進(jìn)行檢索,因?yàn)闄z索的內(nèi)容僅是相似,而不是準(zhǔn)確對照圖片,因此,可以視為hard negative,增強(qiáng)句子級別的圖文對。
    1.3 短語/詞級別的改寫:基于場景圖的檢索,將圖上的object,attribute或relation進(jìn)行隨機(jī)替換,得到更細(xì)粒度的hard negative。
  2. Image/Text Retrieval
    為增強(qiáng)圖文對數(shù)據(jù),從單模態(tài)數(shù)據(jù)集中進(jìn)行檢索,增強(qiáng)正樣本。
    2.1 圖片檢索:選定圖文對中的圖片,從單模態(tài)的圖片數(shù)據(jù)集中檢索相似的圖片,相似圖片和被檢索的圖片中的objects高度重疊,因此可以提供相似的視覺信息;
    2.2 文本檢索:選定圖文對中的文本,從單模態(tài)的文本數(shù)據(jù)集中檢索相關(guān)的文本。

預(yù)訓(xùn)練任務(wù)
Visual Learning
對圖像的掩碼。需要注意掩蓋區(qū)域和文本問題,避免信息泄露。
L_V = E_{V\in D}f_{\theta}(v_m|v_{-m})
f_{\theta}(v_m|v_{-m}) = \sum_i^M ||r(h_{v_i}) - v_i||^2

Language Learning
使用了encoder-decoder模型架構(gòu),包含語言模型訓(xùn)練和生成任務(wù)。被masked的文本是完整的短語,而不是subwords。

  1. Bidirectional prediction:隨機(jī)mask15%的tokens;
  2. Seq2Seq generation:從段落中抽出25%的token拼接起來作為目標(biāo)序列T,剩下的文本進(jìn)行拼接作為輸入序列S。模型通過S來預(yù)測T。

實(shí)驗(yàn)

用Roberta進(jìn)行初始化。

  1. single-modal language understanding and generation tasks
    包含基于CoQA和SQuAD1.1的QA; CNNDM的摘要;Gigaword的句子壓縮;SST-2的情感分類,MNLI的推理和STS-B的語義相似度分析等等。
  2. multi-modal vision-language understanding and generation tasks
    包含基于VQA v2.0的VQA,COCO的圖文描述,F(xiàn)lickr30k的圖文檢索等等。

UNITER [Microsoft Dynamics 365 AI Research]

UNITER: UNiversal Image-TExt Representation Learning

https://arxiv.org/pdf/1909.11740.pdf
https://github.com/ChenRocks/UNITER

在這之前,圖文相關(guān)的模型一般都是task-specific的,不能泛化到不同類型的圖文任務(wù)上。本文旨在構(gòu)建一個(gè)統(tǒng)一的圖文學(xué)習(xí)框架,可以適用于不同的圖文任務(wù)。
UNITER學(xué)習(xí)Image-Text embedding,在圖文類型的數(shù)據(jù)上做了多種預(yù)訓(xùn)練任務(wù),之前的多模態(tài)模型進(jìn)行mask learning時(shí),mask的方式是隨機(jī)的,本文使用了conditional masking,且通過OT(Optimal transport)學(xué)習(xí)WRA,鼓勵(lì)圖文在細(xì)粒度上的對齊。實(shí)驗(yàn)結(jié)果顯示,在9個(gè)圖文數(shù)據(jù)集任務(wù)上,有6個(gè)達(dá)到SOTA。

UNITER 模型框架

數(shù)據(jù):COCO, Visual Genome (VG), Conceptual Captions (CC) and SBU Captions
模型: Image Embedder + Text Embedder + Transformer

輸入

  1. Image Embedder
    1.1 通過Faster R-CNN提取每個(gè)region的pooled ROI features和7d的location feature;
    位置信息:[x1, y1, x2, y2, w, h, w ? h] (normalized top/left/bottom/right coordinates, width, height, and area.)
    1.2 這2種特征經(jīng)過FC后,投影到同一個(gè)embedding space;
    1.3. 2個(gè)FC求和,經(jīng)過Layer Normalization,進(jìn)入WordPiece。

  2. Text Embedder
    2.1 每個(gè)sub_word token = sub_word embedding + position embedding
    2.2 1之后,經(jīng)過Layer Normalization。

Image region:v = \lbrace{v_1,...,v_k \rbrace}
Words:w =\lbrace{w_1,...,w_T\rbrace}
用segment embedding區(qū)分image和textual輸入,segment embedding同樣會(huì)經(jīng)過一個(gè)Layer Normalization。

預(yù)訓(xùn)練任務(wù)

  1. MLM: masked language model conditioned on image
    僅對文本進(jìn)行掩碼操作,image這邊沒有被mask。
    L_{MLM}(\theta) = -E_{(w,v) \sim D} log p_{\theta}(w_m|w\neg m, v)

  2. MRM: masked region modeling conditioned on text
    僅對image進(jìn)行掩碼操作,文本是fully-visible。
    L_{MRM}(\theta) = -E_{(w,v) \sim D} f_{\theta}(v_m|v\neg m, w)

    3種MRM類型
    2.1. MRFR: masked region feature regression
    h_{\theta}(v_m^i):Transformer output + FC
    r(v_m^i):input ROI pooled feature
    f_{\theta}(v_m|v \neg m, w) = \sum_i^M||h_{\theta}(v_m^i) - r(v_m^i) ||_2^2
    2.2 . MRC: masked region classification
    c(v_m^i) \in K:用了另一個(gè)目標(biāo)檢測的Faster R-CNN,對被masked的region進(jìn)行檢測,輸出最高置信度的類別為該region的標(biāo)簽
    g_{\theta}(v_m^i) \in K:Transformer output + FC + softmax,輸出K個(gè)類別的得分
    f_{\theta}(v_m|v \neg m, w) = \sum_i^M CE(c(v_m^i) - g_{\theta}(v_m^i))
    2.3 . MRC-KL: masked region classification with KL-divergence
    \tilde c(v_m^i):和2.2目標(biāo)檢測到的標(biāo)簽使用hard-label,2.3將置信度高的類別作為soft-label,計(jì)算2個(gè)分布的KL距離
    f_{\theta}(v_m|v \neg m, w) = \sum_i^M D_{KL}(\tilde c(v_m^i) || g_{\theta}(v_m^i))

  3. ITM: image text matching
    輸入除了一句話和一系列的image regions,還會(huì)再加一個(gè)[CLS],這個(gè)[CLS]會(huì)經(jīng)過FC和sigmoid,輸出y \in \{0,1 \},表示圖文是否匹配。
    輸出得分用s_{\theta}(w,v)表示,負(fù)樣本為隨機(jī)被替換的圖片或文本。
    L_{ITM}(\theta) = -E_{(w,v) \sim D}[y log s_{\theta}(w,v) + (1-y)(1-s_{\theta}(w,v))])

  4. WRA + OT: word-region alignment + Optimal Transport
    OT:最小化一句話中的image-region embedding和words embedding之間的運(yùn)輸距離,用transport plan T \in R^{T \times K} 表示學(xué)習(xí)w和v之間最優(yōu)化的對齊方案。
    OT的特性:
    a. Self-normalization:\sum T = 1;
    b. Sparsity: 如果有最優(yōu)方案,那么T至多有(2r-1)個(gè)非0元素,使得r = max(K,T);
    c. Efficiency:秩序進(jìn)行matrix-vector products
    w和v可被視為2個(gè)離散分布\mu, v
    \mu = \sum_i^T a_i \delta_{w_i},\delta_{w_i}為Dirac function, a = \lbrace{ a_i \rbrace}_i^T \in \Delta_T
    v = \sum_j^K b_j \delta_{v_j}, b = \lbrace{ b_j \rbrace}_i^K \in \Delta_K
    \sum_i^T a_i = \sum_j^K b_j = 1
    \Pi(a,b) = \lbrace{ T\in R^{T\times K} | T1_m=a,T^T1_n = b \rbrace}
    其中:1_n表示n-dimensional all-one vector
    c(w_i,v_j) = 1- \frac {w_i^Tv_j}{||w_i||_2 ||v_j||_2}
    L_{WRA}(\theta) = Dot (\mu,v) = min_{T\in \Pi(a,b)} \sum_i^T \sum_j^K T_{ij} \cdot c(w_i,v_j)

注意??!
通過conditional masking和OT-based WRA,緩解圖文不對齊的問題。
Masked Learning和BERT類似,做text masking時(shí),用[MASK]代替,做image masking時(shí),對應(yīng)視覺特征向量為0。
如果同時(shí)對視覺和文本進(jìn)行mask,可能會(huì)帶來misalignment。因此,每次只mask一個(gè)模態(tài)。

實(shí)驗(yàn)

  1. VQA: Visual Question Answering
  2. Image-Text Retrieval: 做了zero-shot setting
  3. Referring Expression Comprehension
  4. VCR: Visual Commonsense Reasoning
  5. Visual Entailment
  6. NLVR

Pixel-BERT [Microsoft Research 20.04]

Pixel-BERT: Aligning Image Pixels with Text by Deep Multi-Modal Transformers

https://arxiv.org/pdf/2004.00849.pdf

最近提取圖片信息常用方法是region-based,一般是用Faster R-CNN進(jìn)行目標(biāo)檢測:

  1. 這種特征提取方式主要是用于進(jìn)行視覺任務(wù)(比如目標(biāo)檢測),會(huì)和對應(yīng)的文本有語義鴻溝;
  2. Bounding box會(huì)包含噪音,并且丟失目標(biāo)的形狀和空間相關(guān)特征;
  3. 特征表現(xiàn)受限于視覺任務(wù)設(shè)定的categories;
  4. 因?yàn)槭悄繕?biāo)檢測模型,所以會(huì)失去scene,情感之類的信息。

為了充分利用視覺信息,本文使用pixel-based,通過random pixel sampling mechanism強(qiáng)化視覺表達(dá)的魯棒性,結(jié)合MLM和Image-Text Matching進(jìn)行預(yù)訓(xùn)練模型訓(xùn)練。
Pixel-BERT是首個(gè)使用pixel-text對齊進(jìn)行自監(jiān)督任務(wù)的模型。

Pixel-BERT 模型框架

數(shù)據(jù):Visual Genome 和 MS-COCO
輸入:對齊的文本和圖片
模型

  1. Sentence Feature Embedding
    WordPiece分詞,提取token embedding:
    w = \lbrace{\hat w_1, \hat w_2,..., \hat w_n \rbrace}
  2. Image Feature Embedding
    用pixel feature取代bounding boxes,pixel feature同樣用CNN提取,本文分別用了2種模型進(jìn)行提取,一個(gè)是ResNet50,一個(gè)是ResNeXt-152,前者做消融實(shí)驗(yàn),后者模型規(guī)模大,效果好。
    圖片經(jīng)過CNN后,flatten features,得到k個(gè)pixel feature v:
    v = \lbrace{v_1,v_2,...,v_k \rbrace} \in R^d
    所有pixel共享同一個(gè)semantic embedding vector s_v,得到visual embedding:
    \hat v_i = v_i + s_v
    \hat v = \lbrace{\hat v_1,\hat v_2,...,\hat v_k \rbrace}
  3. Cross-Modality Module
    輸入:w = \lbrace{[CLS],\hat w_1, \hat w_2,..., \hat w_n, [SEP], \hat v_1,\hat v_2,...,\hat v_k \rbrace}

預(yù)訓(xùn)練任務(wù)

  1. MLM:根據(jù)文本和視覺信息預(yù)測被masked tokens;
  2. ITM( Image-Text Match):圖文匹配。
    正樣本為配對的圖文,負(fù)樣本為同樣數(shù)量的不配對的隨機(jī)采樣的圖文。通過[CLS]進(jìn)行分類。

Pixel Random Sampling
為避免overfitting,提高特征魯棒性,在預(yù)訓(xùn)練時(shí),對pixel進(jìn)行隨機(jī)采樣。在每輪迭代時(shí),在feature_map中隨機(jī)采樣100個(gè)pixel,和文本合并后進(jìn)入transformers。
這種方式一方面可以鼓勵(lì)模型學(xué)習(xí)更多視覺信息,另一方面也加速了模型訓(xùn)練。

筆者備注:一般做dropout是針對feature_map做的,這個(gè)就是對feature_map里面的pixel進(jìn)行dropout。也算某種形式的pooling吧?!

實(shí)驗(yàn)

  1. Visual Question Answering (VQA)
  2. image-text retrieval
  3. Natural Language forVisual Reasoning for Real (NLVR)

Oscar [Microsoft Corporation 20.04]

Oscar: Object-Semantics Aligned Pre-training for Vision-Language Tasks

https://arxiv.org/pdf/2004.06165.pdf
https://github.com/microsoft/oscar

當(dāng)前的vision-language pre-training 模型主要是multi-layer transformer,文本和視覺特征大多時(shí)候是直接concat一起作為輸入,再進(jìn)行self-attention操作,從而實(shí)現(xiàn)語義和視覺信息的交互。這種處理存在2個(gè)問題:

  1. Ambiguity:一般使用Faster R-CNN提取region feature,提取的object是over-sampled,存在信息冗余和噪聲;
  2. Lack of grounding:視覺和文本見缺乏明確的對齊信息,因此是weakly-supervised learning。

作者觀察到,圖片中的salient object可以被準(zhǔn)確檢測,且對齊的文本中也有相應(yīng)描述。因此,提出Oscar模型,用圖片中的object tags作為anchor points來輔助學(xué)習(xí)對齊的信息,在6.5million的image-text pairs上進(jìn)行預(yù)訓(xùn)練,且在6個(gè)vision-language understanding和生成任務(wù)上取得了SOTA。

Oscar pipeline
Oscar 模型框架

數(shù)據(jù):COCO,CC(Conceptual Captions), SBU captions, flicker30k, GQA等共4.1million張圖片,6.5million個(gè)text-tag-image三元組。
輸入:3元組數(shù)據(jù)集Word-Tag-Image(w,q,v)

  1. 文本序列embedding:w =\lbrace{w_1, ...,w_T \rbrace}
  2. 圖片檢測到的,且在文本出現(xiàn)的object tags: word embedding q
  3. 經(jīng)過Faster R-CNN檢測的region feature:v =\lbrace{v_1, ...,v_K \rbrace}
    文本向量通過BERT初始化。

Object tags q是如何得到的?
一張圖像能識別到K個(gè)region,每個(gè)region的visual semantics表示為(v',z)
region featurev' \in R^P是一個(gè)P維向量,一般是2048d;
region position z \in R^d,一般為4或6d。
position-sensitive region feature vector:concat (region feature, region position),經(jīng)過線性映射,得到和word embedding同一個(gè)維度大小的feature embedding v;
q:被Faster R-CNN檢測到的高精度的object tags。

模型:singular embedding of each modality + Transformer

Oscar Pre-Training Objective

x:modality view,區(qū)分文本和圖片;
x':dictionary view,區(qū)分2個(gè)不同的semantic spaces。

預(yù)訓(xùn)練任務(wù)

  1. Masked token loss( MTL)
    Dictionary view, object tags和word tokens共享語義空間,image region feature在視覺語義空間。對discrete token sequence,有h \triangleq [w,q]。隨機(jī)mask 15%的h的token,基于上下文來預(yù)測被masked的token,MTL表示為:
    L_{MTL} = -E_{(v,h)~D} log p(h_i|h_{ \neg i },v)

  2. Contrastive Loss
    Modality view,每個(gè)輸入的三元組,用h' \triangleq [q,v]表示image模態(tài),w表示text模態(tài)。50%的概率隨機(jī)替換q中的tag sequence,通過這種方式來polluted image representation。
    encoder的輸出[CLS]token,在vision-language representation (h',w)中被fused,因此直接在后面接一個(gè)二分類的FC,預(yù)測這個(gè)image representation是否被polluted。Contrastive Loss可表示為:
    L_C = -E_{(h',w)~D} log p(y|f(h',w))

Oscar預(yù)訓(xùn)練損失L_{Oscar} = L_{MTL} + L_{C}

實(shí)驗(yàn)

  1. Understanding task
    a. Image-text Retrieval:隨機(jī)選擇圖片或者文本構(gòu)成負(fù)樣本,用[CLS]判定圖文是否匹配,這里沒有用ranking loss,因?yàn)樽髡甙l(fā)現(xiàn)直接使用binary classification
    loss的結(jié)果更好;
    b. VQA:[CLS] + multi-label classifier;
    c. GQA;
    d. Natural Language Visual Reasoning for Real (NLVR2),2個(gè)[CLS] + MLP + binary classifier。
  2. Generation task
    a. Image Captioning:基于圖片生成描述。輸入和預(yù)訓(xùn)練一樣是三元組,訓(xùn)練時(shí)mask15%的描述token,預(yù)測這些被masked token。推理時(shí),輸入(image regions, objects tags, [CLS]),根據(jù)likelihood生成文本;
    b. Novel Object Captioning (NoCaps),檢測模型識別未出現(xiàn)在訓(xùn)練集中的object的能力。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容