博客專欄

EEPW首頁 > 博客 > 注意力可以使MLP完全替代CNN嗎?未來有哪些研究方向?

注意力可以使MLP完全替代CNN嗎?未來有哪些研究方向?

發(fā)布人:數(shù)據(jù)派THU 時(shí)間:2021-06-15 來源:工程師 發(fā)布文章

以下文章來源于深度學(xué)習(xí)技術(shù)前沿 ,作者murufeng

1.jpg

論文鏈接:https://arxiv.org/abs/2105.15078

[ 導(dǎo)讀 ]本文主要介紹清華大學(xué)胡事民團(tuán)隊(duì)最新發(fā)表在Arxiv上的研究論文,主要針對(duì)注意力可以使得MLP架構(gòu)追趕甚至替代CNN嗎?以及未來又有哪些研究方向可以做呢?這兩個(gè)問題給出了一些回答和展望。

在2021年5月份,谷歌,清華大學(xué),牛津大學(xué),F(xiàn)acebook等四大著名研究機(jī)構(gòu)都不約而同的分享了它們的最新成果,它們都提出了一種新的學(xué)習(xí)架構(gòu),主要由線性層組成,聲稱它們基本可以比擬甚至優(yōu)于CNN模型。這在學(xué)術(shù)界和工業(yè)界立即引發(fā)了關(guān)于 MLP 是否足夠的討論和辯論,許多人認(rèn)為學(xué)習(xí)架構(gòu)正在回歸 MLP。這是真的嗎?

因此,本文從這個(gè)角度出發(fā),我們將簡(jiǎn)要介紹了網(wǎng)絡(luò)架構(gòu)的歷史,包括多層感知器 (MLP)、卷積神經(jīng)網(wǎng)絡(luò) (CNN) 和Transformer。 最后我們將詳細(xì)比較最新提出來的MLP架構(gòu)之間的區(qū)別與共性。然后就目前MLP網(wǎng)絡(luò)架構(gòu)面臨的挑戰(zhàn),提出了一些新的視角和方向,希望能激發(fā)大家后面的研究。

簡(jiǎn)介:多層感知器 (MLP)主要由輸入層和輸出層組成,中間可能有多個(gè)隱藏層。每層之間通常利用線性變換和激活函數(shù)進(jìn)行完全連接。在深度卷積神經(jīng)網(wǎng)絡(luò) (DCNN) 興起之前,MLP 是神經(jīng)網(wǎng)絡(luò)的基礎(chǔ),極大地提高了計(jì)算機(jī)處理分類和回歸問題的能力。然而,由于MLP擁有大量參數(shù),計(jì)算成本高且容易過度擬合,而且因?yàn)閷又g的線性變換總是將前一層的輸出作為一個(gè)整體,所以MLP在捕獲輸入特征圖中的局部特征結(jié)構(gòu)的能力較弱。但是,因?yàn)楫?dāng)時(shí)的計(jì)算機(jī)算力和性能比較有限,無法獲得大量的數(shù)據(jù)進(jìn)行訓(xùn)練。所以,MLP 的功能在提出時(shí)并沒有得到充分探索。

之后,隨著LeNet的提出,利用五層卷積神經(jīng)網(wǎng)絡(luò)大大提高了手寫數(shù)字識(shí)別的準(zhǔn)確性。后來,AlexNet的提出使得CNN得到了廣泛的認(rèn)可: 它比LeNet模型更大,并在ImageNet2012大型視覺識(shí)別挑戰(zhàn)賽中在以顯著的優(yōu)勢(shì)擊敗所有其他競(jìng)爭(zhēng)對(duì)手。從此時(shí)起,開發(fā)了具有更深層次架構(gòu)的模型便成為了主流,其中許多優(yōu)化的模型在許多領(lǐng)域已經(jīng)取得了比人類更準(zhǔn)確的效果,繼而CNN在科學(xué)研究、工程和商業(yè)應(yīng)用中產(chǎn)生了深刻的范式變化。然而,撇開計(jì)算能力和訓(xùn)練數(shù)據(jù)量方面的進(jìn)步,CNN的成功關(guān)鍵在于它們引入的inductive bias (歸納偏差)即:它們假定信息具有空間局域性,因此可以利用具有共享權(quán)值的滑動(dòng)卷積核來減少網(wǎng)絡(luò)參數(shù)的數(shù)量。然而,這種方法的副作用是,降低了CNN的receptive fields(感受野),從而就降低了CNN學(xué)習(xí)長期依賴的能力。為了擴(kuò)大感受野,就需要使用更大的卷積核,或者必須使用其他特殊策略,如dilated convolutions。

