深度學習論文筆記(注意力機制)——CBAM: Convolutional Block Attention Module

主要工作

提出了一種具有注意力機制的前饋卷積神經網絡——Convolutional Block Attention Module(CBAM)

method

注意力機制是人類視覺所特有的大腦信號處理機制。人類視覺通過快速掃描全局圖像,獲得需要重點關注的目標區域,也就是一般所說的注意力焦點,而後對這一區域投入更多注意力資源,以獲取更多所需要關注目標的細節信息,而抑制其他無用信息[摘自深度學習中的注意力機制],作者希望CNN也能獲得此類能力,實際上,通過grad-CAM對CNN可視化,優秀的網絡結構往往能正確定位圖中目標所在區域,也即優秀的網絡本身就具有注意力機制,作者希望通過強化這一概念,讓網絡性能更加優異,並且對於噪聲輸入更加健壯

CNN的卷積操作從channel與spatial兩個維度提取特徵,因此,論文從channel與spatial兩個維度提取具有意義的注意力特徵,motivation如下:

  1. 由於每個feature map相當於捕獲了原圖中的某一個特徵,channel attention有助於篩選出有意義的特徵,即告訴CNN原圖哪一部分特徵具有意義(what)
  2. 由於feature map中一個像素代表原圖中某個區域的某種特徵,spatial attention相當於告訴網絡應該注意原圖中哪個區域的特徵(where)

CBAM將某一層的特徵圖抽取出來,接着進行channel attention與spatial attention的提取後,與原特徵圖進行結合作爲下一層卷積層的輸入,具體流程如下:
在這裏插入圖片描述

channel attention module

總體流程如下:
在這裏插入圖片描述
對輸入的特徵圖使用全局平均池化與全局最大池化,分別輸入到MLP中,將結果進行element-wise add,經過激活函數後輸出channel attention module,如下:
在這裏插入圖片描述
δ\delta表示sigmoid激活函數,設FF的大小爲CHWC*H*WW0W_0CrC\frac{C}{r}*C的矩陣,W1W_1CCrC*\frac{C}{r}的矩陣,Mc(F)M_c(F)大小爲CC,即FF的channel個數。

spatial attention module

總體流程如下:
在這裏插入圖片描述
沿着通道方向對特徵圖FF'施加全局平均池化與全局最大池化,將CHWC*H*W的特徵圖轉變爲2HW2*H*W的特徵圖,什麼是通道方向的全局池化呢?若特徵圖的大小爲CHWC*H*W,則池化層的大小爲C11C*1*1,即可得到1HW1*H*W的特徵圖。2HW2*H*W的特徵圖後接一個7卷積層,卷積大小通過實驗後確定爲7*7,得到1HW1*H*W的特徵圖,經過激活函數後輸出spatial attention module,如下:
在這裏插入圖片描述

如何結合spatial attention module與channel attention module

對原圖施加channel attention module,即在通道方向將channel attention module廣播爲CHWC*H*W大小的特徵圖後,與原特徵圖進行element-wise multiplication。
對原圖施加spatial attention module,即將1HW1*H*W的spatial attention module與CHWC*H*W大小的原特徵圖集合中的每一張特徵圖進行element-wise multiplication。

我們有三個策略:

  1. 先對原特徵圖施加channel attention module 後 spatial attention module
  2. 先對原特徵圖施加spatial attention module 後 channel attention module
  3. 分別對原特徵圖施加spatial attention module 與 channel attention module,將兩者進行element-wise add後用sigmoid函數激活後輸出

經過試驗,發現第一個策略效果最佳,試驗結果如下:
在這裏插入圖片描述
策略一的圖示如下,無需改變原神經網絡原有的參數(由於Input Feature與Refined Feature大小一致)
在這裏插入圖片描述
數學表示
在這裏插入圖片描述

實驗

在這裏插入圖片描述
數值上看,提升不大,個人認爲無注意力機制的網絡本身具有較好的focus目標的能力,因此從分類準確率上看不太出區別,但是使用grad-CAM可視化後,區別就出來了,如下:
在這裏插入圖片描述

顏色越深,表示神經網絡越注意該區域,可以看到,含有注意力機制的網絡注意到的目標相關區域更廣,並且softmax輸出的值也更大,這些特性是無法從分類準確率看出來的。

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