1. 程式人生 > >Squeeze-and-Excitation Networks(SE network)閱讀筆記

Squeeze-and-Excitation Networks(SE network)閱讀筆記

SE Block詳解

  • SE Block通過學習通道之間的關係,調節特徵圖通道之間的權重,從而達到attention集中的目的,改善網路的表達能力。
  • SE Block可以替代任意的卷積操作。

在這裡插入圖片描述
上圖為SE Block描述圖。可以看到,通過SE Block以後特徵圖的維度不會發生改變。SE模組有些像res,最大的不同在於將最後的加改成了乘。SE Block有兩條資料流。上邊的資料流首先對原圖進行一個Squeeze操作(即對U進行global average pooling,輸出為1*1 *C )。經過Squeeze操作之後,再對輸出進行一個Excitation操作,此操作意在捕捉通道之間的關係嗎。Excitation操作首先對Squeeze操作的輸出進行降維(r為放縮因子),然後進行ReLU啟用,最後再放大維度變回原來的通道數C。之所以採用這種bottleneck的結構,原文解釋為降低模型的複雜度以及提高模型的泛化能力。經過Squeeze和Excitation之後,學習到了channel attention,將Excitation的輸出與原特徵圖U逐個通道相乘(即scale操作),相當於改變了各個特徵圖的權重,從而使模型將attention集中在更有意義的特徵圖上。
SE Block公式化為:

  • squeeze(global average pooling)在這裡插入圖片描述
  • excitation(降維,ReLU,升維)在這裡插入圖片描述
  • scale操作(原特徵圖U與excitation輸出相乘)在這裡插入圖片描述

關於SE Block的examples

  • 用在Inception network
    在這裡插入圖片描述
  • 用在ResNet在這裡插入圖片描述