本文介紹的是斯坦福大學(xué)在ICLR 2022發(fā)表的一篇多模態(tài)模型分析文章。這篇文章研究的是一個(gè)多模態(tài)對比學(xué)習(xí)模型中常見的問題:為什么不同模態(tài)的embedding在表征空間中形成不同的簇,以及這種gap對最終預(yù)訓(xùn)練多模態(tài)模型在下游任務(wù)中效果的影響。文中分析的一些現(xiàn)象是我們在實(shí)驗(yàn)中經(jīng)常遇到的,例如為什么深度學(xué)習(xí)模型輸出的embedding對的cosine往往是大于0的數(shù),并且做了很多有趣的實(shí)驗(yàn)進(jìn)行了分析和驗(yàn)證。
文中將一些經(jīng)典的多模態(tài)對比學(xué)習(xí)模型中兩個(gè)模態(tài)的embedding,通過降維等方法映射到二維坐標(biāo)系中。從下圖可以看出,不論是哪種模型,兩個(gè)模態(tài)的表征都會(huì)出現(xiàn)gap(形成獨(dú)立的簇)。并且無論是預(yù)訓(xùn)練好的模型,還是隨機(jī)初始化的模型,都存在這個(gè)問題。
那么為什么會(huì)出現(xiàn)這種現(xiàn)象呢?文中從兩個(gè)角度進(jìn)行了分析,一個(gè)是深度學(xué)習(xí)模型本身的cone effect會(huì)帶來gap,另一個(gè)是對比學(xué)習(xí)損失傾向于保持這種gap。
1 Core Effect的影響
Core effect在文中的定義可以理解為,使用深度學(xué)習(xí)模型得到的embedding,會(huì)分布在一個(gè)狹小的錐形空間里,不論模型的參數(shù)是訓(xùn)練好的還是隨機(jī)的。同時(shí),不同的隨機(jī)初始化最終產(chǎn)出的embedding會(huì)分布在不同的錐形區(qū)域。而多模態(tài)模型中,一般是兩個(gè)模態(tài)的模型分別隨機(jī)初始化,這就導(dǎo)致兩個(gè)模態(tài)會(huì)隨機(jī)生成兩個(gè)錐形區(qū)域,從而導(dǎo)致不同模態(tài)之間的表示空間存在gap。下面詳細(xì)介紹一下文中的分析過程。
文中通過模型產(chǎn)出的任意兩個(gè)embedding的cosine相似度分布來驗(yàn)證這個(gè)問題。從模型中獲取5000個(gè)embedding,然后計(jì)算兩兩embedding的cosine相似度,求出平均cosine和最小cosine。通過下圖可以發(fā)現(xiàn),各類模型的cosine值基本都是偏高的,并且很少有負(fù)數(shù)的cosine值。這表明,模型輸出的embedding并不是散落在整個(gè)空間中的,而是形成一個(gè)從坐標(biāo)遠(yuǎn)點(diǎn)向外擴(kuò)展的狹小錐形中,才會(huì)出現(xiàn)cosine取值分布偏大的現(xiàn)象。
那么為什么深度學(xué)習(xí)模型會(huì)出現(xiàn)cone effect現(xiàn)象呢?文中對比了不同激活函數(shù)、不同網(wǎng)絡(luò)層數(shù)的模型形成的cosine均值,發(fā)現(xiàn)層數(shù)越深cosine均值越高,并且當(dāng)沒有激活函數(shù)的時(shí)候就不會(huì)出現(xiàn)cosine均值大于0的情況(如下圖所示)。這說明激活函數(shù)和網(wǎng)絡(luò)層數(shù)的加深是cone effect現(xiàn)象形成的主要原因。
接下來,文中又對比了不同隨機(jī)初始化對形成的錐形區(qū)域的影響。文中對多個(gè)模型進(jìn)行了25次隨機(jī)初始化,并繪制了每次隨機(jī)初始化的embedding區(qū)域??梢钥吹?strong>每次隨機(jī)初始化的錐形區(qū)域都是不同的,這說明不同的隨機(jī)初始化會(huì)導(dǎo)致生成的embedding分布在不同的錐形區(qū)域。
結(jié)合以上的信息就可以推倒出多模態(tài)模型兩個(gè)模態(tài)表征存在gap的原因:多模態(tài)對比學(xué)習(xí)一般是雙塔結(jié)構(gòu),一個(gè)模態(tài)一個(gè)塔,每個(gè)塔進(jìn)行隨機(jī)參數(shù)初始化后,導(dǎo)致每個(gè)塔有一個(gè)自己的錐形區(qū)域,并且初始化的隨機(jī)性導(dǎo)致兩個(gè)塔的錐形區(qū)域不同。
2 對比學(xué)習(xí)loss的影響
第二個(gè)造成多模態(tài)表征存在gap的原因是對比學(xué)習(xí)loss。文中通過一些實(shí)驗(yàn)驗(yàn)證了對比學(xué)習(xí)loss會(huì)傾向于保持這種模態(tài)之間的gap。為了分析這個(gè)問題,文中設(shè)計(jì)了embedding shift實(shí)驗(yàn)和構(gòu)造mismatch數(shù)據(jù)實(shí)驗(yàn)。
在embedding shift實(shí)驗(yàn)中,會(huì)在一個(gè)訓(xùn)練好的CLIP模型基礎(chǔ)上,計(jì)算兩個(gè)模態(tài)embedding質(zhì)心之間的距離。并且不斷的讓兩個(gè)模態(tài)的embedding進(jìn)行靠近,再計(jì)算不同temperature參數(shù)下的對比學(xué)習(xí)loss。實(shí)驗(yàn)結(jié)果如下圖,CLIP模型訓(xùn)練好后,兩個(gè)模態(tài)embedding的距離為0.82,隨著距離的拉近或遠(yuǎn)離,基本都會(huì)帶來loss的上升。而當(dāng)temperature=1時(shí),最小loss則出現(xiàn)在兩個(gè)模態(tài)embedding距離更近的位置,這表明對比學(xué)習(xí)損失對gap的影響是和temperature相關(guān)的。
在構(gòu)造mismatch數(shù)據(jù)實(shí)驗(yàn)中,作者會(huì)構(gòu)造一些mismatch數(shù)據(jù)(如下圖中I0和T0是正樣本,I1和T1是正樣本,但是I0和T1更接近,I1和T0更接近),然后讓文本表示逐漸向圖像表示靠近。并繪制不同temperature下的loss曲線,可以看到和之前類似的效果,距離為0時(shí)loss最大,并且temperature為1時(shí)這種現(xiàn)象并不明顯。同時(shí),如果刪除mismatch的數(shù)據(jù),這個(gè)現(xiàn)象就消失了,這說明mismatch數(shù)據(jù)是導(dǎo)致對比學(xué)習(xí)loss傾向于保持多模態(tài)表征gap的關(guān)鍵因素。
3 Gap和模型效果
那么多模態(tài)表征的gap對模型效果有什么影響呢?首先作者對比了預(yù)訓(xùn)練CLIP在zero-shot任務(wù)的效果。下表表示的是如何通過增大或縮小多模態(tài)表征gap來提升模型的效果。從下表可以看出,在各類數(shù)據(jù)集下,通過增大或減小多模態(tài)表征的gap,是可以對下游任務(wù)產(chǎn)生比較顯著的效果影響的。
4 總結(jié)
這篇文章從一個(gè)多模態(tài)表征存在gap的現(xiàn)象出發(fā),詳細(xì)分析了這個(gè)現(xiàn)象產(chǎn)生的原因,設(shè)計(jì)了豐富的實(shí)驗(yàn)進(jìn)行分析和驗(yàn)證,并最終得到如何通過修改表征gap影響模型效果的方法。此外,文中的附錄還有大量的補(bǔ)充實(shí)驗(yàn),感興趣的同學(xué)可以進(jìn)一步深入閱讀。
審核編輯:劉清
-
Clip
+關(guān)注
關(guān)注
0文章
30瀏覽量
6631 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5437瀏覽量
120791
原文標(biāo)題:多模態(tài)預(yù)訓(xùn)練常見問題:為什么不同模態(tài)表征存在gap?
文章出處:【微信號:zenRRan,微信公眾號:深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論