特征圖尺寸和感受野是卷積神經網絡中非常重要的兩個概念,今天來看一下,如何計算特征尺寸和感受野。
特征圖尺寸
卷積特征圖,是圖片經過卷積核處理之后的尺寸。計算輸出特征的尺寸,需要給出卷積核的相關參數包括:
- 輸入尺寸:輸入圖像或特征圖的高度或寬度。
- 卷積核尺寸:卷積核的高度或寬度。
- 填充:應用于輸入圖像填充量。
- 步長:卷積核在輸入圖像上移動窗口。
首先計算卷積核能移動多少像素,直到卷積核不能在移動,輸入尺寸 + 2 ×填充 ? 卷積核尺寸,結果 / 步長,最后在加 +1, 加1 是可以理解為如果圖像和卷積核尺寸一致,輸出就是1 * 1。
輸入 6 *6,卷積核 2 * 2, 步長 1, 填充 0,依據公式可得 (6 + 2 *0 - 2) / 1 + 1 =5。
輸入 6 *6,卷積核 2 * 2, 步長 2, 填充 1,依據公式可得 (6 + 2 *1 - 2) / 2 + 1 = 4。
感受野
CNN 卷積神經網絡有多層組成,特征圖上能看到原始圖的大小就是感受野,層數越多能觀察到的信息也就越多。如下圖,第二層感受野是 33,第三層的感受野是 55。
感受野公式:
感受野的計算就是多層累加的過程,第一層就是卷積核的尺寸,第二層=第一層 + 第二層新增加邊緣(卷積核尺寸-中心點)。如果步長大于 1,還要考慮步長的因素。
假設一個網絡的前兩層都使用了 3x3 的濾波器,步長為 1:
第一層:感受野 = 1 + (3 - 1) × 1 = 3
第二層:
對于第二層:感受野 = 3 + (3 - 1) × 1 = 5
假設一個網絡的前三層都使用了 3x3 的濾波器,步長為 2:
第一層:卷積核大小 = 3,步長 = 2RF1=1+(3?1)×1=3第二層:卷積核大小 = 3,步長 = 2此處,之前層的步長積僅為第1層的步長,即2。RF2=3+(3?1)×2=7第三層:卷積核大小 = 3,步長 = 2第1層和第2層的步長積是 2×2=4。RF3=7+(3?1)×4=15