ResMLP

ResMLP: Feedforward networks for image classification with data-efficient training


我們提出ResMLP,一個完全建立在多層感知器上的圖像分類體系結(jié)構(gòu)。它是一個簡單的殘差網(wǎng)絡(luò),它交替地(i)線性層,其中圖像塊相互作用,獨立地和相同地跨通道,和(ii)兩層前饋網(wǎng)絡(luò),其中每個通道塊相互作用獨立。當(dāng)使用現(xiàn)代的訓(xùn)練策略進(jìn)行訓(xùn)練時,使用大量的數(shù)據(jù)擴(kuò)充和選擇性的提取,它在ImageNet上獲得了令人驚訝的良好的精度/復(fù)雜性權(quán)衡。我們還訓(xùn)練ResMLP模型在一個自我監(jiān)督的設(shè)置,以進(jìn)一步消除先驗使用標(biāo)記的數(shù)據(jù)集。最后,通過使我們的模型適應(yīng)機(jī)器翻譯,我們獲得了令人驚訝的好結(jié)果。

我們共享預(yù)先訓(xùn)練的模型和基于Timm庫的代碼。



1簡介

最近,transformer架構(gòu)(transformer architecture)[60]從其在自然語言處理中的最初用途改編而來,只做了一些小的改動,當(dāng)使用足夠大的數(shù)據(jù)量進(jìn)行預(yù)訓(xùn)練時,它的性能可以與ImageNet-1k[50]上的最新技術(shù)相媲美[16]?;仡欉^去,這一成就是朝著用較少的先驗知識學(xué)習(xí)視覺特征邁出的又一步:卷積神經(jīng)網(wǎng)絡(luò)(CNN)已經(jīng)用靈活的、可訓(xùn)練的結(jié)構(gòu)取代了手工設(shè)計的硬連線特征選擇。視覺變換器進(jìn)一步消除了編碼在卷積結(jié)構(gòu)中的幾個困難決策,即平移不變性和局部連通性。

更好的訓(xùn)練方案推動了該體系結(jié)構(gòu)向較少硬編碼先驗的演變[16,56],在本文中,我們進(jìn)一步推動了這一趨勢,證明了基于純多層感知器(MLP)的體系結(jié)構(gòu),稱為剩余多層感知器(ResMLP),在圖像分類方面具有競爭力。ResMLP算法設(shè)計簡單,對圖像編碼的先驗知識少:它以圖像塊為輸入,用線性層進(jìn)行投影,然后用兩個殘差操作依次更新圖像塊的表示:(i)一個交叉塊線性層獨立應(yīng)用于所有通道;以及(ii)獨立地應(yīng)用于所有貼片的跨信道單層MLP。在網(wǎng)絡(luò)的末端,補(bǔ)丁表示被平均化,并反饋給線性分類器。我們在圖1中概述ResMLP,并在第2節(jié)中進(jìn)一步詳述它。

ResMLP體系結(jié)構(gòu)受到視覺變換器(ViT)的強(qiáng)烈啟發(fā)[16],但它在以下幾個方面要簡單得多:我們用一個線性層替換自注意子層,從而形成一個只有線性層和GELU非線性的體系結(jié)構(gòu)[25]。我們觀察到,當(dāng)使用與DeiT[56]和CaiT[57]中相同的訓(xùn)練方案時,ResMLP的訓(xùn)練比ViTs更穩(wěn)定,從而消除了對批特定或跨通道規(guī)范化(如BatchNorm、GroupNorm或LayerNorm)的需要。我們推測這種穩(wěn)定性來自于用線性層代替自注意。最后,使用線性層的另一個優(yōu)點是,我們?nèi)匀豢梢钥梢暬N片嵌入之間的相互作用,在較低層顯示類似于卷積的濾波器,在最后一層顯示更長的范圍。

我們進(jìn)一步研究了純粹基于MLP的體系結(jié)構(gòu)是否有利于圖像以外的其他領(lǐng)域,特別是更復(fù)雜的輸出空間。特別地,我們采用了基于MLP的結(jié)構(gòu)來獲取可變長度的輸入,并展示了它在機(jī)器翻譯問題上的潛力。為此,我們開發(fā)了一個序列到序列(seq2seq)版本的ResMLP,其中編碼器和解碼器都基于ResMLP,編碼器和解碼器之間相互關(guān)注[2]。該模型類似于原始的seq2seqTransformer,使用ResMLP層而不是Transformer層[60]。盡管最初不是為這項任務(wù)而設(shè)計的,但我們觀察到,ResMLP在具有挑戰(zhàn)性的WMT基準(zhǔn)上與Transformer具有競爭力。

綜上所述,在本文中,我們做了以下觀察:

