詳細(xì)解讀Google新作 | 教你How to train自己的Transfomer模型?
極市導(dǎo)讀
本文第一次系統(tǒng)的、大規(guī)模的研究在訓(xùn)練Vision Transformer之前,正則化、數(shù)據(jù)增強(qiáng)、模型大小和訓(xùn)練數(shù)據(jù)大小之間的相互作用,包括它們各自對(duì)達(dá)到一定性能水平所需的計(jì)算預(yù)算的影響。>>加入極市CV技術(shù)交流群,走在計(jì)算機(jī)視覺(jué)的最前沿
1 簡(jiǎn)介
Vision Transformers(Vision transformer, ViT)在圖像分類、目標(biāo)檢測(cè)和語(yǔ)義分割等視覺(jué)應(yīng)用中得到了具有競(jìng)爭(zhēng)力得性能。
與卷積神經(jīng)網(wǎng)絡(luò)相比,當(dāng)在較小的訓(xùn)練數(shù)據(jù)集上訓(xùn)練時(shí),通常發(fā)現(xiàn)Vision Transformer較弱的歸納偏差導(dǎo)致對(duì)模型正則化或數(shù)據(jù)增強(qiáng)(簡(jiǎn)稱AugReg)的依賴增加。為了更好地理解訓(xùn)練數(shù)據(jù)量、AugReg、模型大小和計(jì)算預(yù)算之間的相互作用,作者進(jìn)行了系統(tǒng)的實(shí)驗(yàn)研究。
研究的一個(gè)結(jié)果是,作者發(fā)現(xiàn)增加的計(jì)算和AugReg相結(jié)合,可以產(chǎn)生與在更多訓(xùn)練數(shù)據(jù)上訓(xùn)練的模型具有相同性能的模型:在ImageNet-21k數(shù)據(jù)集上訓(xùn)練各種大小的ViT模型,這些模型與在更大的JFT-300M數(shù)據(jù)集上訓(xùn)練的模型比較甚至可以得到更好得結(jié)果。
2 論文作者主要說(shuō)了什么?
-
第一次系統(tǒng)的、大規(guī)模的研究在訓(xùn)練Vision Transformer之前,正則化、數(shù)據(jù)增強(qiáng)、模型大小和訓(xùn)練數(shù)據(jù)大小之間的相互作用,包括它們各自對(duì)達(dá)到一定性能水平所需的計(jì)算預(yù)算的影響。 -
通過(guò)遷移學(xué)習(xí)的視角來(lái)評(píng)估預(yù)訓(xùn)練模型。因此,作者描述了一個(gè)相當(dāng)復(fù)雜的訓(xùn)練設(shè)置訓(xùn)練前的Vision Transformer跨越不同的模型尺寸。實(shí)驗(yàn)得出了許多關(guān)于各種技術(shù)的影響的令人驚訝的見(jiàn)解,以及什么時(shí)候增強(qiáng)和正則化是有益的,什么時(shí)候無(wú)益的情況。 -
作者還對(duì)Vision Transformer的遷移學(xué)習(xí)配置進(jìn)行了深入分析。結(jié)論是在廣泛的數(shù)據(jù)集中,即使下游數(shù)據(jù)似乎與用于前訓(xùn)練的數(shù)據(jù)只有微弱的關(guān)聯(lián),遷移學(xué)習(xí)仍然是最佳的可用選擇。作者分析還表明,在執(zhí)行類似的預(yù)訓(xùn)練模型中,對(duì)于遷移學(xué)習(xí)來(lái)說(shuō),具有更多訓(xùn)練數(shù)據(jù)的模型可能比具有更多數(shù)據(jù)增強(qiáng)的模型更受青睞。 -
本文研究將有助于指導(dǎo)未來(lái)的Vision Transformer的研究,并將成為一個(gè)有效的訓(xùn)練設(shè)置的有用來(lái)源,以尋求在給定的計(jì)算預(yù)算下優(yōu)化他們的最終模型性能。
3 Findings
3.1 Scaling datasets with AugReg and compute
研究的一個(gè)主要發(fā)現(xiàn)(如圖1(左)所示)是,通過(guò)使用圖像增強(qiáng)和模型正則化預(yù)訓(xùn)練一個(gè)模型,使其達(dá)到與增加數(shù)據(jù)集大小約一個(gè)數(shù)量級(jí)相同的精度。更準(zhǔn)確地說(shuō),在AugReg ImageNet-1k上訓(xùn)練的最佳模型的性能與在10倍大的普通ImageNet-21k數(shù)據(jù)集上訓(xùn)練的相同模型的性能差不多。
類似地,在AugReg ImageNet-21k上訓(xùn)練的最佳模型,當(dāng)計(jì)算量也增加時(shí),將匹配或優(yōu)于在普通JFT-300M數(shù)據(jù)集上訓(xùn)練的模型。因此,可以將這些結(jié)果與公開可用的數(shù)據(jù)集進(jìn)行匹配,可以想象,在JFT-300M上進(jìn)行更長(zhǎng)時(shí)間的訓(xùn)練和使用AugReg可能會(huì)進(jìn)一步提高性能。
當(dāng)然,這些結(jié)果不能適用于任意小的數(shù)據(jù)集。只對(duì)ImageNet-1k的10%進(jìn)行大量數(shù)據(jù)增強(qiáng)的ResNet50訓(xùn)練可以改善結(jié)果,但不能恢復(fù)對(duì)完整數(shù)據(jù)集的訓(xùn)練。
3.2 Transfer is the better option
在這里,作者調(diào)查了對(duì)于從業(yè)者可能遇到的合理規(guī)模的數(shù)據(jù)集,是否建議嘗試使用AugReg從頭開始進(jìn)行訓(xùn)練,或者是否把時(shí)間和金錢花在遷移預(yù)訓(xùn)練模型上更好。其結(jié)果是,就大多數(shù)實(shí)際目的而言,遷移預(yù)先訓(xùn)練的模型不僅成本效益更高,而且會(huì)帶來(lái)更好的結(jié)果。
作者在一個(gè)與ImageNet-1k數(shù)據(jù)集相似大小的數(shù)據(jù)集上對(duì)小的ViT-Ti/16模型進(jìn)行了搜索,尋找一個(gè)好的訓(xùn)練策略。Resisc45包含大約3萬(wàn)幅訓(xùn)練圖像,由一種非常不同的衛(wèi)星圖像組成,ImageNet-1k或ImageNet-21k都沒(méi)有很好地覆蓋這些圖像。圖1(右)和圖2顯示了這一廣泛搜索的結(jié)果。
最驚人的發(fā)現(xiàn)是,無(wú)論花費(fèi)多少訓(xùn)練時(shí)間,對(duì)于微小的Pet37數(shù)據(jù)集,似乎不可能從頭開始訓(xùn)練ViT模型,使其達(dá)到接近遷移模型的精度。此外,由于預(yù)訓(xùn)練模型可以免費(fèi)獲取,所以從業(yè)者的預(yù)訓(xùn)練成本實(shí)際上為零,只有用于遷移學(xué)習(xí)的計(jì)算損失,因此遷移預(yù)訓(xùn)練的模型同時(shí)也大大便宜。
對(duì)于更大的Resisc45數(shù)據(jù)集,這個(gè)結(jié)果仍然成立,盡管多花費(fèi)2個(gè)數(shù)量級(jí)的計(jì)算和執(zhí)行大量搜索可能接近(但達(dá)不到)預(yù)先訓(xùn)練的模型的精度。
值得注意的是,這并沒(méi)有考慮到很難量化的“exploration cost”。對(duì)于訓(xùn)練前的模型,我們強(qiáng)調(diào)那些在訓(xùn)練前驗(yàn)證集上表現(xiàn)最好的模型,可以稱為推薦模型??梢钥吹剑褂猛扑]的模型有很高的可能性在幾次嘗試中就能獲得良好的結(jié)果。
3.3 More data yields more generic models
通過(guò)將預(yù)訓(xùn)練模型遷移到下游任務(wù)來(lái)研究預(yù)訓(xùn)練數(shù)據(jù)集大小的影響。作者在VTAB上評(píng)估了訓(xùn)練前的模型,包括19個(gè)不同的任務(wù)。
圖3顯示了3個(gè)VTAB類別的結(jié)果:natural、specialized和structured。模型按推理時(shí)間進(jìn)行排序,模型越大推理速度越慢。
首先比較使用相同計(jì)算預(yù)算的2個(gè)模型,唯一的區(qū)別是ImageNet-1k(1.3M圖像)和ImageNet-21k (13M圖像)的數(shù)據(jù)集大小。作者實(shí)驗(yàn)對(duì)比ImageNet-1k訓(xùn)練300個(gè)epoch的模型和ImageNet-21k上訓(xùn)練30個(gè)epoch模型發(fā)現(xiàn),在ImageNet-21k上進(jìn)行預(yù)訓(xùn)練的模型3個(gè)VTAB類別上都明顯優(yōu)于ImageNet-1k。
隨著計(jì)算預(yù)算的不斷增長(zhǎng),作者觀察到ImageNet-21k數(shù)據(jù)集在10倍長(zhǎng)的調(diào)度上的一致改進(jìn)。在一些幾乎已經(jīng)解決的任務(wù)中,例如花,獲得的絕對(duì)數(shù)量很小。對(duì)于剩下的任務(wù),與短期訓(xùn)練的模型相比,改進(jìn)是顯著的。
總的來(lái)說(shuō)得出的結(jié)論是,數(shù)據(jù)越多,模型就越通用,這一趨勢(shì)適用于不同的任務(wù)。作者建議設(shè)計(jì)選擇使用更多的數(shù)據(jù)和一個(gè)固定的計(jì)算預(yù)算。
3.4 Prefer augmentation to regularization
目前尚不清楚在RandAugment和Mixup等數(shù)據(jù)增強(qiáng)和Dropout和randomdepth等模型正則化之間有哪些取舍。在本節(jié)的目標(biāo)是發(fā)現(xiàn)這些通用模式,當(dāng)將Vision transformer應(yīng)用到一個(gè)新任務(wù)時(shí),可以作為經(jīng)驗(yàn)規(guī)則使用。
在圖4中,作者展示了為每個(gè)單獨(dú)設(shè)置獲得的上游驗(yàn)證得分,即在更改數(shù)據(jù)集時(shí),數(shù)字是不具有可比性的。
一個(gè)單元格的顏色編碼其分?jǐn)?shù)的改善或變差,與非正則化的,未增強(qiáng)的設(shè)置,即最左邊的列。增強(qiáng)強(qiáng)度從左到右依次增大,模型容量從上到下依次增大。
第1個(gè)可見(jiàn)的觀察結(jié)果是,對(duì)于中等規(guī)模的ImageNet-1k數(shù)據(jù)集,任何類型的AugReg都有幫助。然而,當(dāng)使用10倍大的ImageNet-21k數(shù)據(jù)集并保持計(jì)算固定時(shí),即運(yùn)行30個(gè)epoch,任何一種AugReg都會(huì)影響除最大模型之外的所有模型的性能。只有當(dāng)計(jì)算預(yù)算增加到300個(gè)時(shí),AugReg才幫助更多的模型,盡管即使那樣,它也繼續(xù)影響較小的模型。
一般來(lái)說(shuō),增加增廣效果比增加正規(guī)化效果好得多。更具體地說(shuō),圖4中每個(gè)映射右側(cè)的細(xì)列顯示,對(duì)于任何給定的模型,其最佳正則化分?jǐn)?shù)減去最佳非正則化分?jǐn)?shù)。
在圖7中,作者通過(guò)dropout和random depth的方式向模型添加正則化時(shí),顯示了精度上的增益(綠色,正數(shù))或損失(紅色,負(fù)數(shù))。在早期的實(shí)驗(yàn)中證實(shí),兩者結(jié)合(峰值)下降概率0.1確實(shí)是最好的設(shè)置。
這表明,模型正規(guī)化主要幫助較大的模型,但是當(dāng)訓(xùn)練時(shí)間較長(zhǎng)的情況下,特別是ImageNet-21的預(yù)訓(xùn)練,除了最大的模型它對(duì)所有的模型都有害的。
3.5 Choosing which pre-trained model to transfer
如上所述,在對(duì)ViT模型進(jìn)行預(yù)訓(xùn)練時(shí),各種正則化和數(shù)據(jù)增強(qiáng)設(shè)置會(huì)導(dǎo)致模型具有顯著不同的性能。
然后,從實(shí)踐者的觀點(diǎn)來(lái)看,一個(gè)自然的問(wèn)題出現(xiàn)了:如何選擇一個(gè)模型進(jìn)一步適應(yīng)最終的應(yīng)用程序?
-
一種方法是:對(duì)所有可用的預(yù)訓(xùn)練模型進(jìn)行下游適應(yīng),然后根據(jù)下游任務(wù)的驗(yàn)證分?jǐn)?shù)選擇表現(xiàn)最好的模型。但是這在實(shí)踐中可能是相當(dāng)麻煩的。 -
另一種方法是:可以根據(jù)上游驗(yàn)證精度選擇一個(gè)單獨(dú)的預(yù)訓(xùn)練模型,然后只使用該模型進(jìn)行自適應(yīng),這要簡(jiǎn)單得多。
在這里作者將分析這2種策略之間的權(quán)衡。在5個(gè)不同的數(shù)據(jù)集上對(duì)它們進(jìn)行了大量的預(yù)訓(xùn)練模型的比較。具體來(lái)說(shuō),在圖5(左)中強(qiáng)調(diào)了只適應(yīng)最好的預(yù)訓(xùn)練模型的簡(jiǎn)單策略和適應(yīng)所有預(yù)訓(xùn)練模型(然后選擇最好的)的復(fù)雜策略之間的性能差異。
結(jié)果好壞參半,但總體上反映出,在大多數(shù)情況下,成本較低的策略與成本較高的策略效果相同。然而,有一些顯著的異常值,當(dāng)它有利于適應(yīng)所有的模型。
因此,作者得出結(jié)論,選擇一個(gè)基于上游分?jǐn)?shù)的單一預(yù)訓(xùn)練模型是一種具有成本效益的實(shí)用策略,并在整個(gè)論文中使用它。然而,作者也強(qiáng)調(diào),如果有額外的計(jì)算資源可用,那么在某些情況下,可以通過(guò)微調(diào)額外的預(yù)訓(xùn)練模型來(lái)進(jìn)一步提高自適應(yīng)性能。
關(guān)于ImageNet-1k數(shù)據(jù)集驗(yàn)證數(shù)據(jù)的說(shuō)明
在執(zhí)行上述分析時(shí),作者發(fā)現(xiàn)在ImageNet-21k上預(yù)先訓(xùn)練并遷移到ImageNet-1k數(shù)據(jù)集的模型存在一個(gè)微小但嚴(yán)重的問(wèn)題。這些模型(特別是大型模型)的驗(yàn)證分?jǐn)?shù)與觀察到的測(cè)試性能沒(méi)有很好的關(guān)聯(lián),見(jiàn)圖5(左)。這是因?yàn)镮mageNet-21k數(shù)據(jù)包含ImageNet-1k訓(xùn)練數(shù)據(jù),作者使用訓(xùn)練數(shù)據(jù)的一個(gè)小split來(lái)進(jìn)行評(píng)估(見(jiàn)3.1節(jié))。
因此,在較長(zhǎng)訓(xùn)練計(jì)劃上的大型模型記憶了來(lái)訓(xùn)練集的數(shù)據(jù),這使得在小評(píng)估集中計(jì)算的評(píng)估指標(biāo)存在偏差。為了解決這個(gè)問(wèn)題并支持公平的超參數(shù)選擇,作者使用獨(dú)立收集的ImageNetV2數(shù)據(jù)作為傳輸?shù)絀mageNet-1k的驗(yàn)證split。如圖5(右)所示。作者沒(méi)有在其他數(shù)據(jù)集中觀察到類似的問(wèn)題。
作者建議將ImageNet-21k模型遷移到ImageNet-1k的研究人員遵循這一策略。
3.6 Prefer increasing patch-size to shrinking model-size
作者研究的一個(gè)意想不到的結(jié)果是,訓(xùn)練了幾個(gè)模型,它們?cè)谕评硗掏铝糠矫娲笾孪嗟?,但在質(zhì)量方面差異很大。
具體地說(shuō),圖6(右)顯示了包含Tiny變體的模型比具有32-patch-size的類似快速的更大模型的性能要差得多。對(duì)于給定的分辨率,patch-size會(huì)影響self-attention執(zhí)行的token數(shù)量,因此會(huì)影響模型容量,而參數(shù)計(jì)數(shù)并不能反映模型容量。參數(shù)計(jì)數(shù)既不反映速度,也不反映容量。
參考
[1].How to train your ViT? Data, Augmentation,and Regularization in Vision Transformers
本文亮點(diǎn)總結(jié)
如果覺(jué)得有用,就請(qǐng)分享到朋友圈吧!
公眾號(hào)后臺(tái)回復(fù)“目標(biāo)檢測(cè)競(jìng)賽”獲取目標(biāo)檢測(cè)競(jìng)賽經(jīng)驗(yàn)資源~
# CV技術(shù)社群邀請(qǐng)函 #
備注:姓名-學(xué)校/公司-研究方向-城市(如:小極-北大-目標(biāo)檢測(cè)-深圳)
即可申請(qǐng)加入極市目標(biāo)檢測(cè)/圖像分割/工業(yè)檢測(cè)/人臉/醫(yī)學(xué)影像/3D/SLAM/自動(dòng)駕駛/超分辨率/姿態(tài)估計(jì)/ReID/GAN/圖像增強(qiáng)/OCR/視頻理解等技術(shù)交流群
每月大咖直播分享、真實(shí)項(xiàng)目需求對(duì)接、求職內(nèi)推、算法競(jìng)賽、干貨資訊匯總、與 10000+來(lái)自港科大、北大、清華、中科院、CMU、騰訊、百度等名校名企視覺(jué)開發(fā)者互動(dòng)交流~