最近,在自然語言處理方面提出的Transformer結(jié)構(gòu)取得了巨大成功,最近它又在視覺任務(wù)上取得了較大的效果。而注意力機(jī)制又是Transformer的核心,它能夠很容易地以注意力特征圖的形式學(xué)習(xí)輸入數(shù)據(jù)中任意兩個(gè)位置之間的長期依賴關(guān)系。然而,這種額外的自由度和減少的inductive bias意味著有效地訓(xùn)練基于transformer的架構(gòu)需要大量的數(shù)據(jù)。因此,為了獲得最好的結(jié)果,這些模型應(yīng)該首先需要在一個(gè)非常大的數(shù)據(jù)集上進(jìn)行預(yù)訓(xùn)練,比如GPT-3和ViT。

為了避免上述學(xué)習(xí)體系結(jié)構(gòu)的缺點(diǎn),并以更低的計(jì)算成本獲得更好的結(jié)果,最近,四種基于MLP的網(wǎng)絡(luò)結(jié)構(gòu)幾乎同時(shí)被提出。它們的共同目標(biāo)是充分利用線性層來提取特征信息。我們?cè)谙旅鎸⒅饕偨Y(jié)這些架構(gòu);這四種方法都采用了transposition的方法來實(shí)現(xiàn)所有尺度上的交互,然后也使用了殘差連接和正則化的方法來確保訓(xùn)練的穩(wěn)定性。

每個(gè)網(wǎng)絡(luò)結(jié)構(gòu)的主要區(qū)別

2.jpg

MLP-Mixer

3.jpg

MLP-Mixer首先將個(gè)分辨率為不重疊的image patches,作為輸入,每個(gè)patch首先通過一個(gè)共享權(quán)重的線性層投射到一個(gè)c維嵌入空間:因此,輸入圖像的表示是一個(gè)矩陣,。接下來,X被送入一系列相同的mixer layers,每個(gè)mixer layer 由一個(gè)token-mixing MLP塊和一個(gè)channel-mixing MLP塊組成,分別混合來自所有patch和所有通道的信息。我們可以將計(jì)算表示為:

4.png

其中、···、為線性層,為GELU(非線性)激活函數(shù)。采用layer mormalization。代表每次通道特征聚合后的中間矩陣:x中列向量的共享權(quán)重映射。同樣,每個(gè)patch進(jìn)行兩次線性變換,得到輸出。

External Attention

5.jpg

External Attention揭示了自我注意力與線性層的關(guān)系。首先將自注意力簡(jiǎn)化為如下方程,其中 代表輸入特征圖。

6.png

然后引入外部存儲(chǔ)單元,將M-to-M注意替換為M-to-M注意,如下所示:

7.png

最后,像self-attention一樣,它使用兩種不同的記憶單元和作為key和value來增強(qiáng)網(wǎng)絡(luò)的能力。外部注意的總體計(jì)算如下:

8.png

又因?yàn)槭蔷仃囅喑?,它在中是線性的,因此又可以寫作:

最后的輸出可以表示為:

9.png

基于external attention,Guo等人還設(shè)計(jì)了一個(gè)multi-head external attention ,實(shí)現(xiàn)了一個(gè)名為EAMLP的全MLP體系結(jié)構(gòu)。

Feed-forward-only Model

10.jpg

Feed-forward-only Model將Transformer中的注意力層替換為token維度上的簡(jiǎn)單前向反饋層。它首先在通道維度上使用線性層,然后在一個(gè)線性塊的token維度上使用線性層。給定輸入,詳細(xì)計(jì)算可表示為:

11.png

ResMLP

12.jpg

ResMLP也分別以per-patch和per-channel的方式來對(duì)信息進(jìn)行聚合,具體可以表述為:

13.png

ResMLP的一個(gè)主要區(qū)別是,它在規(guī)范化層的角色中使用仿射轉(zhuǎn)換。這個(gè)仿射變換由兩個(gè)可學(xué)習(xí)的參數(shù)向量,他們可以對(duì)輸入的組成進(jìn)行縮放和移動(dòng):

14.png

請(qǐng)注意,上面沒有使用輸入的統(tǒng)計(jì)信息,因此可以在推理期間將其集成到線性層中以提高速度。

MLP結(jié)構(gòu)的共性

Long distance interactions

跟Self-attention一樣,這四種方法考慮了不同patch之間的交互作用。MLPMixer、ResMLP和基于僅使用前向反饋的模型,都是使用線性層作用于Token 維度上,從而來實(shí)現(xiàn)以允許不同的patch之間的信息交互。External attention采用softmax和L1歸一化來發(fā)揮類似的作用。與神經(jīng)網(wǎng)絡(luò)不同的是,這些模型主要考慮patch之間的長距離交互,從而來自動(dòng)選擇合適的和不規(guī)則的感受野大小。

Local semantic information