?盡管ResMLP非常簡單,但它僅通過ImageNet-1k訓(xùn)練就達(dá)到了出人意料的高精度/復(fù)雜度權(quán)衡,而不需要基于批處理或通道統(tǒng)計的標(biāo)準(zhǔn)化;

?這些模型顯著受益于蒸餾方法[56];它們還與基于數(shù)據(jù)擴(kuò)充的現(xiàn)代自監(jiān)督學(xué)習(xí)方法兼容,如DINO[7];

?在WMT機(jī)器翻譯基準(zhǔn)上,與seq2seq Transformers相比,seq2seq ResMLP實現(xiàn)了具有競爭力的性能。


2方法

在本節(jié)中,我們將描述我們的體系結(jié)構(gòu)ResMLP,如圖1所示。ResMLP受ViT的啟發(fā),本節(jié)將重點介紹對ViT所做的更改,這些更改將導(dǎo)致一個純粹基于MLP的模型。我們請讀者參考Dosovitskiy等人[16]了解有關(guān)維生素C的更多詳情。

ResMLP的總體架構(gòu)。

我們的模型用ResMLP表示,網(wǎng)格為N×N個不重疊的面片作為輸入,其中面片大小通常等于16×16.然后這些貼片獨立地穿過一個線性層,形成一組n2d維嵌入。

所得到的N2嵌入集被饋送到剩余的多層感知器層序列以產(chǎn)生N2 d維輸出嵌入集。然后將這些輸出嵌入平均(“平均池”)作為d維向量來表示圖像,該圖像被饋送到線性分類器以預(yù)測與圖像相關(guān)聯(lián)的標(biāo)簽。訓(xùn)練使用交叉熵?fù)p失。

剩余多感知器層。

我們的網(wǎng)絡(luò)是一系列具有相同結(jié)構(gòu)的層:一個線性子層應(yīng)用于斑塊,然后是一個前饋子層應(yīng)用于通道。與Transformer層類似,每個子層都有一個跳躍連接[23]。缺乏自注意層使得訓(xùn)練更加穩(wěn)定,允許我們用一個更簡單的仿射變換代替層規(guī)范化[1]:

哪里α 以及β 是可學(xué)習(xí)的權(quán)重向量。此操作僅按順序重新縮放和移動輸入元素。與其他歸一化操作相比,這種操作有幾個優(yōu)點:首先,與層歸一化相反,它在推理時沒有成本,因為它可以被相鄰的線性層吸收。其次,與BatchNorm[30]和層規(guī)范化相反,Aff操作符不依賴于批統(tǒng)計。與Aff更接近的算子是Touvron等人[57]引入的LayerScale,還有一個附加的偏差項。為了方便起見,我們用Aff(X)表示獨立應(yīng)用于矩陣X的每一列的仿射運算。

我們在每個剩余塊的開始(“預(yù)規(guī)范化”)和結(jié)束(“后規(guī)范化”)處應(yīng)用Aff操作符。作為預(yù)規(guī)范化,Aff代替LayerNorm而不使用通道統(tǒng)計。在這里,我們初始化α = 1,和β = 0.作為后規(guī)范化,Aff類似于LayerScale,我們初始化它α 具有與[57]中相同的小值。

總的來說,我們的多層感知器采用了一組n2d維的輸入特征,這些特征疊加在一個二維空間中× N2矩陣X,并輸出一組N2 d維輸出特征,通過以下一組變換疊加在矩陣Y中:


其中A、B和C是層的主要可學(xué)習(xí)權(quán)重矩陣。注意,等式(3)與Transformer的前饋子層相同,ReLU非線性被GELU函數(shù)取代[25]。參數(shù)矩陣A的維數(shù)為N2×N2,即,這個“交叉補(bǔ)丁”子層在補(bǔ)丁之間交換信息,而“交叉通道”前饋子層在每個位置工作。與Transformer類似,中間激活矩陣Z具有與輸入和輸出矩陣X和Y相同的維數(shù)。最后,權(quán)重矩陣B和C具有與Transformer層中相同的尺寸,即4d×d和d×分別為4d。

與Vision Transformer架構(gòu)的區(qū)別。

我們的體系結(jié)構(gòu)與ViT模型密切相關(guān)[16]。然而,ResMLP與ViT不同,有幾個簡化:

?無自注意塊:被無非線性的線性層取代,

?無位置嵌入:線性層隱式編碼關(guān)于面片位置的信息,

?沒有額外的“類”標(biāo)記:我們只是在補(bǔ)丁嵌入上使用平均池,

?沒有基于批量統(tǒng)計的標(biāo)準(zhǔn)化:我們使用可學(xué)習(xí)仿射運算符。

MLP類作為平均池的替代方案。

