博客專欄

EEPW首頁 > 博客 > 對比式無監(jiān)督預(yù)訓(xùn)練簡介(Contrastive Pre-training)

對比式無監(jiān)督預(yù)訓(xùn)練簡介(Contrastive Pre-training)

發(fā)布人:CV研究院 時(shí)間:2022-03-19 來源:工程師 發(fā)布文章
自監(jiān)督學(xué)習(xí)通過設(shè)計(jì)適當(dāng)?shù)淖员O(jiān)督任務(wù),從大規(guī)模的無標(biāo)注數(shù)據(jù)中學(xué)習(xí)可遷移的知識(shí),從而提高下游任務(wù)上的表現(xiàn)。根據(jù)任務(wù)的類型,我們可以將常見的無監(jiān)督預(yù)訓(xùn)練方法分為生成式預(yù)訓(xùn)練和對比式預(yù)訓(xùn)練。本文主要介紹常見的對比式預(yù)訓(xùn)練任務(wù)。


  • 對比式預(yù)訓(xùn)練 Contrastive Pre-training

對比式預(yù)訓(xùn)練的核心想法是學(xué)習(xí)如何區(qū)分不同的數(shù)據(jù)。

日常生活中我們會(huì)進(jìn)行大量類似的訓(xùn)練,比如區(qū)分你每天接觸到的人。盡管他們每天的打扮都不同,但是大部分時(shí)候你可以只通過他們的外表、動(dòng)作甚至背影就判斷出他的名字。

大部分對比學(xué)習(xí)預(yù)訓(xùn)練方法都可以歸結(jié)為以下幾步:

  1. 對于任意一個(gè)數(shù)據(jù) X,構(gòu)造它的兩個(gè)視圖,查詢視圖Xq和鍵值視圖Xk 圖片

  2. 使用編碼器encoder將不同的視圖映射到低維的特征空間,使用****decoder將這些特征映射到度量空間

  3. 優(yōu)化編碼器和****,使得在度量空間中,同一個(gè)數(shù)據(jù)的不同視圖之間的距離盡可能近

  4. 將預(yù)訓(xùn)練得到的編碼器作為下游任務(wù)的特征提取器

此處的查詢視圖Xk類似于我們對每個(gè)人的記憶/印象,而鍵值視圖Xq則是在路上碰到的某個(gè)人,讓同一個(gè)數(shù)據(jù)不同視圖之間的度量距離盡可能近,類似于我們要避免認(rèn)錯(cuò)人的尷尬。為此,模型需要找到對于區(qū)分?jǐn)?shù)據(jù)最有用的特征,比如不同人走路時(shí)的姿態(tài)、氣質(zhì),而不僅僅是衣服。

如果只是讓同一個(gè)數(shù)據(jù)的不同視圖之間的距離盡可能近,模型極有可能學(xué)到一些平凡解(trivial solution),例如所有的數(shù)據(jù)在度量空間都是某個(gè)常數(shù)。因此大部分對比學(xué)習(xí)中還需要讓不同數(shù)據(jù)的距離盡可能遠(yuǎn),來防止模型輸出的坍塌。不同的數(shù)據(jù)也被稱作負(fù)樣本(negative samples)。

圖片

因模型所學(xué)到的特征表示取決于不同視圖的構(gòu)建方式。根據(jù)視圖構(gòu)建方式的不同,大多數(shù)對比式預(yù)訓(xùn)練方法可以大致分為:(1)互信息最大化,(2)相對位置預(yù)測,(3)實(shí)例鑒別。它們分別捕捉了訓(xùn)練數(shù)據(jù)的全局-局部關(guān)系、局部-局部關(guān)系和全局-全局關(guān)系。

  • 互信息最大化 Mutual Information Maximization

互信息最大化使用全局特征和局部特征作為不同的視圖。

