google、楚天大學、清華大學等國際大學對影象分類中的重定位研究結論!

機器之心分析師網路

作者:Angulia Chao

編輯:H4O

近期 Google brain、Oxford、清華大學等研究機構分別發表了自己對多層感知機(MLP)在視覺分類中起到作用的重定位,引起了廣泛的學界思考。

影象分類(image classification)一直都是計算機視覺研究中非常基礎且重要的一類任務,在深度學習為主導的近十年中已經普遍繼承了通用卷積神經網路(CNN)的基本正規化,大部分思路多著眼於不同網路模型的設計和模組創新,少有直接對卷積神經網路本身既定框架的顛覆性工作。Transformer 在自然語言處理任務上獲得成功之後,注意力機制(attention)在視覺任務方向也獲得很多關注和應用,它們中的大多數工作也被認為是十分有效的效能提升部分。

然而近期 Google brain, Oxford, 清華大學等研究機構分別發表了自己對多層感知機(MLP)在視覺分類中起到作用的重定位,引起了廣泛的學界思考:深度學習網路是否經歷了從 CNN 開始一系列的主幹變化之後,重新收斂於普通簡明的多層 MLP 正規化了?MLP 框架是否存在普適性,潛在的科研和商用價值有多高?新的框架提出又會對之後的視覺研究和技術應用提供哪些潛在的可能性和創新啟發呢?

本文基於以上的問題,結合作者最近讀過的上述三篇 MLP 論文,單對神經網路模型相關的影象分類任務做一個簡單的發展梳理,之後針對近期提出的三篇論文,將其所提到的方法進行概述和觀點提煉,並嘗試總結此類研究所帶來的的意義和未來潛力。

0. 神經網路影象分類發展簡述

其實早在 20 世紀,使用神經網路進行影象分類就有 Neocognitron,ConvNet,以及 LeNet 等早期的雛形,如 LeNet 非常有效地完成了受限於數字識別的任務,且卷積的概念也早早出現,然而因為計算機算力的不足在較長一段時間內並沒有取得更多的進展。

大部分人更加熟悉的在於 2012 年 AlexNet 利用 GPU 在當年的視覺影象分類挑戰賽(ImageNet)上取得了非常驚人的 Top-1 準確度,之後以卷積層為正規化的卷積神經網路(CNN)發展出多種經典模型。

google、楚天大學、清華大學等國際大學對影象分類中的重定位研究結論!

在 2014 到 2017 年間,Inception, ResNet, VGG 等模型均達到了非常好的 SOTA 效能,其設計的小卷積核感受野,多路跨層連結等等模組設計都被證明非常的有效。在很長一段時間內 CNN 作為骨幹是處理深度視覺任務的不二之選,可參考下圖各個經典 CNN 網路模型的提出和演變過程:

google、楚天大學、清華大學等國際大學對影象分類中的重定位研究結論!

接下來便是 2017 年附近,人們發現注意力機制在捕捉及加強視覺特徵提取過程中也非常有效,並有了少量工作進行嘗試。2018 年左右,本用於自然語言處理的 Transofmer 被發現其在視覺分類等等任務方面也有非常強的可遷移性,於是 Transformer 成為了近兩年來炙手可熱的視覺研究主題,人們前所未有的關注影象區域性塊之間的上下文關係,將卷積網路時期的感受野學習進一步改善為特徵或影象塊之間的關聯學習。注意力相關的工作也有了井噴式發展,比如 Vit[9], Deit[10] 就是最初有效融合 Transformer 思想的工作,DeepViT[11] 則是嘗試混合多個注意力模組(attention head mixing),CaiT[12]將原 Transformer 中的注意力層分化為兩個階段進行學習,CrossViT[13],PiT[14],LeViT[15],CvT[16]以及其他更多相關工作都把 Transformer 對於全域性長依賴捕捉的優點更近一步發揚,且嘗試與之前的 CNN 中被證明非常有效的模組如池化(pooling)相結合,引領了 CNN 之後的另一輪模型革新潮流。

1. 注意力是分類效能的保障嗎?

Do You Even Need Attention? A Stack of Feed-Forward Layers Does Surprisingly Well on ImageNet