我們建議對CaiT[57]中引入的類注意標(biāo)記進(jìn)行修改。在CaiT中,它由兩個層組成,這兩個層的結(jié)構(gòu)與transformer相同,但其中只有類令牌根據(jù)凍結(jié)的補(bǔ)丁嵌入進(jìn)行更新。我們將這種方法轉(zhuǎn)化為我們的體系結(jié)構(gòu),只是在用線性層聚合補(bǔ)丁之后,我們用簡單的線性層替換類和補(bǔ)丁嵌入之間基于注意的交互,仍然保持補(bǔ)丁嵌入的凍結(jié)狀態(tài)。這以增加一些參數(shù)和計算成本為代價,提高了性能。我們將這個池變體稱為“類MLP”,因為這幾個層的目的是替換平均池。

序列到序列ResMLP。

與Transformer類似,ResMLP體系結(jié)構(gòu)可以應(yīng)用于序列到序列的任務(wù)。首先,我們遵循Vaswani等人[60]的通用編碼器-解碼器體系結(jié)構(gòu),其中我們用剩余的多感知器層替換自注意子層。在解碼器中,我們保留了交叉注意子層,這些子層負(fù)責(zé)編碼器的輸出。在解碼器中,我們通過將矩陣A約束為三角形,使線性子層適應(yīng)語言建模的任務(wù),以防止給定的令牌表示將來訪問令牌。最后,在序列到序列模型中使用線性子層的主要技術(shù)難點是處理可變序列長度。然而,我們觀察到,簡單地用零填充并提取對應(yīng)于一批中最長序列的子矩陣A,在實踐中效果良好


3個實驗

在本節(jié)中,我們將介紹ResMLP架構(gòu)在圖像分類和機(jī)器翻譯方面的實驗結(jié)果。我們還研究了ResMLP不同成分對消融研究的影響。我們考慮三種圖像訓(xùn)練模式

?監(jiān)督學(xué)習(xí):我們使用softmax分類器和交叉熵?fù)p失從標(biāo)記圖像訓(xùn)練ResMLP。這一范式是我們工作的主要焦點。

?自監(jiān)督學(xué)習(xí):我們使用Caron等人[7]的DINO方法訓(xùn)練ResMLP,該方法通過從同一網(wǎng)絡(luò)的先前實例中提取知識來訓(xùn)練沒有標(biāo)簽的網(wǎng)絡(luò)。

?知識提煉:我們采用Touvron等人[56]提出的知識提煉程序,用convnet指導(dǎo)ResMLP的監(jiān)督培訓(xùn)。

3.1實驗設(shè)置

數(shù)據(jù)集。

我們在ImageNet-1k數(shù)據(jù)集[50]上訓(xùn)練模型,該數(shù)據(jù)集包含120萬個均勻分布在1000個對象類別上的圖像。在沒有可用于此基準(zhǔn)的測試集的情況下,我們遵循社區(qū)中的標(biāo)準(zhǔn)實踐,報告驗證集的性能。這并不理想,因為驗證集最初設(shè)計用于選擇超參數(shù)。在這個集合上比較方法可能不夠決定性,因為性能的提高可能不是由更好的建模引起的,而是由更好地選擇超參數(shù)引起的。為了降低這種風(fēng)險,我們報告了轉(zhuǎn)移學(xué)習(xí)和兩個替代版本的ImageNet的額外結(jié)果,這兩個版本的ImageNet具有不同的驗證和測試集,即ImageNet real[4]和ImageNet-v2[49]數(shù)據(jù)集。我們還報告了在ImageNet-21k上訓(xùn)練時的一些數(shù)據(jù)點。我們的超參數(shù)主要來自Touvron等人[56,57]。

超參數(shù)設(shè)置。

在有監(jiān)督學(xué)習(xí)的情況下,我們用Lamb優(yōu)化器[64]訓(xùn)練我們的網(wǎng)絡(luò),學(xué)習(xí)率為5× 10?3,重量衰減0.2。我們按照CaiT[57]的要求,將分層比例參數(shù)初始化為深度的函數(shù)。其余的超參數(shù)遵循DeiT[56]中使用的默認(rèn)設(shè)置。對于知識提煉范式,我們使用與DeiT相同的RegNety-16GF[48],使用相同的訓(xùn)練計劃。我們的大多數(shù)型號需要兩天的時間在8個V100-32gbgpu上進(jìn)行訓(xùn)練。

3.2主要結(jié)果

在本節(jié)中,我們將ResMLP與基于卷積或自關(guān)注的架構(gòu)進(jìn)行比較,這些架構(gòu)在ImageNet上具有相當(dāng)?shù)拇笮『屯掏铝俊?/p>


監(jiān)督設(shè)置。

