沈陽理工大學(xué) 黃海新 劉孝陽 王瑞鵬
注意力機(jī)制是機(jī)器學(xué)習(xí)領(lǐng)域的主流方法和研究熱點(diǎn)之一,計(jì)算機(jī)視覺中的注意力機(jī)制旨在讓系統(tǒng)能夠忽略無關(guān)信息而更多的關(guān)注重點(diǎn)的有效信息,具有參數(shù)少、計(jì)算快、效果好的優(yōu)點(diǎn)。本文先對(duì)注意力的原理進(jìn)行探索,在此基礎(chǔ)上對(duì)一些經(jīng)典的注意力模型和當(dāng)前流行的注意力模型進(jìn)行詳細(xì)地分析討論,最后對(duì)注意力機(jī)制未來的發(fā)展進(jìn)行了一定的展望。
注意力機(jī)制是機(jī)器學(xué)習(xí)任務(wù)中一個(gè)基礎(chǔ)性問題,按照作用域的不同,可以分為空間域注意力機(jī)制、通道域注意力機(jī)制以及混合域注意力機(jī)制。由于其參數(shù)少、計(jì)算快、效果好三大優(yōu)點(diǎn)而在視覺任務(wù)的檢測、分類、分割、行為識(shí)別等方面有著良好的表現(xiàn)。
視覺任務(wù)中,注意力可以是施加在空間域,也可以在通道域,或者是將二者結(jié)合施加在混合域??臻g域的注意力機(jī)制,首先對(duì)輸入特征圖進(jìn)行通道壓縮,然后利用壓縮之后的特征圖進(jìn)行相似度計(jì)算得到自相關(guān)矩陣,將自相關(guān)矩陣歸一化成為[0,1]之間的權(quán)重矩陣后與原特征矩陣相乘。通道域的注意力機(jī)制一般需要對(duì)輸入的特征圖C×H×W進(jìn)行全局池化得到一個(gè)一維向量1×1×C,然后對(duì)這個(gè)一維向量進(jìn)行特征交互,計(jì)算相關(guān)性,最后將交互之后的特征向量進(jìn)行歸一化得到通道權(quán)重向量,將通道權(quán)重向量施加到原特征圖中?;旌嫌虻淖⒁饬C(jī)制在空間域和通道域都需要做相關(guān)性處理,這種處理方式可以是先空間域后通道域(也可以是先通道域再空間域)的串行處理方式也可以是空間域和通道域并行處理的方式。
注意力按照作用域不同可以分為空間域注意力、通道域注意力、混合域注意力,下文基于這三個(gè)方面對(duì)當(dāng)前流行的一些注意力模型進(jìn)行介紹分析。
空間域注意力機(jī)制主要依靠計(jì)算特征圖中每一個(gè)位置與其他所有位置的相關(guān)性得到注意力權(quán)重。Max Jaderberg等提出Spatial Transformer Networks通過注意力模型將空間信息進(jìn)行轉(zhuǎn)換實(shí)現(xiàn)對(duì)圖片旋轉(zhuǎn)、縮放變換的功能。XiaolongWang等提出Non-local方法通過計(jì)算自相關(guān)矩陣捕獲像素值與其他所有像素之間的長期依賴。
空間注意力機(jī)制的具體實(shí)現(xiàn)過程如圖1所示。
通道域的注意力機(jī)制是為了捕獲通道間的依賴關(guān)系,將注意力權(quán)重施加在通道上實(shí)現(xiàn)。Hu Jie等提出SENET通過建模各個(gè)特征通道之間的依賴關(guān)系,給有效的特征通道施加更大的權(quán)重,忽略無效的通道;Changqian Yu等為了解決語義分割中類內(nèi)不一致性問題,設(shè)計(jì)了一個(gè)平滑網(wǎng)絡(luò),通過信道注意塊和全局平均池來選擇更具區(qū)別性的特征。
圖1 Non-local Neural Networks
通道域注意力的計(jì)算分為三個(gè)部分:擠壓(squeeze),激勵(lì)(excitation),以及scale(attention),具體計(jì)算過程如圖2所示:
圖2 通道域注意力計(jì)算過程
圖3 并行混合域注意力機(jī)制
(1)擠壓(squeeze)部分,對(duì)卷積后的特征圖U做全局平均池化,這一步相當(dāng)于得到所有特征通道的數(shù)值分布;(2)激勵(lì)(excitation)部分,對(duì)各個(gè)特征通道進(jìn)行交互,捕獲通道間的依賴關(guān)系,為每個(gè)特征通道生成權(quán)重;(3)scale(attention)部分,將生成的權(quán)重乘回到原輸入特征圖中。
混合域的注意力模型兼顧空間域和通道域,混合域的注意力模型有很多,主要的區(qū)別在兩個(gè)方面:第一,在空間域注意力和通道域注意力的計(jì)算方式上存在差異;第二,有的注意力采用空間域通道域并行處理的方式,有的采用空間域通道域串行處理的方式Woo Sanghyun等提出Convolutional Block Attention Module,在通道域的處理上,先經(jīng)過通道壓縮得到一維向量之后對(duì)一維向量進(jìn)行操作,空間上則是將Max Pooling和Average Pooling兩種方式得到的特征圖直接拼接在一起之后進(jìn)行卷積操作;Yue Cao等提出將Non-local與SEnet融合的Global Context(GC)block,實(shí)現(xiàn)一種無Query依賴的建模方式;Jun Fu等提出Dual Attention Network,分別在通道域和空間域利用non-local的思想,使用自相關(guān)矩陣捕獲長距離依賴。
并行處理的混合域注意力和串行處理的混合域注意力的實(shí)現(xiàn)過程可分別總結(jié)為圖3和圖4所示:
圖4 串行混合域注意力機(jī)制
圖3所示為并行處理的混合域注意力機(jī)制,其處理過程可以總結(jié)為式(1)所示:
圖像識(shí)別任務(wù)中,以CBAM、SENet等注意力模型為代表,在ImageNet數(shù)據(jù)集的實(shí)驗(yàn)結(jié)果如表1所示:
表1 圖像識(shí)別對(duì)比結(jié)果
從表1得出,在ImageNet數(shù)據(jù)集上進(jìn)行圖像識(shí)別,Backbone為ResNet50的前提下,相較于不增加注意力模塊的ResNet-50,增加注意力模塊之后準(zhǔn)確率有明顯提升,有更好的表現(xiàn),證明了注意力機(jī)制在圖像識(shí)別任務(wù)中的有效性。
圖像語義分割方面,在Cityscapes數(shù)據(jù)集上,采用mIoU作為評(píng)價(jià)標(biāo)準(zhǔn),實(shí)驗(yàn)對(duì)比結(jié)果如表2所示:
表2 語義分割對(duì)比結(jié)果
從表2可以看出,Backbone為ResNet50的前提下,相較于沒有注意力機(jī)制的ResNet50,含有注意力機(jī)制的DANet和CCNet在語義分割任務(wù)中有更高的準(zhǔn)確率,證明注意力機(jī)制在語義分割任務(wù)中的有效性。
本文著重研究了注意力機(jī)制的原理、主流注意力機(jī)制的實(shí)現(xiàn)方式、注意力機(jī)制在計(jì)算機(jī)視覺中的應(yīng)用及其效果對(duì)比。目前的主流空間注意力機(jī)制都是以計(jì)算相關(guān)性矩陣為主,主要的區(qū)別在于相關(guān)性矩陣的計(jì)算;在通道域的注意力機(jī)制則以全局池化或者平均池化為主,從而得到通道上的遠(yuǎn)距離依賴性,這種相關(guān)性可以幫助深度神經(jīng)網(wǎng)絡(luò)擴(kuò)大感受野,捕獲像素之間的依賴關(guān)系。
這種利用相關(guān)性得到注意力機(jī)制的方式取得了不錯(cuò)的效果,但是還有很大的改進(jìn)空間,比如在計(jì)算方式、參數(shù)的優(yōu)化以及通道注意力和空間注意力的特征之間的融合等方面可以有進(jìn)一步的研究。