論文閱讀 WACV 2021 — Attentional Feature Fusion
該論文將 Attention 機制泛化至特徵融合的作法上,提出 MS-CAM 來克服輸入資訊之語意、尺度上的不一致情形。此外,針對初始特徵整合的議題,則進一步以 iAFF 作為對應的解法,提昇資訊融合的品質。
論文連結:
《 Attentional Feature Fusion 》
作者:
Introduction
在許多機器視覺的相關任務上,已經有許多改善其重現能力的方法出現。但有關不同 Layers 或 Branches 的特徵融合作法,通常都還是非常簡單的線性作法,像是 Summation 或 Concatenation 。
為了更進一步增強 CNN 的重現能力,該論文將研究焦點放在「 特徵融合 」的環節。
近年發展出的 SKNet 和 ResNeSt 則提出在單一 Layer 內,對多種 Kernel 或 Group 的特徵做動態加權平均的 Global channel attention 機制。雖然這算是種非線性的特徵融合作法,但有以下 3 個缺點:
- Limited scenarios:
SKNet 和 ResNeSt 只處理單一 Layer 之內的特徵,並無法做到 Cross-layer 的融合,但其概念仍具備著一種啟發性。然而只要是有關特徵融合的作法,都勢必要面對整合不同尺度之特徵的挑戰。到目前為止,這環節尚未出現可泛用的作法,並協調地進行特徵融合。 - Unsophisticated initial integration:
為了可以將特徵送入 Attention module ,SKNet 用的是非常直接的加法,在該論文稱為 Initial integration 。若考量不同尺度之特徵其實會有很大程度的「 不協調 」,這種非常直接的做法有可能使模型表現受限。 - Biased context aggregation scale:
SKNet 和 ResNeSt 的融合權重基本上是透過 Global channel attention 取得,這會使它的分布傾向有利於整體的狀態。但一張影像中的物件可能有非常多樣的尺寸,只使用 Global 的視野來生成權重,有可能會對較大的物體產生偏見,導致其作用於小物體的成效受限。這也引導出一個很重要的觀點:「 神經網路是否能夠動態地融合不同尺度的特徵 ?」
Attentional Feature Fusion ( AFF )
基於前述的觀察,該論文提出「 Attentional Feature Fusion ( AFF ) 」模組,試著對上述第 3 點提及之問題做一種回應。
這個 AFF 除了延續既有的單一 Layer 特徵融合外,還結合長短不一的 Skip connections 來做 Cross-layer 的融合,模組的設計上也同時考量前面提及的 Initial integration 。
從該論文的實驗來看,AFF 在好幾種不同的神經網路架構上,都有改善其表現,是種具備泛用性的方法。此外,該論文還結合逐漸完善初始化的作法,以迭代的方式對每次接收到的特徵圖生成融合權重,稱為「 iterative Attentional Feature Fusion ( iAFF ) 」。
Multi-Scale Channel Attention Module ( MS-CAM )
為了避免前述提及的種種問題,該論文延伸 AFF 的想法,提出可聚合不同尺度特徵的模組:「 Multi-Scale Channel Attention Module ( MS-CAM )」。
這模組調整過往對空間資訊做 Pooling 的設定,使它在沿著 Channel 軸向聚合資訊時,能有其尺度上的多樣性,便能在 Attention 做完的資訊分布上,同時強調不同尺寸的物件,使整體的成效更好。
Related Work
Multi-scale Attention Mechanism
為了克服物件尺寸多樣性的挑戰,過去有些研究將不同尺度的影像堆疊成金字塔形狀來分析,也有人把類似手法用於特徵圖,讓 CNN 本身可以融合多尺度的特徵資訊,並期望推論的更準確。
近年也有研究開始在 Attention 機制上探討尺度的議題,但作法和過往在 CNN 架構上的手法沒有太大的差異。
而該論文提出的 MS-CAM 主要是延續 ParseNet 的想法,再於 CNN 上結合 Local / Global 的特徵,並在空間上用 Attention 來聚合多尺度的資訊 。
MS-CAM 與過去作法有以下 2 個比較大的差異:
- 透過 Channel attention 來處理尺度的問題,所以在特徵抽取的作法上,就不像過去用不同尺寸的 Kernel,而是選用 Point-wise convolution 。
- 聚合 Local / Global 特徵的方法也不像過往會用整個架構來做,而是在單一個模組內完成 。
這種「 Multi-scale channel attention 」是個過往未曾探討過的方法 。
Skip Connections in Deep Learning
Skip connection 也是當代神經網路架構設計上常用的一種手法,它讓模型在做 Backpropagation 時,能有一條不被干擾的路徑。
當這種 Skip connection 跨越的距離夠長時,就能讓 High-level 和 Low-level 的資訊進行融合,神經網路就可取得語意更豐富的特徵。但就如同前面提過的問題,目前大多數的作法都以直接的相加或串接來做融合。
在一些相關的研究中,Highway Networks 是第一個在短的 Skip connection 上建立選擇機制的研究,該論文也延續這種研究思維,但有以下 3 點不同的地方:
- Highway Networks 透過全連接層來生成一個 Scalar,並作為融合特徵時所用的權重;而 MS-CAM 則是用 Element-wise 的作法,對特徵圖生成一組尺寸一致的融合權重。
- Highway Networks 只根據輸入特徵來生成權重;而 MS-CAM 則會考量已經看過得特徵圖。
- 該論文指出 Initial feature integration 的重要性,並以 iAFF 作為對應的解法。
Multi-scale Channel Attention
作者們為了讓 MS-CAM 盡可能的輕量化,在抽取 Local 特徵的 Point-wise convolution ( PWConv ) 融入 Bottleneck 的結構:
若再將 Global channel context 以 g(X) 表示,那用 MS-CAM 處理 X 的過程就可被表述為:
M(X) 就是透過 MS-CAM 生成 Attention 的權重。相關示意圖如下:
Attentional Feature Fusion
Unification of Feature Fusion Scenarios
若以 M 表示 MS-CAM,要被融合的特徵圖以 X、Y 表示,那 AFF 可表述成:
為了讓這個作法比較好理解,這部份先把 Initial feature integration 設定為很簡單的 Element-wise summation ,示意圖如下:
由於 MS-CAM 所生成的矩陣可能含有介於 0 ~ 1 的數值,而該模組在最後融合部份又希望對 X 、Y 做加權平均,就用 1 去減這組 Fusion weight:
好讓神經網路可以作到 Soft selection,對應上圖就是 MS-CAM 右邊那條虛線路徑。
為了比較 MS-CAM 與其他方法的差異,該論文有對場景做了以下 3 種定義:
- Same Layer :X 和 Y 分別是 3 × 3 和 5 × 5 Kernel 所生成的輸出
( 例如: InceptionNet ) - Short Skip :X 是 Identity mapping ,Y 是學出來的 Residual
( 例如:ResNet ) - Long Skip :X 是 Low-level 特徵圖,Y 是 High-level 特徵圖
( 例如:FPN )
再結合前述的 Notation 分析常見作法,並整理為下表:
其中的 G 表示 Global attention 機制,而相關的 SOTA 有以下 2 個特點:
- Context-awareness:
最常見的相加或串接是一種非常線性的作法,對它要處理的資訊是完全沒有感知能力的。而 Refinement 和 Modulation 的作法則是非線性的,可對部份輸入資訊具備感知能力。 - Refinement vs modulation vs selection:
只有 Soft selection 的權重加總會是 1 ,其他的方法不會。
Iterative Attentional Feature Fusion
若要對輸入特徵圖有完整的感知,就必須要處理 Initial feature integration 的議題 。
由於初使特徵品質可能會很深地影響最終的融合權重,該論文以另一層 Attention 來處理這現象:
該論文稱之為「 iterative Attentional Feature Fusion ( iAFF ) 」,對應公式:
Examples: InceptionNet, ResNet, and FPN
為了驗證 AFF / iAFF 是否具備泛用性,該論文將它們用在 ResNet 、FPN 和InceptionNet ,作法是取代相加或串接的操作。相關示意圖如下:
Experiments
該論文的實驗做在 CIFAR-100 、 ImageNet 和 StopSign 資料集上,只是在 CIFAR-100 的實驗實際上只有使用預設的 20 類別 。相關實驗設定如下:
Ablation Study
這部份是為了驗證 Multi-scale 的作法是否有效,所以特別設計了以下 2 種 Global + Global 和 Local + Local 的作法:
其餘參數皆比照 Global + Local 的設定,相關結果如下:
上表的 b 參數是指每個 Stage 內的 ResBlock 數量,結果驗證了 Global + Local 確實有比較準。
前面有提到過,特徵融合上有很多種作法,該論文將 Multi-scale 的作法結合其他相關研究 ( GAU、SENet、SA ) 的方法:
並與該論文的 AFF/iAFF 比較:
上表的其他作法有為了比較上的公平性,特別調整 Reduction ratio ,讓不同方法的參數量都是接近的。而結果也證明該論文的方法確實有效,但作者們也有觀察到收斂變得更困難,模型架構的深度也不能做太深。
Impact on Localization and Small Objects
另外,該論文還進一步研究 MS-CAM 對物件定位和小型物件偵測的影響,有在 ResNet-50 、SENet-50 和 AFF-ResNet-50 應用 Grad-CAM 來做可視化:
上圖會看到有些類別名稱旁邊帶著紅色的 ✖ ,表示的是預測錯誤的結果,而其 Softmax 分數最高的類別則標示在影像下方 。
從上圖的上半部來看,AFF-ResNet-50 比較會去專注在跟標籤相關的物件上,展現了它的定位能力。而下半部則展現了對小型物件的定位能力。
Comparison with State-of-the-Art Networks
再來是和其他 SOTA 做比較:
不難看出該論文提出的 AFF / iAFF 不論在各種參數量的配置下,都有表現得比較好,可使神經網路更有效率地抽取特徵。
最後為了強調 AFF / iAFF 可以有效改善既有的模型,特別把相關模型架構的準確度與參數量做了比較:
Conclusion
該論文將 Attention 機制泛化至特徵融合的作法上,透過一種具備選擇性、動態的方法來整合資訊 。
為了克服輸入資訊之語意、尺度上的不一致情形,該論文提出「 Multi-Scale Channel Attention Module ( MS-CAM ) 」,透過 Point-wise convolution 抽取 Local 特徵,並整合既有的 Global 作法 。
此外,該論文指出 Initial feature integration 的重要性,並提出「 iterative Attentional Feature Fusion ( iAFF ) 」改善特徵融合的成效。
而就該論文的實驗結果來看,與其盲目地增加模型深度,或許專注於提昇特徵融合的品質才能更有效地改善神經網路架構 。