以經(jīng)典工作Deep InfoMax[1]為例。一張圖片經(jīng)過卷積網(wǎng)絡(luò)會(huì)得到一個(gè)M x M大小的特征圖,再經(jīng)過一個(gè)全局池化層會(huì)得到一個(gè)一維的特征。互信息最大化的目標(biāo)是使得同一張圖片的任意局部特征(特征圖上任意一個(gè)位置的特征)與全局特征之間的距離盡可能近,從而達(dá)到一葉知秋的效果(只看到狗的鼻子就知道某張圖片是狗的照片,而不是負(fù)樣本貓的照片)。

圖片

圖片

互信息最大化已被用于在多種數(shù)據(jù)上進(jìn)行預(yù)訓(xùn)練,例如

  • 圖像數(shù)據(jù)上的 Deep InfoMax :最大化圖像局部特征和全局特征之間的互信息

  • 序列數(shù)據(jù)上的 Contrastive Predictive Coding[2]:最大化序列某一時(shí)刻的全局特征和未來某一時(shí)刻局部特征的互信息

  • 圖數(shù)據(jù)上的Deep Graph Infomax[3]:最大化節(jié)點(diǎn)的局部表示和 k-跳鄰域內(nèi)的上下文表示之間的互信息。

  • 多模態(tài)數(shù)據(jù)上的Contrastive Language-Image Pre-training (CLIP) [4]:最大化圖像和相應(yīng)文本之間的互信息。在使用來自 Internet 的大規(guī)模圖像-文本對數(shù)據(jù)集進(jìn)行預(yù)訓(xùn)練后,CLIP在下游任務(wù)上具有了非常不錯(cuò)的零樣本學(xué)習(xí)能力

圖片

  • 相對位置預(yù)測 Relative Position Prediction

相對位置預(yù)測使用數(shù)據(jù)不同的局部作為不同的視圖。

BERT[5]除了引入了Masked Language Modeling任務(wù),還引入了句子級(jí)別的對比任務(wù)Next Sentence Prediction (NSP),來提高句子級(jí)別的任務(wù)的遷移性。具體地,NSP 使用二元分類器判斷從語料庫中采樣的兩個(gè)句子是否相鄰(每句話是整個(gè)文檔的一個(gè)局部)。

然而,NSP 任務(wù)的有效性遭到了不少的質(zhì)疑。通過NSP任務(wù),預(yù)訓(xùn)練模型最終學(xué)到的可能只是主題預(yù)測的能力,而不是更困難的連貫性預(yù)測,而主題預(yù)測并不能很好地提高下游任務(wù)上的遷移性。因此,ALBERT[6]引入了句子順序預(yù)測任務(wù)Sentence Order Prediction,其中,來自同一文檔的兩個(gè)連續(xù)片段是正例,而相同的片段交換順序后則是負(fù)例。

計(jì)算機(jī)視覺中也探索過類似的想法,比如預(yù)測圖像中兩個(gè)補(bǔ)丁的相對位置[7]。

  • 實(shí)例鑒別 Instance Discrimination

實(shí)例鑒別使用數(shù)據(jù)增廣來生成同一實(shí)例的不同視圖。

圖片

負(fù)采樣降低了實(shí)例鑒別任務(wù)的難度,而不同實(shí)例之間的區(qū)分性與下游任務(wù)的遷移性密切相關(guān),因此人們總是盡可能地增大K。比如 Inst-Disc [8]使用一個(gè)memory bank來存儲(chǔ)每個(gè)鍵的表示,然后每隔一段時(shí)間再進(jìn)行更新,從而在不增加計(jì)算負(fù)擔(dān)的情況下,有效的增加負(fù)樣本的數(shù)量。

但是memory bank也使得不同實(shí)例的鍵出現(xiàn)了不一致(來自于不同參數(shù)的特征編碼器),導(dǎo)致了負(fù)樣本的質(zhì)量下降。為了緩解這個(gè)問題,Momentum Contrast (MoCo) [9]

  • 使用一個(gè)隊(duì)列存儲(chǔ)所有負(fù)例的鍵,在一個(gè)batch后,更新隊(duì)列中最老的負(fù)例

  • 使用動(dòng)量編碼器對鍵進(jìn)行編碼,動(dòng)量編碼器使用了滑動(dòng)平均的機(jī)制,因此它的參數(shù)變化不會(huì)太快,從而讓不同樣本的的鍵來自相似的網(wǎng)絡(luò)。

