注意力機制源於自然語言處理,CSDN:https://blog.csdn.net/qq_40027052/article/details/78421155#t0
視覺注意力機制中接觸到的,自認爲應用較多的,也是在論文中頻繁出現的:
channel-wise attention(通道注意力)
spital attention(視覺空間注意力)
剛接觸注意力機制時總把這兩個弄混,一直不知道如何實現,過一段時間再看才發現是兩個東西,實現起來也不麻煩。
1.channel-wise attention(通道注意力)
可以參考Squeeze-and-Excitation Networks(SENet),這個結構是2017 ILSVR競賽的冠軍,主要是區分不同通道特徵的重要性,重要特徵權重大,不重要特徵權重小,權重部分計算部分通過Squeeze-and-Excitation Networks實現。
具體是將WHC的特徵通過全局池化、全連接和激活函數得到1*1*C的特徵(即權重),將1*1*C的權重與WHC特徵乘積得到通道注意力的特徵。
具體實現:
https://blog.csdn.net/wangkun1340378/article/details/79092001
https://zhuanlan.zhihu.com/p/32702350
代碼容易實現,可以嘗試一下,會因爲全連接增加參數量,但不會太多,因爲SENet中直接對特徵進行了求全局平均,將W*H的特徵變成了一個數,再再這個基礎上進行全連接計算,因此不會增加太多參數量和計算量。
針對通道注意力機制在處理類不平衡或是多尺度問題中表現如何,或是更適合哪種場景,希望路過的大佬有了解的可以解答一下,萬分感謝!!
2.spital attention(視覺空間注意力)
與通道注意力不同,更關注位置信息。在這裏對通道進行池化計算,得到WH的特徵,經過變換得到兩個WH的矩陣,經過計算得到位置注意力權重,再與WHC的特徵相乘,得到具有位置注意力信息的特徵。
具體變換方法多種,可參考:
圖像分割的雙注意力機制:https://zhuanlan.zhihu.com/p/54150694
用於卷積神經網絡的注意力機制(Attention)----CBAM: Convolutional Block Attention Modul :https://www.jianshu.com/p/4fac94eaca91