深度學習中的attention,源自於人腦的注意力機制,當人的大腦接受到外部資訊,如視覺資訊、聽覺資訊時,往往不會對全部資訊進行處理和理解,而只會將注意力集中在部分顯著或者感興趣的資訊上,這樣有助於濾除不重要的資訊,而提最早將attention利用在影象處理上的出發點是,希望通過乙個類似於人腦注意力的機制,只利用乙個很小的感受野去處理影象中attention的部分,降低了計算的維度。而後來慢慢的,有人發現其實卷積神經網路自帶attention的功能,比方說在分類任務中,高層的feature map所啟用的pixel也恰好集中在與分類任務相關的區域,也就是salience map,常被用在影象檢測和分割上。那麼如何利用attention來提公升模型在分類任務上的效能呢?本文提供了一種新的思路公升資訊處理的效率
1.提出了一種可堆疊的網路結構。與resnet中的residual block類似,本文所提出的網路結構也是通過乙個residual
attention module的結構進行堆疊,可使網路模型能夠很容易的達到很深的層次。
2.提出了一種基於attention的殘差學習方式。與resnet也一樣,本文做提出的模型也是通過一種殘差的方式,使得非常深的模型能夠容易的優化和學習,並且具有非常好的效能。
3.bottom-up top-down的前向attention機制。其他利用attention的網路,往往需要在原有網路的基礎上新增乙個分支來提取attention,並進行單獨的訓練,而本文提出的模型能夠就在乙個前向過程中就提取模型的attention,使得模型訓練更加簡單。
從上面前兩點依然發現本文所提出的方法和resnet沒多大的區別,但是把1、2、3點融合起來,就成了本文的乙個亮點,請看:
上圖中,對於某一層的輸出feature map,也就是下一層的輸入,對於乙個普通的網路,只有右半部分,也就是trunk branch,作者在這個基礎上增加了左半部分:soft mask branch——乙個bottom-up top-down的結構。
bottom-up top-down的結構首先通過一系列的卷基和pooling,逐漸提取高層特徵並增大模型的感受野,之前說過高層特徵中所啟用的pixel能夠反映attention所在的區域,於是再通過相同數量的up sample將feature map的尺寸放大到與原始輸入一樣大,這裡的upsample通過deconvolution來實現,可以利用bilinear interpolation 也可以利用deconvolution自己來學習引數,可參考fcn中的deconvolution使用方式),這樣就將attention的區域對應到輸入的每乙個pixel上,我們稱之為attention map,bottom-up top-down這種encoder-decoder的結構在影象分割中用的比較多,如fcn,也正好是利用了這種結構相當於乙個weakly-supervised的定位任務的學習。
接下來就要把soft mask branch與trunk branch的輸出結合起來,soft mask branch輸出的attention map中的每乙個pixel值相當於對原始feature map上每乙個pixel值的權重,它會增強有意義的特徵,而抑制無意義的資訊,因此,將soft mask branch與trunk branch輸出的feature map進行element-wised的乘法,就得到了乙個weighted attention map。但是無法直接將這個weighted attention map輸入到下一層中,因為soft mask branch的啟用函式是sigmoid,輸出值在(0,1)之間(之所以這麼做,我認為是不希望給前後兩層的feature map帶來太大的差異和擾動,其次能夠進一步的抑制不重要的資訊),因此通過一系列這樣的乘法,將會導致feature map的值越來越小,並且也可能打破原始網路的特性,當層次極深時,給訓練帶來了很大的困難。其中m(x)為soft mask branch的輸出,f(x)為trunk branch的輸出,那麼當m(x)=0時,該層的輸入就等於f(x),因此該層的效果不可能比原始的f(x)差,這一點也借鑑了resnet中恒等對映的思想,同時這樣的加法,也使得trunk branch輸出的feature map中顯著的特徵更加顯著,增加了特徵的判別性。這樣,優化的問題解決了,效能的問題也解決了,因此通過將這種殘差結構進行堆疊,就能夠很容易的將模型的深度達到很深的層次,具有非常好的效能。
注意力機制
從網路結構本身的角度出發,可以從以下四個維度來提公升卷積神經網路的效能,分別是 深度 resnet 寬度 wideresnet 基數 resnext 和注意力 senet 一般來說,網路越深,所提取到的特徵就越抽象 網路越寬,其特徵就越豐富 基數越大,越能發揮每個卷積核獨特的作用 而注意力則是一種能...
注意力機制筆記
本文是對深度學習中的注意力機制做的筆記,並附上注意力機制應用的部分例子。首先,從其功能感受下注意力機制的作用。來自這裡 上圖展示了引入attention後框架的變化 由固定的語義編碼c變為根據輸出不斷變化的 公式中 抽象為更一般的模型如下 相似度計算 階段1 相似度的歸一化 階段2 計算attent...
attention注意力機制
attention注意力機制的定義和本質 顧名思義 注意力機制的意思就是將注意力集中在重要的點上,忽略那些不重要的因素。注意力機制的本質其實就是對特徵分配注意力權重的過程。現在的重點就是注意力權重的獲取過程。encoder decoder模型定義 以機器翻譯為例,來講解attention機制。機器翻...