在引入當前激烈討論的 MLP-Mixer 模型之前,我們首先來看這篇牛津大學的 4 頁研究報告,一定程度上它簡明地回答了一個問題:注意力機制是保障影象分類任務效能的關鍵嗎?我們知道自從 Transformer 被證明在視覺任務上同樣可行後,許多視覺相關的任務也隨之應用該正規化,且普遍都將效能提升歸功於注意力機制,聲稱注意力機制為網路引入了全域性感受野(global receptive field),並在不同的工作中致力於提升注意力模組的效率及有效性。於是該文章在 ImageNet 資料集上做了一個 “嚴格控制變數” 的影象分類實驗:在不改動注意力分類網路其他結構和引數設定的情況下,單純將每個注意力網路層替換為一個簡單的前傳網路層(feed-forward layer),由此原先的 Transformer 模型可被看為由多層前傳網路層構成的一個 MLP 分層網路,如左下圖所示。

google、楚天大學、清華大學等國際大學對影象分類中的重定位研究結論!

在實驗部分,論文作者採用了目前 Transformer 分類器中的代表作 ViT 以及 DeiT,繼承其所有的模型結構與超參設定,並依據 ViT,Deit 的 Tiny, Base, Large 三個網路結構,在 ImageNet 資料集上訓練了三個 feed-forward only 模型(FF only)。參照右上圖訓練結果,Tiny 網路中 FF only 模型表現相比於 attention 模型,引數數目較多的情況下效能也並不佔優。然而當模型增大為 Base 與 Large 時,僅有前傳層的 FF only 表現就非常的驚豔了,在引數數目相比也較少的情況下,純前傳層構成的 MLP 模型 FF only 取得了幾乎持平甚至佔優的 Top-1 分類精確度,這從側面也說明了

MLP 模型在較複雜較大的網路中有不俗的表徵能力

為了更加公平的比較,論文作者也試圖將所有前傳層都替換為注意力層,類比實現一個 attention only 的模型來進一步探究注意力機制的表現力,然而注意力網路在 tiny 模型上訓練了 100 個 epochs 之後也只能達到 28。2% 的 top-1 準確度。由以上實驗,論文作者推斷一個好的 Transformer 分類器並不一定需要注意力模組來保障效能,可能是圖片塊的對映嵌入(embedding)或者 Transformer 本身自成體系的訓練流程保證了效能的優越性。

下圖附上 FF only 模型中替換注意力模組的線性前傳模組,可以看出實現直觀簡單,感興趣的讀者同樣可以根據此做更多的擴充套件性探索和實驗。

google、楚天大學、清華大學等國際大學對影象分類中的重定位研究結論!

總體來說這篇文章提出的問題非常鮮明,提出的論證過程本身也非常有趣。論證的過程雖然實驗設定相對有限,但也在一定程度上回答了開頭的疑問:特定的注意力模組並不一定就是效能保證,同時文章非常吸引人的一點在於,它為業界指出了一種可能性:當你面臨較大模型的需求時,根據實驗中 MLP 模型的表現力來看,它很有可能成為一個保證效能同時節省效能的不錯替代方案。

2. MLP 有望成為新的視覺正規化

MLP-Mixer: An all-MLP Architecture for Vision

透過牛津大學的文章我們瞭解到多層感知機(MLP)的表現能力不俗,在替換了視覺 Transformer 模型中的注意力模組之後依然能夠實現優秀的分類效能,而被持續關注多時的注意力模組似乎並不能獨當一面——在單獨存在時作為一種新的計算正規化去支撐一個高精度的模型,其本身也更多還是依託於一個好的骨幹模型。谷歌大腦近期提出的 MLP-Mixer 就更進一步,讓我們看到 MLP 模型完全有機會成為與傳統卷積網路(CNN),Transformer 之後的下一種視覺研究正規化。

自從深度學習興起,它一直傾向於直接從原始資料中學習所需要的視覺特徵,儘可能避免認為構造特徵或設定歸納偏置, CNN 一直預設為此種學習思想下的一種標準,一兩年前視覺的 Transformer 取得了 SOTA 的成績,成為了另一個可選項。不同於前兩者,谷歌提出的 MLP-Mixer 結構完全摒棄了卷積或是注意力機制,完全基於多層感知機結構,只依賴基礎的矩陣相乘,重複地在空間特徵或者通道特徵上計算抽取。

MLP-Mixer 的結構如下圖所示:

google、楚天大學、清華大學等國際大學對影象分類中的重定位研究結論!

首先將大小為 HxW 的的輸入影象切割為不重合的 S 個小方塊(Patch),每個方塊的解析度均為 PxP,隨之所有影象方塊經過統一的線性對映變為隱藏維度是 C 的張量,由此輸入 MLP-Mixer 的資料就轉換為一個維度 SxC 的二維矩陣表 X,X 在之後的計算流程會經過多個 Mixer 層,其包含兩類 MLP 計算層:a。token-mixing MLPs 和 b。channel-mixing MLPs, X 首先透過 token-mixing MLP 計算不同方塊張量之間的聯絡,獲得特徵 U,之後再經過 channel-mixing MLPs 來計算通道之間的特徵 Y:

google、楚天大學、清華大學等國際大學對影象分類中的重定位研究結論!

在模型的最後 MLP-Mixer 也接了一個常見的全連線分類模組,來完成最終的類別預測。除此之外,MLP-Mixer 由於採用的 token-mixing MLP,導致它並不需要輸入圖片的位置編碼資訊,本身就對每個影象塊的位置有了一定的敏感度,同時其採用的引數繫結(parameter tying) 也使得引數體量能夠大幅度的減少。

實驗部分作者採用了三個規格的模型大小分別為 base(B),large(L), huge(H), 對應的 MLP-Mixer 模型不僅在 ImageNet 與 JFT-300M 這幾個大資料集上進行了 pre-train,也同時透過在中小資料集上微調(fine-tune)來進一步測試 MLP-Mixer 的遷移學習能力。與此同時與 MLP-Mixer 對比的模型均為 CNN 類別或者 Transformer 類別中實現 SOTA 效能的模型,例如 HaloNet,ViT。

google、楚天大學、清華大學等國際大學對影象分類中的重定位研究結論!

透過實驗結果彙總,也可以看出無論是預訓練或是微調遷移,MLP-Mixer 雖然沒有能達到 SOTA 的精度,但是各方面已經可以與當今的兩個主流 SOTA 模型相當,同時在效率吞吐方面也存在著不錯的優勢。

google、楚天大學、清華大學等國際大學對影象分類中的重定位研究結論!

更進一步,文章將每個輸入圖片方塊的權重進行了視覺化,可以觀察的出來由粗到細、由輪廓到慢慢具象化的一個演變過程其實與 CNN 中提取視覺特徵的過程也是有異曲同工之妙的。

google、楚天大學、清華大學等國際大學對影象分類中的重定位研究結論!

總的來說,這篇文章提出了一個非常新穎但是有效的網路結構,涉及的方法理論並不複雜且模型結構直觀,實驗全面詳實,是一篇非常有啟發性的的 MLP 分類開山之作。尤其需要指出的是,在 MLP-Mixer 的結構描述中,對於如何設定各個 MLP 模組的順序,以及如何進行影象對映,包括同樣沿用了一個非常經典的 skip-connection 結構等方面看,是否也從某個側面呼應了第一篇中 FF only 的部分猜想:怎樣進行特徵的嵌入對映,與一個合理的訓練計算流程,或許才是一個高精度模型背後的支撐面。

從學術研究的角度看,MLP-Mixer 的提出啟發更多學者關注到 MLP 網路結構是有潛能成為繼 CNN,Transformer 之後的第三種正規化的,更加先進有效的網路結構甚至微調延伸,也會不斷出現並幫助完善這個研究分支。工業化部署的方面看,MLP 模型也確實為不少在效能和效率的 trade-off 之間掙扎的企業和工程師提供了新的思路,儘管目前的 MLP-Mixer 並不是精確度最優的解,但是其在效率利用甚至記憶體節省方面似乎看起來會比注意力機制為主的 Transformer 有更多的想象空間。

希望詳細瞭解 MLP-Mixer 計算細節的讀者可以參考我們之前的文章[7],[8]。

3. MLP 與 CNN 的結合

RepMLP: Re-parameterizing Convolutions into Fully-connected Layers for Image Recognition

清華的這篇 RepMLP 是一種 MLP 與 CNN 進行結合的新嘗試,它嘗試將各自網路模組的優勢進行混合來實現更好的效能提升,並不限於分類,而是在多個視覺任務方面都給了我們一些全新的啟發。已知全連線層通常來說更加擅長於建立特徵的長依賴關係與空間關係,但是並不擅長於捕捉區域性的特徵或模式識別,這也一定程度上解釋了 ViT 之類的模型為何需要數量更加龐大的訓練集或者充分的資料擴增(data augmentation),二者都有類似難以建立區域性特徵的毛病。於是文章提出了 RepMLP,模型主體利用多層神經網路提取長期依賴關係與空間資訊,同時利用結構化的重引數化(re-parameterization),在網路訓練時候將多個卷積模組與全連線並行,用其抽取對應的區域性先驗知識並最後進行資訊融合彙總。且 RepMLP 還巧妙地利用重引數化將推理時的引數與訓練時的引數進行了再度轉化,從而實現推理模型精簡的目的。

RepMLP 模型總的來說並不複雜可參考其結構圖如下:

google、楚天大學、清華大學等國際大學對影象分類中的重定位研究結論!

TAG: MLP模型MixerTransformer注意力