在表1中,我們比較了不同卷積結(jié)構(gòu)和Transformer結(jié)構(gòu)的ResMLP。為了完整性,我們還報告了僅在ImageNet上訓(xùn)練的模型獲得的最佳公布數(shù)字。雖然ResMLP的精度、FLOPs和吞吐量之間的折衷不如卷積網(wǎng)絡(luò)或Transformer,但它們的高精度仍然表明,層設(shè)計施加的結(jié)構(gòu)約束對性能沒有很大影響,特別是在使用足夠的數(shù)據(jù)和最新的訓(xùn)練方案進(jìn)行訓(xùn)練時。

自監(jiān)督設(shè)置。

我們使用稱為DINO[7]的自監(jiān)督方法在300個時期內(nèi)預(yù)訓(xùn)練ResMLP-S12。我們在表2中報告了我們的結(jié)果。趨勢類似于監(jiān)督設(shè)置:ResMLP獲得的準(zhǔn)確度低于ViT。然而,對于純MLP體系結(jié)構(gòu)來說,性能出奇地高,并且在k-NN評估方面與Convnet競爭。此外,我們還使用地面真值標(biāo)簽在ImageNet上對預(yù)先訓(xùn)練好的網(wǎng)絡(luò)進(jìn)行了微調(diào)。與單獨使用標(biāo)簽訓(xùn)練的ResMLP-S24相比,預(yù)訓(xùn)練顯著提高了性能,在ImageNet val上達(dá)到79.9%的top-1準(zhǔn)確率(+0.5%)。

知識升華設(shè)置。

我們利用Touvron等人[56]的知識提煉方法來研究我們的模型。在他們的工作中,作者通過從RegNet中提取ViT模型來展示訓(xùn)練ViT模型的影響。在這個實驗中,我們探索ResMLP是否也從這個過程中受益,并將我們的結(jié)果總結(jié)在表3中(“基線模型”和“訓(xùn)練”)。我們觀察到,與DeiT模型類似,ResMLP從convnet中提取非常有益。這一結(jié)果與d'Ascoli等人[14]的觀察結(jié)果一致,他們使用convnets初始化前饋網(wǎng)絡(luò)。盡管我們的設(shè)置與他們的設(shè)置在規(guī)模上不同,但在ImageNet上仍然存在前饋網(wǎng)絡(luò)的過度擬合問題。從蒸餾中獲得的額外正則化是這種改進(jìn)的可能解釋。

3.3斑塊間線性相互作用的可視化與分析

交叉貼片子層的可視化。

在圖2中,我們以平方圖像的形式顯示了ResMLP-S24模型不同深度的交叉貼片子層的權(quán)重矩陣行。早期的層顯示出類似卷積的模式:權(quán)重類似于彼此的移位版本,并且具有局部支持。有趣的是,在許多層中,支架也沿兩個軸延伸;見第7層。網(wǎng)絡(luò)的最后7層是不同的:它們由斑塊本身的尖峰和其他不同大小斑塊的漫射響應(yīng)組成;見第20層。

測量砝碼的稀疏性。

上面描述的可視化表明線性通信層是稀疏的。我們在圖3中對此進(jìn)行了更詳細(xì)的定量分析。我們測量了矩陣A的稀疏性,并將其與每個貼片MLP中B和C的稀疏性進(jìn)行了比較。由于沒有精確的零點,我們測量絕對值低于最大值5%的分量的比率。請注意,丟棄小值類似于我們通過最大值標(biāo)準(zhǔn)化矩陣并使用有限精度的權(quán)重表示的情況。例如,對于權(quán)重的4位表示,通常將絕對值低于最大值6.25%的所有權(quán)重四舍五入為零。

圖3中的測量結(jié)果表明,所有三個矩陣都是稀疏的,實現(xiàn)補(bǔ)丁通信的層明顯更稀疏。這表明它們可能與參數(shù)剪枝兼容,或者更好地與現(xiàn)代量化技術(shù)兼容,后者在訓(xùn)練時產(chǎn)生稀疏性,例如量子噪聲[20]和DiffQ[19]。稀疏性結(jié)構(gòu),特別是在早期的層中,見圖2,暗示我們可以用卷積實現(xiàn)補(bǔ)丁交互線性層。我們在消融研究中提供了一些卷積變異的結(jié)果。對網(wǎng)絡(luò)壓縮的進(jìn)一步研究超出了本文的研究范圍,但我們認(rèn)為這是一個值得進(jìn)一步研究的問題。

跨修補(bǔ)程序通信

如果我們?nèi)サ艟€性相互作用層(線性→ 無),我們獲得了相當(dāng)?shù)偷臏?zhǔn)確度(-20%前1名acc.)“袋補(bǔ)丁”的方法。我們已經(jīng)嘗試了跨補(bǔ)丁子層的幾種替代方案,如表3所示(塊“補(bǔ)丁通信”)。其中,使用與貼片處理相同的MLP結(jié)構(gòu)(線性→ ?MLP),我們在補(bǔ)充材料中對其進(jìn)行了更詳細(xì)的分析??紤]到MLP變體需要在ResMLP-S12和ResMLP-S24之間進(jìn)行一半的計算,并且比剩余MLP塊需要更少的參數(shù),單個線性平方層的簡單選擇導(dǎo)致了更好的精度/性能權(quán)衡。

