Attention機制和SE-net論文總結

我錄了一個講解視頻:https://www.bilibili.com/video/BV1SA41147uA/

 

Attention機制

注意力機制(Attention Mechanism)源於對人類視覺的研究。在認知科學中,由於信息處理的瓶頸,人類會選擇性地關注所有信息的一部分,同時忽略其他可見的信息。實現這一能力的原因是人類視網膜的不同部位具有不一樣的信息處理能力,即不同部分的敏銳度(Acuity)不同,人類視網膜中央凹部位具有最高的敏銳度。爲了合理利用有限的視覺信息處理資源,人類需要選擇視覺區域中的特定部分,然後重點關注它。例如人們在用電腦屏幕看電影的時候,會重點關注和處理電腦屏幕範圍內的視覺,而電腦屏幕外的視覺如鍵盤、電腦背景等等都會被忽視。

注意力機制最早用於自然語言處理領域(NLP),後來在計算機視覺領域(CV)也得到廣泛的應用,注意力機制被引入來進行視覺信息處理。注意力機制沒有嚴格的數學定義,例如傳統的局部圖像特徵提取、滑動窗口方法等都可以看作一種注意力機制。在神經網絡中,注意力機制通常是一個額外的神經網絡,能夠硬性選擇輸入的某些部分,或者給輸入的不同部分分配不同的權重。注意力機制能夠從大量信息中篩選出重要的信息。

在神經網絡中引入注意力機制有很多方法,以卷積神經網絡爲例,可以在空間維度增加引入attention機制(如inception網絡的多尺度,讓並聯的卷積層有不同的權重),也可以在通道維度(channel)增加attention機制,當然也有混合維度即同時在空間維度和通道維度增加attention機制,本文舉例說明attention機制的論文是獲得了2017年最後一屆ImageNet比賽圖像分類冠軍的SEnet模型(屬於卷積神經網絡CNN模型中的一種),該模型是在通道維度增加attention機制。

 

SE-net論文

SE-net模型發表的時間線
(1)最後一屆ImageNet 2017競賽圖像分類任務的冠軍,並被邀請在CVPR 2017 workshop中給出算法介紹
(2)在2018年的CVPR會議上發表
(3)在2019年IEEE Transactions on Pattern Analysis and Machine Intelligence期刊上發表

這篇論文就是通道維度(channel-wise)增加注意力機制,關鍵的兩個操作是squeeze和excitation,所以論文把這個attention結構命名爲SE block,SE block是爲了顯式地實現特徵通道的的相互依賴關係,就是說就是通過自動學習的方式(用另外一個新的神經網絡實現)獲取到每個特徵通道的重要程度,然後用這個重要程度去給每一個特徵通道賦予一個權重值,從而讓神經網絡重點關注某些特徵通道,即提升對當前任務有用的特徵通道並抑制對當前任務用處不大的特徵通道。

注意力機制的具體實現過程如上圖所示。給定一個輸入x,其特徵通道數爲C',通過一系列卷積等(Ftr)一般變換後得到一個特徵通道數爲C的特徵。與傳統的CNN不一樣的是,接下來通過三個操作來重標定前面得到的特徵。

第一個操作:Squeeze(Fsq),通過全局池化(global pooling),將每個通道的二維特徵(H×W)壓縮爲1個實數,論文是通過平均值池化的方式實現。這屬於空間維度的一種特徵壓縮,因爲這個實數是根據二維特徵所有值算出來的,所以在某種程度上具有全局的感受野,通道數保持不變,所以通過squeeze操作後變爲1×1×C。

 squeeze的公式:

第二個操作:excitation(Fex),通過參數來爲每個特徵通道生成一個權重值,這個權重值是如何生成就很關鍵了,論文是通過兩個全連接層組成一個Bottleneck結構去建模通道間的相關性,並輸出和輸入特徵同樣數目的權重值。

      

上面兩圖說明了這個SE block是如何嵌入到主流網絡(Inception和resnet)中的,Global pooling就是squeeze操作,FC + ReLu + FC + Sigmoid就是excitation操作,具體過程是首先通過一個全連接層(FC)將特徵維度降低到原來的1/r,然後經過ReLu函數激活後再通過一個全連接層(FC)生回到原來的特徵維度C,然後通過sigmoid函數轉化爲一個0~1的歸一化權重。

第三個操作:Scale(Fscale),將前面得到的歸一化權重加權到每個通道的特徵上。論文中的方法是用乘法,逐通道乘以權重係數,完成再通道維度上引入attention機制。

scale的公式:

 

實驗結果如下圖所示,證明了SENEt具有很強的能力。

補充說明與思考

(1)論文中對比了多種分類網絡加入和不加入SE block的效果,發現加入SE block的網絡模型都能取得更好的分類效果。SEnet的核心思想在於通過全連接網絡根據loss去自動學習特徵權重(而不是直接根據特徵通道的數值分佈來判斷),使得有效的特徵通道權重大。當然,SE block不可避免地增加了一些參數和計算量,但是在效果面前,這個性價比還是很高的。

(2)論文認爲在excitation操作中用兩個全連接層比直接用一個全連接層的好處在於:1)具有更多的非線性,可以更好地擬合通道間複雜的相關性;2)極大地減少了參數量和計算量。

 

文獻的三種來源地址:

Hu J, Shen L, Albanie S, et al. Squeeze-and-Excitation Networks[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2019: 1-1.

Hu J, Shen L, Sun G, et al. Squeeze-and-Excitation Networks[C]. computer vision and pattern recognition, 2018: 7132-7141.

Hu J, Shen L, Sun G, et al. Squeeze-and-Excitation Networks[J]. arXiv: Computer Vision and Pattern Recognition, 2017.

 

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