AS-MLP:上海科技&騰訊優圖開源首個檢測與分割領域MLP架構

點擊下方AI算法與圖像處理”,一起進步!

重磅乾貨,第一時間送達

標題&作者團隊

本文是上海科技大學在MLP架構方面的探索,它設計了一種軸向移位操作以便於進行空間信息交互。在架構方面,AS-MLP採用了類似PVT的分層架構,因爲可以輕易的遷移到下游任務。所提方法在ImageNet數據集上取得了優於其他MLP架構的性能,在COC檢測與ADE20K分割任務上取得了與Swin相當的性能。值得一提的是,AS-MLP是首個遷移到下游任務的MLP架構注:CycleMLP與AS-MLP屬於同一時期的工作,發到arxiv的時間也只差兩天,說兩者都是首個其實也可以。

paper: https://arxiv.org/abs/2107.08391

Code: https://github.com/svip-lab/AS-MLP

Abstract

本文提出了一種軸向移動架構AS-MLP(Axial Shifted MLP)用於不同的視覺任務(包含圖像分類、檢測以及分割)。不同於MLP-Mixer通過矩陣轉置+詞混疊MLP進行全局空域特徵編碼,我們在局部特徵通信方向投入了更多的關注。

通過軸向移動特徵信息,AS-MLP可以得到不同方向的信息流,這有助於捕獲局部相關性。該操作使得我們採用純MLP架構即可取得與CNN相同的感受野。我們還可以類似卷積核設置AS-MLP模塊的感受野尺寸以及擴張因子。如此簡單而有效的架構取得了優於其他MLP架構的性能,同時具有與Transformer架構(比如Swin Transformer)相當的性能,甚至具有稍少的FLOPs。比如,AS-MLP在ImageNet數據集上憑藉88M參數量+15.2GFLOPs取得了83.3%top1精度,且無需額外訓練數據。

此外,所提AS-MLP也是首個用於下游任務(如目標檢測、語義分割)的MLP架構。AS-MLP在COC驗證集上取得了51.5mAP指標,在ADE20K數據集上取得了49.5mIoU指標,具有與Transformer架構相當的性能。

Method

上圖給出了本文所提AS-MLP-Tiny架構示意圖,它以RGB圖像 作爲輸入,然後將其拆分爲非重疊 塊,此時得到尺寸爲 的詞。由於AS-MLP具有四個階段,每個階段具有不同數量的AS-MLP模塊。前述所得的所有詞將被送入送入到這四個階段,最終的輸出特徵將被用於分類。

階段1包含一個線性嵌入層與多個AS-MLP模塊,輸出詞的維度爲 ;階段2先進行塊合併將近鄰 塊進行合併得到尺寸爲 的詞,然後通過線性層映射爲 並後接多個AS-MLP模塊。階段3與階段4具有與階段2相似的結構。

AS-MLP Block

下圖給出了本文的核心模塊的架構示意圖,它主要包含Norm、Axial Shift操作、MLP以及殘差連接。在Axial Shift操作中,我們採用通道投影、垂直移動、水平移動提取特徵。

如上圖b所示,我們以水平移動進行說明。假設輸入尺寸爲 ,爲方便起見,我們忽略了h並假設 。當移動尺寸爲3時,輸入特徵被分爲三部分,每部分分別沿水平方向移動 步長。注:此時我們採用了“zero-padding”。垂直移動操作與水平移動非常類似。

通過水平移動與垂直移動,特徵可以進行了單一空間方向上的匯聚。在接下來的通道投影操作,兩個方向的信息將進行匯聚。下圖給出了本文所提AS-MLP實現code。

Comparisons between AS-MLP, Convolution, Transformer and MLP-Mixer

在這裏,我們將AS-MLP、卷積、Swin以及MLP-Mixer進行對比分析。儘管這些模型是從不同角度出發設計得到,但它們均基於給定輸出位置點,其值依賴於局部特徵的加權。這些採樣位置包含局部依賴與長距離依賴。

從上述對比圖可以看到:

  • 卷積是一種局部感受野的操作,更適合於提取具有局部依賴關係的特徵;
  • Swin同樣是一種局部感受野操作,Swin爲自注意力機制引入了局部性提升了Transformer架構的性能,同時也降低了計算複雜度;
  • MLP-Mixer是一種全局感受野操作,它僅僅由矩陣轉置與MLP操作構成;
  • AS-MLP是一種局部“十”字感受野操作,它可以更好的提取局部依賴關係。

Variants of AS-MLP Architecture