圖2中的可視化顯示表明許多線性交互層看起來像卷積。在我們的消融中,我們用不同類型的3×3個卷積。深度方向的卷積不實現(xiàn)跨通道的交互——就像我們的線性貼片通信層一樣——并且在相當(dāng)數(shù)量的參數(shù)和觸發(fā)器下產(chǎn)生類似的性能。當(dāng)滿3時×3卷積產(chǎn)生最好的結(jié)果,它們的參數(shù)和觸發(fā)器的數(shù)量大約是原來的兩倍。有趣的是,深度可分離卷積結(jié)合精度接近全3×3個卷積與我們的線性層相當(dāng)?shù)膮?shù)和觸發(fā)器的數(shù)量。這表明,在所有層的低分辨率特征圖上進(jìn)行卷積是一種有趣的替代方案,而不是convnet的常見金字塔設(shè)計,早期層以更高的分辨率和更小的特征維數(shù)進(jìn)行操作。

3.4消融研究

表3報告了我們基礎(chǔ)網(wǎng)絡(luò)的消融研究和我們初步探索性研究的總結(jié)。我們將在下面討論消融,并在附錄A中給出早期實驗的更多細(xì)節(jié)。

過度裝配的控制。


由于MLP會受到過度擬合的影響,我們在圖4中展示了一個控制實驗,以探索泛化問題。我們明確地分析了ImageNet val和不同的ImageNet-V2測試集之間的性能差異。曲線之間的相對偏移反映了模型過度擬合ImageNet val w.r.t.超參數(shù)選擇的程度。我們基于MLP的模型的過度擬合程度總體上是中性的,或者略高于其他基于Transformer的架構(gòu)或具有相同訓(xùn)練程序的convnet。

規(guī)范化和激活。

我們的網(wǎng)絡(luò)配置不包含任何批處理規(guī)范化。相反,我們使用仿射每通道變換Aff。這類似于層規(guī)范化[1],通常用于Transformer,只是我們避免收集任何類型的統(tǒng)計數(shù)據(jù),因為我們不需要它來收斂。在使用前范數(shù)和后范數(shù)[24]的初步實驗中,我們觀察到兩種選擇都收斂。在某些情況下,預(yù)標(biāo)準(zhǔn)化與批量標(biāo)準(zhǔn)化相結(jié)合可提供準(zhǔn)確度增益,見附錄A。

我們選擇使用GELU[25]函數(shù)。

在附錄A中,我們還分析了激活函數(shù):ReLU[22]也給出了一個很好的性能,但在某些設(shè)置下它有點不穩(wěn)定。我們在SiLU[25]和HardSwish[28]中沒有取得好的結(jié)果。

聯(lián)營。

用類MLP替換平均池(見第2節(jié))可以帶來顯著的收益,而計算成本可以忽略不計。默認(rèn)情況下,我們不包含它,以使模型更簡單。

補(bǔ)丁大小。

較小的補(bǔ)丁顯著提高了性能,但也增加了觸發(fā)器的數(shù)量(見表3中的塊“補(bǔ)丁大小”)。較小的面片對較大的模型更有利,但只適用于包含更多正則化(蒸餾)或更多數(shù)據(jù)的改進(jìn)優(yōu)化方案。

培訓(xùn)。

考慮表3中的“培訓(xùn)”部分。ResMLP從現(xiàn)代培訓(xùn)程序(如DeiT中使用的程序)中獲得了顯著的好處。例如,與ResNet[23]2所采用的訓(xùn)練相比,DeiT訓(xùn)練程序?qū)esMLP-S12的性能提高了7.4%。

這與最近指出訓(xùn)練策略對模型選擇的重要性的工作一致[3,48]。對更多數(shù)據(jù)的預(yù)訓(xùn)練和蒸餾也提高了ResMLP的性能,特別是對于更大的模型,例如蒸餾使ResMLP-B24/8的精度提高了2.6%。


其他分析。

在我們早期的探索中,我們評估了幾種可供選擇的設(shè)計方案。就像在transformers中一樣,我們可以使用混合了輸入補(bǔ)丁的位置嵌入。在我們的實驗中,我們沒有看到使用這些特性有什么好處,見附錄A。這一觀察結(jié)果表明,我們的交叉補(bǔ)丁子層提供了足夠的空間通信,參考絕對位置消除了任何形式的位置編碼的需要。

3.5遷移學(xué)習(xí)

