論文:https://arxiv.org/pdf/2211.09807.pdf
一句話總結(jié):提出了一個(gè)預(yù)訓(xùn)練的統(tǒng)一框架腥放,提出多任務(wù)多模態(tài)的一階段預(yù)訓(xùn)練方法 M3I。
在大模型時(shí)代下,預(yù)訓(xùn)練通用模型底座+下游任務(wù)微調(diào)逐漸稱為主流做法,預(yù)訓(xùn)練方法決定了模型能力如何。
1. 預(yù)訓(xùn)練方法
預(yù)訓(xùn)練方法根據(jù)使用的監(jiān)督的形式和模態(tài)類型可以分為三種:
- 有監(jiān)督預(yù)訓(xùn)練
- 自監(jiān)督預(yù)訓(xùn)練
- 弱監(jiān)督預(yù)訓(xùn)練
1.1 有監(jiān)督預(yù)訓(xùn)練
有監(jiān)督訓(xùn)練聽起來已經(jīng)是歷史的眼淚了。在大規(guī)模預(yù)訓(xùn)練興起之前颅痊,常見的做法是在 ImageNet 上訓(xùn)練一個(gè)模型,然后在下游任務(wù)上進(jìn)行遷移學(xué)習(xí)局待。
隨著模型規(guī)模的增大斑响,數(shù)據(jù)需求也隨著增大,而帶有人工標(biāo)注的數(shù)據(jù)是有成本的燎猛,無法隨著模型一起增加恋捆。
1.2 自監(jiān)督預(yù)訓(xùn)練
自監(jiān)督學(xué)習(xí)只利用圖像本身進(jìn)行學(xué)習(xí),不需要人工標(biāo)注重绷。根據(jù)對(duì)圖像的操作沸停,可以分為兩類:
- inter-view,也可以稱為 instance discrimination(ID) tasks昭卓,基于同一圖像的兩個(gè)不同的增強(qiáng)視角
-
intra-view愤钾,常見做法是 masked image modeling(MIM),基于同一個(gè) view 的圖像學(xué)習(xí)特征
self-supervised learning
1.2.1 Inter-view tasks
主要思想:相似圖像的表征在特征空間中應(yīng)該更加接近候醒,也就是基于對(duì)比的思想去設(shè)計(jì)預(yù)訓(xùn)練方法能颁,可以分為三類:
Contrastive learning
比如 SimCLR, MoCo倒淫。利用圖像增強(qiáng)獲得正樣本伙菊,計(jì)算特征之間的相似性。
這種方法對(duì)于負(fù)樣本要求很高敌土。
Asymmetric network
比如镜硕,BYOL, SimSiam。不實(shí)用負(fù)樣本返干,而是通過不對(duì)稱的網(wǎng)絡(luò)來實(shí)現(xiàn)兴枯。
Feature decorrelation
Barlow Twins。 loss 的不變項(xiàng)試圖使 embedding 對(duì)所應(yīng)用的 distortion 保持不變矩欠。減少冗余項(xiàng)試圖將 embedding 的不同矢量分量重新關(guān)聯(lián)起來财剖。
1.2.2 Intra-view tasks
Autoencoder 是一種經(jīng)典的學(xué)習(xí)特征的方法,encoder 從輸入中提取特征癌淮,decoder 將特征還原為輸入躺坟。基于 autoencoder 思想的自監(jiān)督學(xué)習(xí)思路有 denoising autoencoder 和 masked image modeling该默。
Denoising autoencoder 在輸入上加噪聲瞳氓,在被噪聲干擾的輸入上訓(xùn)練 autoencoder,重建原圖栓袖。
Masked image modeling 的思想來自于 NLP 中的 BERT匣摘,由于圖像具有信息冗余,加圖像加噪聲的操作對(duì)于模型來說并不具有挑戰(zhàn)性裹刮,因此 MAE 選擇了丟棄大量的圖像塊的操作音榜,即 encoder 的輸入只有少部分可見的 patch,而 decoder需要從encoder 的輸出特征還原出原圖捧弃。
Siamese Image Modeling 結(jié)合了 ID 和 MIM赠叼,也就是利用了兩個(gè)不同的 view,并且第一個(gè) view 的輸入被 masked 掉了违霞。decoder 需要根據(jù)兩個(gè) view 之間的相對(duì)位置關(guān)系來重建第二個(gè) view嘴办。
1.3 弱監(jiān)督預(yù)訓(xùn)練
弱監(jiān)督預(yù)訓(xùn)練指的是利用圖像-文本對(duì)或者圖像-hashtag的數(shù)據(jù)來進(jìn)行預(yù)訓(xùn)練,這類數(shù)據(jù)可以直接從網(wǎng)上抓取买鸽,比人工標(biāo)注的數(shù)據(jù)成本更低涧郊,更容易獲取。
弱監(jiān)督預(yù)訓(xùn)練的方法有 CLIP眼五,ALIGN妆艘,BEiT-3等。
粗略地過了一遍目前常見的預(yù)訓(xùn)練方法看幼,可以發(fā)現(xiàn)自監(jiān)督方法逐漸可以看出一個(gè)統(tǒng)一的范式批旺,而弱監(jiān)督方法通常需要分階段進(jìn)行。于是本文的作者提出了一個(gè)單階段多模態(tài)的統(tǒng)一框架诵姜,結(jié)合了有監(jiān)督汽煮、弱監(jiān)督和自監(jiān)督預(yù)訓(xùn)練的優(yōu)點(diǎn),避免多階段訓(xùn)練導(dǎo)致的災(zāi)難性遺忘棚唆。
2. 最大化互信息
預(yù)訓(xùn)練的目的是學(xué)習(xí)能夠很好地代表訓(xùn)練樣本的表示暇赤。
假設(shè)訓(xùn)練樣本是 s,其中 s 可以是圖像-類別對(duì)(監(jiān)督)瑟俭,圖像-文本對(duì)(弱監(jiān)督)翎卓,或者只有圖像(自監(jiān)督)。
輸入訓(xùn)練數(shù)據(jù) x 和目標(biāo)訓(xùn)練數(shù)據(jù) y 是通過一些轉(zhuǎn)換運(yùn)算從s中提取出來的(tx , ty ), i.e., 摆寄。
轉(zhuǎn)換運(yùn)算 t 通常與數(shù)據(jù)無關(guān)失暴,例如,"應(yīng)用圖像增強(qiáng)"微饥、"獲得標(biāo)注的類別 "或 "獲得配對(duì)的文本"逗扒。
在以視覺為中心的預(yù)訓(xùn)練中,輸入數(shù)據(jù) x 通常是增強(qiáng)的圖像欠橘,而目標(biāo)數(shù)據(jù) y 是標(biāo)注的類別矩肩,配對(duì)的文本,或者也是增強(qiáng)的圖像肃续。
zx和zy分別表示輸入和目標(biāo)的編碼表示黍檩。
所需的預(yù)訓(xùn)練目標(biāo)可以描述為叉袍,在給定 tx 和 ty 的情況下最大化 zx 和 zy之間的條件互信息。
其中刽酱,第一項(xiàng)要求目標(biāo)表示的熵很高喳逛,這就避免了崩潰。第二項(xiàng)要求后驗(yàn)分布接近于目標(biāo)分布棵里。
后驗(yàn)分布通常是難以處理的润文。為了緩解這個(gè)問題,一個(gè)常見的做法是引入另一個(gè)參數(shù)化分布 作為近似值殿怜。
的不同形式導(dǎo)致了不同的損失典蝌,例如,高斯和波爾茲曼分布分別對(duì)應(yīng)于 L2-norm 和 Softmax 交叉熵?fù)p失头谜。
公式(3)是一個(gè)通用的預(yù)訓(xùn)練損失骏掀,可以被實(shí)例化為不同的預(yù)訓(xùn)練范式,包括有監(jiān)督的乔夯、弱監(jiān)督的和自監(jiān)督的預(yù)訓(xùn)練砖织。
與現(xiàn)有方法的聯(lián)系
對(duì)于有監(jiān)督預(yù)訓(xùn)練,輸入為圖像 I 末荐,輸入特征 , 目標(biāo)特征為類別嵌入
侧纯, 分類器基于
預(yù)測(cè)
。預(yù)訓(xùn)練的目標(biāo)是最大化
甲脏,而SP損失可以導(dǎo)出為最小化
眶熬。
其中宜猜, 是典型的玻爾茲曼分布(即Softmax交叉熵?fù)p失)贱迟。這種分布包含負(fù)數(shù)類別,自然可以防止塌陷覆获。
弱監(jiān)督訓(xùn)練通常包括一個(gè)增強(qiáng)的圖像和對(duì)應(yīng)的文本墩新,訓(xùn)練目標(biāo)是最大化圖像嵌入和文本嵌入的互信息贸弥, 也是玻爾茲曼分布。
自監(jiān)督訓(xùn)練最大化兩個(gè) view 的特征之間的互信息海渊, 是Boltzmann(即Softmax交叉熵?fù)p失)時(shí)绵疲,target encoder 的目的是區(qū)分不同訓(xùn)練數(shù)據(jù)中的 zy(intra-view methods)。當(dāng)
是高斯(即L2-norm損失)時(shí)臣疑,它擬合 zy 的值(inter-view)盔憨。
根據(jù) tx 和 ty 以及目標(biāo)表征的不同,自監(jiān)督訓(xùn)練方法可以分出 12 種讯沈,其中一些是之前沒有被提出來過的郁岩。
3. 多輸入多目標(biāo)預(yù)訓(xùn)練
為了將有監(jiān)督、自監(jiān)督、弱監(jiān)督的預(yù)訓(xùn)練的優(yōu)點(diǎn)結(jié)合在一起问慎,作者將上面的公式擴(kuò)展到了多目標(biāo)多任務(wù)的形式萍摊。通過公式推導(dǎo)作者得出,獨(dú)立地優(yōu)化目標(biāo)相當(dāng)于優(yōu)化互信息的下限蝴乔。
多輸入
利用 Mixup 或者 CutMix 實(shí)現(xiàn)记餐。
多目標(biāo)
一種思路是將弱監(jiān)督預(yù)訓(xùn)練與特定的自監(jiān)督預(yù)訓(xùn)練結(jié)合起來驮樊,比如 MaskCLIP 和 FLAVA薇正。
另一種是有監(jiān)督預(yù)訓(xùn)練和自監(jiān)督預(yù)訓(xùn)練的結(jié)合,例如 SupCon 或 SupMAE囚衔。
作者提出的多輸入多目標(biāo)最大化互信息預(yù)訓(xùn)練框架挖腰,也就是提出的 M3I Pre-training 如下:
作者通過 mixup 實(shí)現(xiàn)兩張圖像 view 1 的多輸入,當(dāng)預(yù)測(cè)目標(biāo)為第一張圖象的 view1 和第二張圖像的 view2练湿,這個(gè)框架實(shí)現(xiàn)的是自監(jiān)督學(xué)習(xí)猴仑;當(dāng)預(yù)測(cè)目標(biāo)為文本和圖像時(shí),這個(gè)框架實(shí)現(xiàn)的是弱監(jiān)督學(xué)習(xí)或者有監(jiān)督學(xué)習(xí)肥哎。因此辽俗,作者實(shí)現(xiàn)了三種學(xué)習(xí)方式的統(tǒng)一。
4. 總結(jié)
為了獲得單階段預(yù)訓(xùn)練篡诽,作者提出了一個(gè)統(tǒng)一主流預(yù)訓(xùn)練方法的通用預(yù)訓(xùn)練框架崖飘。并進(jìn)一步將該框架擴(kuò)展到多輸入多目標(biāo)設(shè)置,這表明以前的多任務(wù)預(yù)訓(xùn)練方法實(shí)際上是在優(yōu)化互信息的下界杈女。
作者提出了一種一體化的預(yù)訓(xùn)練方法朱浴,M3I Pre-training。 M3I預(yù)訓(xùn)練在各種遷移學(xué)習(xí)環(huán)境中超越了之前的預(yù)訓(xùn)練方法达椰。
缺點(diǎn)
只關(guān)注于 vision-centric 的預(yù)訓(xùn)練翰蠢,沒有實(shí)驗(yàn)證明他們的方法學(xué)到了語(yǔ)義特征,也許是效果不好啰劲。后續(xù)可以將 text encoder 拓展為 LLM梁沧,實(shí)現(xiàn)多模態(tài)預(yù)訓(xùn)練。
理論部分很有意思蝇裤,把預(yù)訓(xùn)練方式統(tǒng)一了起來廷支,但是提出來的結(jié)構(gòu)都點(diǎn)對(duì)不上的感覺。
沒有代碼開源猖辫,具體細(xì)節(jié)很讓人困惑酥泞。