原文連接:關於感覺野的總結網絡
論文連接:Understanding the Effective Receptive Field in Deep Convolutional Neural Networkside
感覺野被定義爲卷積神經網絡特徵所能看到輸入圖像的區域,換句話說特徵輸出受感覺野區域內的像素點的影響。下圖展現了一個在輸出層達到了7*7感覺野的例子:spa
感覺野計算公式爲:,設計
如上例第一個隱層,,blog
若是存在空洞卷積,公式變爲。ip
上文所述的是理論感覺野,而特徵的有效感覺野(實際起做用的感覺野)其實是遠小於理論感覺野的,以下圖所示。具體數學分析比較複雜,再也不贅述,感興趣的話能夠參考論文:Understanding the Effective Receptive Field in Deep Convolutional Neural Networks。ci
咱們如下圖爲例,簡要介紹有效感覺野的問題:get
很容易能夠發現, 隻影響第一層feature map中的
;而
會影響第一層feature map中的全部特徵,即
。數學
第一層的輸出所有會影響第二層的 。it
因而 只能經過
來影響
;而
能經過
來影響
。顯而易見,雖然
和
都位於第二層特徵感覺野內,可是兩者對最後的特徵
的影響卻大不相同,輸入中越靠感覺野中間的元素對特徵的貢獻越大。
對於普通卷積:F(i, j-1) = (F(i, j) - 1)*stride + kernel_size
其中 F(i,j)表示第i層對第j層的局部感覺野。
對於空洞卷積:F(i, j-1) = (F(i, j) - 1)*stride + dilation*(kernel_size - 1) + 1
經實際演算,以上公式正確。
Xudong Cao寫過一篇叫《A practical theory for designing very deep convolutional neural networks》的technical report,裏面講設計基於深度卷積神經網絡的圖像分類器時,爲了保證獲得不錯的效果,須要知足兩個條件:
Firstly, for each convolutional layer, its capacity of learning more complex patterns should be guaranteed; Secondly, the receptive field of the top most layer should be no larger than the image region.
其中第二個條件就是對卷積神經網絡最高層網絡特徵感覺野大小的限制。
如今流行的目標檢測網絡大部分都是基於anchor的,好比SSD系列,v2之後的yolo,還有faster rcnn系列。
基於anchor的目標檢測網絡會預設一組大小不一樣的anchor,好比32x3二、64x6四、128x12八、256x256,這麼多anchor,咱們應該放置在哪幾層比較合適呢?這個時候感覺野的大小是一個重要的考慮因素。
放置anchor層的特徵感覺野應該跟anchor大小相匹配,感覺野比anchor大太多很差,小太多也很差。若是感覺野比anchor小不少,就比如只給你一隻腳,讓你說出這是什麼鳥同樣。若是感覺野比anchor大不少,則比如給你一張世界地圖,讓你指出故宮在哪兒同樣。
《S3FD: Single Shot Scale-invariant Face Detector》這篇人臉檢測器論文就是依據感覺野來設計anchor的大小的一個例子,文中的原話是
we design anchor scales based on the effective receptive field
《FaceBoxes: A CPU Real-time Face Detector with High Accuracy》這篇論文在設計多尺度anchor的時候,依據一樣是感覺野,文章的一個貢獻爲
We introduce the Multiple Scale Convolutional Layers
(MSCL) to handle various scales of face via enriching
receptive fields and discretizing anchors over layers