我們評估從ResMLP架構(gòu)獲得的特征在轉(zhuǎn)移到其他領(lǐng)域時的質(zhì)量。目標(biāo)是評估由前饋網(wǎng)絡(luò)生成的特征是否更容易過度擬合訓(xùn)練數(shù)據(jù)分布。我們采用典型的設(shè)置,在ImageNet-1k上預(yù)先訓(xùn)練模型,并在與特定域相關(guān)聯(lián)的訓(xùn)練集中對其進(jìn)行微調(diào)。我們在表4中報告了不同體系結(jié)構(gòu)在各種圖像基準(zhǔn)上的性能,即CIFAR-10和CIFAR-100[34]、FLOWRS-102[42]、斯坦福汽車[33]和iNaturalist[27]。我們請讀者參閱相應(yīng)的參考文獻(xiàn),以獲得對數(shù)據(jù)集更詳細(xì)的描述。

我們觀察到,我們的ResMLP的性能與現(xiàn)有的體系結(jié)構(gòu)相比是有競爭力的,這表明具有足夠數(shù)據(jù)的預(yù)訓(xùn)練前饋模型和通過數(shù)據(jù)擴(kuò)充的正則化大大降低了它們在原始分布上過度擬合的傾向。有趣的是,這種正則化還可以防止它們在微調(diào)階段過度擬合較小數(shù)據(jù)集的訓(xùn)練集。

3.6機(jī)器翻譯

我們還評估了ResMLP轉(zhuǎn)置機(jī)制,以取代神經(jīng)機(jī)器翻譯系統(tǒng)的編碼器和解碼器中的自注意。我們按照Ott等人[45]的設(shè)置,對WMT 2014英德和英法任務(wù)的模型進(jìn)行培訓(xùn)。我們考慮尺寸為512的模型,其隱藏MLP大小為2048,并且具有6或12層。請注意,目前的技術(shù)狀態(tài)采用了更大的模型:我們的6層模型與Vaswani等人[60]中的基本Transformer模型更為相似,后者作為基線,以及諸如遞歸和卷積神經(jīng)網(wǎng)絡(luò)等預(yù)Transformer結(jié)構(gòu)。我們使用Adagrad,學(xué)習(xí)率為0.2,線性預(yù)熱32k步,標(biāo)簽平滑0.1,En-De和En-Fr的退出率分別為0.15和0.1。我們將LayerScale參數(shù)初始化為0.2。我們使用波束搜索算法生成平移,波束大小為4。如表5所示,結(jié)果至少與比較的架構(gòu)相當(dāng)。


4相關(guān)工作

我們回顧了應(yīng)用全連通網(wǎng)絡(luò)(FCN)解決計算機(jī)視覺問題的研究,以及與我們的模型共享公共模塊的其他體系結(jié)構(gòu)。

完全連接的圖像網(wǎng)絡(luò)。

許多研究表明,F(xiàn)CNs在數(shù)字識別[12,51]、關(guān)鍵詞識別[8]和手寫識別[5]等任務(wù)上與convnet具有競爭力。一些著作[37,40,59]質(zhì)疑FCN在自然圖像數(shù)據(jù)集(如CIFAR-10[34])上是否也具有競爭力。最近,d'Ascoli等人[14]已經(jīng)證明,用預(yù)訓(xùn)練convnet的權(quán)值初始化的FCN實現(xiàn)的性能優(yōu)于原始convnet。Neyshabur[41]通過從零開始訓(xùn)練FCN(但使用正則化器將模型限制為接近網(wǎng)絡(luò))來實現(xiàn)競爭性能,從而進(jìn)一步擴(kuò)展了這一工作范圍。這些研究是在小規(guī)模數(shù)據(jù)集上進(jìn)行的,目的是從樣本復(fù)雜性[18]和能源景觀[31]的角度研究建筑對泛化的影響。在我們的工作中,我們發(fā)現(xiàn),在ImageNet的大尺度環(huán)境中,F(xiàn)CNs可以在沒有任何約束和初始化的情況下獲得令人驚訝的精度。

最后,F(xiàn)CN網(wǎng)絡(luò)在計算機(jī)視覺中的應(yīng)用也出現(xiàn)在對無限寬網(wǎng)絡(luò)特性的研究[43],或?qū)δ嫔⑸鋯栴}的研究[32]。更有趣的是,張量化網(wǎng)絡(luò)[44]是非常大的FCN的近似值,與我們的模型相似,因為它們打算通過近似更一般的張量運算來去除先驗值,即,不沿著一些預(yù)定義的共享維度任意邊緣化。然而,他們的方法被設(shè)計成壓縮一個標(biāo)準(zhǔn)網(wǎng)絡(luò)的MLP層。

具有類似組件的其他體系結(jié)構(gòu)。