與自然語言中的獨(dú)立單詞不同,單個(gè)像素只有很少的語義信息,它們與其他像素的交互不能直接提供信息。因此,在使用mlp之前,我們需要提取有意義的語義信息。MLP-Mixer、ResMLP和forward - only模型將圖像分割成16 × 16個(gè)局部patch來獲取語義信息。External attention采用T2T模塊或CNN骨干,在將信息傳遞到線性層之前提供豐富的語義信息。

Residual connections

殘差連接解決了梯度消失的問題,可以使訓(xùn)練過程相對(duì)穩(wěn)定,因此它們通常用于深度卷積神經(jīng)網(wǎng)絡(luò)。它們還有利于基于線性層的體系結(jié)構(gòu)構(gòu)造,因此被上述所有模型所采用。

Reduced inductive bias

神經(jīng)網(wǎng)絡(luò)的局部化處理會(huì)導(dǎo)致歸納偏差,當(dāng)訓(xùn)練數(shù)據(jù)足夠多時(shí),會(huì)降低準(zhǔn)確率。最近引入的MLP體系結(jié)構(gòu)在單個(gè)token上獨(dú)立使用線性層,或一起同等的地處理所有token,從而可以降低歸納偏差。

一些挑戰(zhàn)和新的方向

這些新引入的體系結(jié)構(gòu)具有簡(jiǎn)單的網(wǎng)絡(luò)結(jié)構(gòu)和快速的推理吞吐量。然而,在ImageNet上,他們的結(jié)果目前比最好的cnn或Transformer網(wǎng)絡(luò)提供的結(jié)果低5-10%。在準(zhǔn)確性和速度之間的權(quán)衡上,它們也沒有明顯優(yōu)于輕量級(jí)網(wǎng)絡(luò)。因此,如果要實(shí)現(xiàn)這種結(jié)構(gòu)的潛力,還需要更多的研究。

所有的線性層都采用一種直接或間接地方式來處理圖像patch,提取局部特征,從而降低計(jì)算代價(jià)。將圖像分割成不重疊的patches再次引入歸納偏差。一方面,CNN能很好地捕捉局部結(jié)構(gòu),但缺乏處理遠(yuǎn)距離交互作用的能力。另一方面,這四個(gè)體系結(jié)構(gòu)提供了一種處理遠(yuǎn)程交互的好方法,因此我們可以很自然的將兩種架構(gòu)的優(yōu)點(diǎn)結(jié)合起來。

這四種方法的主要目的之一是避免使用self-attention。但我們卻可以將Transformer的一些有效配置應(yīng)用到這些線性體系結(jié)構(gòu)。例如,Transformer可以使用多頭注意力,那么基于MLP的網(wǎng)絡(luò)結(jié)構(gòu)同樣也可以使用類似的多頭機(jī)制來提高模型的能力。

殘差連接在所有這些方法中都起著關(guān)鍵作用,這表明網(wǎng)絡(luò)結(jié)構(gòu)至關(guān)重要。因?yàn)檫@些新架構(gòu)比CNN簡(jiǎn)單,所以需要更好的主干(因此,我們可以設(shè)計(jì)更好地主干網(wǎng)絡(luò)模型)。

由于這些新架構(gòu)的簡(jiǎn)單性,它們可以輕松處理不規(guī)則的數(shù)據(jù)結(jié)構(gòu),包括點(diǎn)云、圖表等,在各種應(yīng)用中使用。此外,這種靈活性保證了建立跨模態(tài)處理的模型的能力,并為所有模式的數(shù)據(jù)提供一個(gè)通用的網(wǎng)絡(luò)主干。

MLP機(jī)制一個(gè)額外的好處是,所有的計(jì)算都是矩陣乘法,可以在深度學(xué)習(xí)框架中高度優(yōu)化,并易于執(zhí)行硬件。這種簡(jiǎn)單性可以促進(jìn)工業(yè)和商業(yè)的部署,也可以減少資源消耗。

總結(jié)

總的來說,新的體系結(jié)構(gòu)分別在element(token)維度和通道維度上應(yīng)用線性層來學(xué)習(xí)和實(shí)現(xiàn)特征矩陣中任意兩個(gè)位置之間的遠(yuǎn)程交互,而傳統(tǒng)的MLPs將這兩個(gè)維度混合在一起作為一個(gè)長向量,從而使得他們之間的有效交互學(xué)習(xí)變得更加自由。我們的結(jié)論是,新的體系結(jié)構(gòu)不應(yīng)當(dāng)是簡(jiǎn)單地重用傳統(tǒng)mlp,而是對(duì)傳統(tǒng)mlp的重大改進(jìn)。

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

電子負(fù)載相關(guān)文章:電子負(fù)載原理


關(guān)鍵詞: 深度學(xué)習(xí)

相關(guān)推薦

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

關(guān)閉