圖片

SimCLR [10]發(fā)現(xiàn)數(shù)據(jù)增廣對對比式預(yù)訓(xùn)練有非常大的影響。即使不需要memory bank或者隊(duì)列,更強(qiáng)的數(shù)據(jù)增廣就可以很好地提高下游任務(wù)的遷移性。

更神奇的是,SimSiam[11]發(fā)現(xiàn)負(fù)樣本和動(dòng)量編碼器都不是必需的,只需要讓鍵值對應(yīng)的編碼器的梯度不要回傳,就可以獲得不錯(cuò)的預(yù)訓(xùn)練模型。

圖片

對比式的無監(jiān)督預(yù)訓(xùn)練在部分下游任務(wù)上,例如目標(biāo)檢測和語義分割,甚至超過了有監(jiān)督預(yù)訓(xùn)練的模型,可能的原因是標(biāo)準(zhǔn)監(jiān)督預(yù)訓(xùn)練通常關(guān)注了高層的語義信息,而對比預(yù)訓(xùn)練更加關(guān)注底層的語義信息。因此對比式學(xué)習(xí)能夠?qū)W到更加通用的表示,從而提高任務(wù)差異較大的下游任務(wù)上的遷移性。

本文主要參考Transferability in Deep Learning: A Survey[12] 中的章節(jié)2.3.2 Contrastive Learning。感興趣的讀者可以閱讀原文(https://arxiv.org/pdf/2201.05867.pdf)。

  • 參考
  1. ^R Devon Hjelm, Alex Fedorov, Samuel Lavoie-Marchildon, Karan Grewal, Phil Bachman, Adam Trischler, and Yoshua Bengio. Learning deep representations by mutual informa- tion estimation and maximization. In ICLR, 2019.
  2. ^Aaron van den Oord, Yazhe Li, and Oriol Vinyals. Representation learning with contrastive predictive coding. NeurIPS, 2019.
  3. ^Petar Veliˇckovi ?c, William Fedus, William L Hamilton, Pietro Li`o, Yoshua Bengio, and R Devon Hjelm. Deep graph infomax. In ICLR, 2019.
  4. ^Alec Radford, Jong Wook Kim, Chris Hallacy, Aditya Ramesh, Gabriel Goh, Sandhini Agarwal, Girish Sastry, Amanda Askell, Pamela Mishkin, Jack Clark, et al. Learning transferable visual models from natural language supervision. In ICML, 2021.
  5. ^Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. Bert: Pre-training of deep bidirectional transformers for language understanding. In NAACL, 2019.
  6. ^Zhenzhong Lan, Mingda Chen, Sebastian Goodman, Kevin Gimpel, Piyush Sharma, and Radu Soricut. Albert: A lite bert for self-supervised learning of language representations. In ICLR, 2020.
  7. ^Carl Doersch, Abhinav Gupta, and Alexei A. Efros. Unsupervised visual representation learning by context prediction. In ICCV, 2015.
  8. ^Zhirong Wu, Yuanjun Xiong, X Yu Stella, and Dahua Lin. Unsupervised feature learning via non-parametric instance discrimination. In CVPR, 2018.
  9. ^Kaiming He, Haoqi Fan, Yuxin Wu, Saining Xie, and Ross Girshick. Momentum contrast for unsupervised visual representation learning. In CVPR, 2020.
  10. ^Ting Chen, Simon Kornblith, Mohammad Norouzi, and Geoffrey Hinton. A simple frame- work for contrastive learning of visual representations. In ICML, 2020.
  11. ^ Xinlei Chen and Kaiming He. Exploring simple siamese representation learning. In CVPR, 2021.
  12. ^Junguang Jiang, Yang Shu, Jianmin Wang, Mingsheng Long, Transferability in Deep Learning: A Survey https://arxiv.org/abs/2201.05867


引用知乎——https://zhuanlan.zhihu.com/p/463840977


*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請聯(lián)系工作人員刪除。



關(guān)鍵詞: AI

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