我們的FCN架構(gòu)與其他架構(gòu)共享多個組件,如convnets[35,36]或transformers[60]。完全連接層相當(dāng)于具有1的卷積層× 1個感受野,有幾項工作探索了具有小感受野的convnet架構(gòu)。例如,VGG模型[52]使用3×3卷積,以及更高版本的其他體系結(jié)構(gòu),如ResNext[63]或exception[11]mix1×1和3×3個卷積。與convnets不同的是,在我們的模型中,補(bǔ)丁之間的交互是通過一個在通道間共享的線性層獲得的,它依賴于絕對位置而不是相對位置。

最近,變形金剛已經(jīng)成為一種很有前途的計算機(jī)視覺架構(gòu)[10,17,46,56,67]。特別是,我們的架構(gòu)從Vision Transformer(ViT)[17]中使用的結(jié)構(gòu)中獲得靈感,因此共享許多組件。該模型以一組互不重疊的斑塊作為輸入,通過一系列與ViT結(jié)構(gòu)相同的MLP層,用一個線性斑塊交互層代替自注意層。與卷積層不同,這兩層都具有全局視野。而在自注意中,通過查詢和鍵來聚集來自其他補(bǔ)丁的信息的權(quán)重是數(shù)據(jù)相關(guān)的,而在ResMLP中,權(quán)重不是數(shù)據(jù)相關(guān)的,僅基于補(bǔ)丁的絕對位置。在我們的實現(xiàn)中,我們遵循DeiT[56]的改進(jìn)來訓(xùn)練視覺變換器,使用resnet[23]的跳過連接,并對層進(jìn)行預(yù)規(guī)范化[9,24]。

最后,我們的工作對現(xiàn)有架構(gòu)中自關(guān)注的重要性提出了質(zhì)疑。在自然語言處理中也有類似的觀察結(jié)果。值得注意的是,合成器[54]表明,點積自注意可以被前饋網(wǎng)絡(luò)所取代,在句子表示基準(zhǔn)上具有競爭力。與我們的工作相反,合成器確實使用依賴于數(shù)據(jù)的權(quán)重,但與轉(zhuǎn)換器不同的是,權(quán)重僅從查詢中確定。


5結(jié)論


在本文中,我們證明了一個簡單的殘差結(jié)構(gòu),其殘差塊由一個隱層前饋網(wǎng)絡(luò)和一個線性面片交互層組成,在ImageNet分類基準(zhǔn)上獲得了出乎意料的高性能,前提是我們采用現(xiàn)代培訓(xùn)策略,例如最近為基于Transformer的體系結(jié)構(gòu)引入的策略。由于它們的結(jié)構(gòu)簡單,以線性層作為主要的通信手段,我們可以將通過這個簡單的MLP學(xué)習(xí)的濾波器可視化。雖然其中一些層類似于卷積濾波器,但我們早在網(wǎng)絡(luò)的第二層就觀察到稀疏的長程相互作用。我們希望我們的無空間先驗?zāi)P陀兄谶M(jìn)一步了解先驗較少的網(wǎng)絡(luò)學(xué)習(xí)什么,并有可能指導(dǎo)未來網(wǎng)絡(luò)的設(shè)計選擇,而不是大多數(shù)卷積神經(jīng)網(wǎng)絡(luò)所采用的金字塔設(shè)計。


關(guān)于我們探索階段的報告


正如本文所討論的,我們設(shè)計一個剩余多層感知器的工作受到了視覺變換器的啟發(fā)。對于我們的探索,我們采用了最近的CaiT變體[57]作為起點。這種基于轉(zhuǎn)換器的體系結(jié)構(gòu)僅在Imagenettraining上實現(xiàn)了性能狀態(tài)(對于最佳模型,在Imagenet val上實現(xiàn)了86.5%的top-1精度)。最重要的是,隨著訓(xùn)練深度的增加,訓(xùn)練相對穩(wěn)定。


在我們的探索階段,我們的目標(biāo)是從根本上簡化這個模型。為此,我們考慮了更快迭代的Cait-S24模型。這個網(wǎng)絡(luò)由24層組成,工作尺寸為384。我們下面的所有實驗都是用分辨率為224的圖像進(jìn)行的×224和N=16× 16個補(bǔ)丁。經(jīng)過定期監(jiān)督培訓(xùn),Cait-S24在Imagenet上獲得82.7%的前1名。


SA→ MLP。


這種自關(guān)注可以看作是一個權(quán)值發(fā)生器,對值進(jìn)行線性變換。因此,我們的第一個設(shè)計修改是用一個殘差前饋網(wǎng)絡(luò)來代替自注意,該網(wǎng)絡(luò)以轉(zhuǎn)置的面片集而不是面片集作為輸入。換句話說,在這種情況下,我們將沿通道維度操作的剩余塊與沿面片維度操作的一些塊交替使用。在這種情況下,MLP代替了自注意,它由一系列操作組成