前面的Figure僅僅給出了Tiny版本的AS-MLP架構,參考DeiT與Swin,我們通過調整模塊數與通道數構建了不同大小的模型。

  • AS-MLP-T:C=96,模塊數: ;
  • AS-MLP-S:C=96,模塊數: ;
  • AS-MLP-B:C=128,模塊數: ;

Experiments

ImageNet Classification

上表給出了所提方法在ImageNet數據上的性能對比,從中可以看到:

  • 所提AS-MLP取得了比其他MLP架構更優的性能,同時具有相似的參數量與FLOPs;
  • AS-MLP-S取得了83.1%的top1精度同時具有比Mixer-B/16、ViP-Medium/7更少的參數量;
  • 此外,AS-MLP-B取得了與Swin相當的性能:83.3%。

此外,我們還對比了端側配置版本的AS-MLP,結果見上表。可以看到:在端側配置下,所提方法大幅超越了Swin Transformer。

COCO Detection

上表對比了COCO檢測任務上的性能對比,可以看到:

  • 所提AS-MLP是首個用於下游任務的MLP架構;
  • 所提AS-MLP取得了與Swin相當的性能。具體來說,在Cascade Mask R-CNN+Swin-B取得了51.9AP指標,參數量爲145M;而AS-MLP-B取得了51。5AP指標,參數量爲145M。

ADE20K Segmentation

上表給出了ADE20K分割任務上的性能對比,從中可以看到:

  • 所提AS-MLP同樣是首個用於分割任務的MLP架構;
  • AS-MLP-T取得了比Swin-T等有的性能,同時具有稍少FLOPs;
  • UperNet+Swin-B取得了49.7mIoU,參數量爲121M,計算量爲1188GFLOPs;而UperNet+AS-MLP-B取得了49.5mIoU,參數量121M,計算量爲1166GFLOPs。

Ablation Study

AS-MLP的核心是軸向移動,接下來我們將對其不同成分進行消融分析,所有試驗均基於AS-MLP-T實現。

上表對比了不同padding方式、不同移動尺寸以及不同擴展比例的性能對比,從中可以看到:

  • zero-padding更適合於AS-MLP設計;
  • 提升擴張因子會輕微降低模型性能;
  • 提升移動尺寸,模型精度會先上升後下降。
  • 基於上述分析,我們採用shift=5,zero-padding,dilation=1。

我們同時還比較了AS-MLP模塊的不同鏈接類型,結果見上表,從中可以看到:在不同移動尺寸下,並行連接總是具有比串行連接更佳性能

Comparsion with S2MLP

在初看到該文時,第一感覺這個與百度的那篇S2MLP(見下圖核心模塊)真的非常相似,都是採用了垂直、水平移位方式進行空間信息交互,而且還都是上下左右四個方向。可惜AS-MLP並未與S2MLP進行對比,反而比較晚(指的是見刊arxiv)的ViP進行的對比。

既然提到了,我們還是對S2MLP與ASMLP進行一下對比吧。

  • 在整體架構方面,AS-MLP採用了類似PVT的分層架構,而S2MLP一文則是採用了類似ViT的柱狀架構;
  • 在應用方面,AS-MLP即可應用於圖像分類,還可以遷移到下游任務中;而S2MLP則僅適用於圖像分類,並不適用下游任務;
  • 在覈心模型方面,AS-MLP採用並行垂直、水平移動,分別進行特徵匯聚後再進行特徵相加匯聚;而S2MLP則採用分組方式,不同組進行不同方向的移動,然後再進行空間信息匯聚;
  • 在模型性能方面,AS-MLP取得了與Swin相當的性能,比ViP更優的性能;而S2MLP的性能則弱於Swin與ViP;
  • 最後一點,AS-MLP開源了,但S2MLP並未開源。

努力分享優質的計算機視覺相關內容,歡迎關注:

  
      
      
      
個人微信(如果沒有備註不拉羣!
請註明: 地區+學校/企業+研究方向+暱稱



下載1:何愷明頂會分享


AI算法與圖像處理」公衆號後臺回覆:何愷明,即可下載。總共有6份PDF,涉及 ResNet、Mask RCNN等經典工作的總結分析


下載2:終身受益的編程指南:Google編程風格指南


AI算法與圖像處理」公衆號後臺回覆:c++,即可下載。歷經十年考驗,最權威的編程規範!




    
    
    
下載3 CVPR2021

AI算法與圖像處公衆號後臺回覆: CVPR 即可下載1467篇CVPR 2020論文 和 CVPR 2021 最新論文

點亮 ,告訴大家你也在看


    本文分享自微信公衆號 - AI算法與圖像處理(AI_study)。
    如有侵權,請聯繫 [email protected] 刪除。
    本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。

    發表評論
    所有評論
    還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
    相關文章