因此這個網(wǎng)絡(luò)在N和d上是對稱的。通過保持其他元素與CaiT相同,當(dāng)替換自注意層時,準(zhǔn)確率下降到80.2%(-2.5%)。


全班注意→ MLP類。


如果我們進(jìn)一步用MLP代替CaiT的類注意層,那么我們得到的無注意網(wǎng)絡(luò)在Imagenetval上的top-1準(zhǔn)確率為79.2%,與采用現(xiàn)代訓(xùn)練策略訓(xùn)練的ResNet-50相當(dāng)。這個網(wǎng)絡(luò)已經(jīng)成為我們后續(xù)燒蝕的基線。注意,在這個階段,我們?nèi)匀话↙ayerScale、類嵌入(在類MLP階段)和位置編碼。


蒸餾。

受Touvron等人[56]啟發(fā),用蒸餾法訓(xùn)練的同一模型達(dá)到81.5%。我們選擇的蒸餾變量對應(yīng)于“硬蒸餾”,其主要優(yōu)點是與香草交叉熵相比,它不需要任何參數(shù)調(diào)整。請注意,在我們所有的實驗中,這種蒸餾方法似乎帶來了一個增益,這是互補(bǔ)的,似乎幾乎正交于其他修改。

激活:圖層窗體→ 十。

我們在上述基于MLP的基線上嘗試了不同的激活,并保持了GeLU的準(zhǔn)確性和與Transformer選擇的一致性。

消融對通信MLP大小的影響。

對于取代課堂注意力的MLP,我們通過調(diào)整擴(kuò)展因子e,探索了不同大小的潛在層:線性N× e× N-格魯-線性e× N× N。在這個實驗中,我們使用平均池來聚集分類層之前的補(bǔ)丁。

我們觀察到在貼片通信中大的擴(kuò)展因子是有害的,可能是因為我們不應(yīng)該在這個剩余塊中引入太多的容量。這促使人們選擇采用尺寸為N的簡單線性層× N:在與上表相當(dāng)?shù)脑O(shè)置下,這隨后將性能提高到79.5%。此外,如前所示,此選項允許可視化補(bǔ)丁之間的交互。

正?;?/p>

在我們的MLP基線之上,我們測試了標(biāo)準(zhǔn)化層的不同變體。我們在下面報告性能的變化。

為了簡單起見,我們因此只采用Aff變換,以便不依賴于任何批處理或通道統(tǒng)計。

位置編碼。

在我們的實驗中,當(dāng)使用MLP或簡單線性層作為跨貼片嵌入的通信平均值時,移除位置編碼不會改變結(jié)果??紤]到線性層隱式地將每個面片標(biāo)識編碼為維度之一,并且另外線性層包括使得能夠在共享線性層之前區(qū)分面片位置的偏置,這并不奇怪。

12層網(wǎng)絡(luò)中交互層的分析


在本節(jié)中,我們將進(jìn)一步分析12層模型中的線性交互層。

在圖B.1中,我們考慮了在ImageNet-1k數(shù)據(jù)集上訓(xùn)練的ResMLP-S12模型,如第3.1節(jié)所述,并顯示了所有12個線性面片交互層。有監(jiān)督的12層模型中的線性交互層與圖2中24層模型中觀察到的類似。

我們還在圖B.2中為該模型提供了相應(yīng)的稀疏度測量值,類似于圖3中為監(jiān)督24層模型提供的測量值。監(jiān)督12層模型(左面板)中的稀疏度水平與監(jiān)督24層模型中觀察到的稀疏度水平相似,參見圖3。在圖B.2的右面板中,我們考慮了蒸餾12層模型的稀疏度水平,其總體上與監(jiān)督12層和24層模型中觀察到的稀疏度水平相似。

D附加燒蝕

訓(xùn)練配方。

DeiT[56]提出了一種訓(xùn)練策略,只允許在ImageNet上使用數(shù)據(jù)高效的視覺變換器。在表D.1中,我們燒蝕了神明訓(xùn)練的每個部分,回到最初的ResNet50訓(xùn)練。正如預(yù)期的那樣,ResNet-50論文[23]中使用的訓(xùn)練會降低性能。

培訓(xùn)時間表。

表D.2根據(jù)訓(xùn)練次數(shù)比較了ResMLP-S36的性能。我們觀察到ResMLP在800個周期后的性能飽和。這種飽和現(xiàn)象在400個時代的神身上觀察到。所以ResMLP需要更多的時間來達(dá)到最優(yōu)。

共享層。

表D.3比較了兩種池化層的性能:平均池化層和MLP級池化層,不同深度的蒸餾和不蒸餾。我們可以看到,類MLP通過只改變幾個flop和參數(shù)的數(shù)量,比平均池的性能要好得多。然而,這兩種方法之間的差距似乎隨著模型的深入而縮小。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

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

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