感受野是卷積神經網路每一層輸出的特徵圖(feature map)上的畫素點在原始影象上對映的區域大小。
卷積神經網路由輸入維度計算輸出維度:
output size =
(input size - kernel size +
2* padding )
/ stride +
1
卷積神經網路由輸出維度計算輸入維度:
input size = (output size -
1)* stride -
2* padding + kernel size
計算感受野大小時,忽略了影象邊緣的影響,即不考慮padding
的大小
先計算最深層
在前一層上的感受野,然後逐漸傳遞到第一層
,使用的公式
可以表示如下:
待 計算
的fea
ture
map上
的感受野
大小:r
fn=1
待計算的feature map上的感受野大小:rf_=1
待計算的fe
atur
emap
上的感受
野大小:
rfn
=1r fi
=(rf
i+1−
1)∗s
i+ki
rf_=(rf_-1)*s_+k_
rfi=(
rfi+
1−1
)∗si
+ki
s 表示卷積的步長; k表示卷積層濾波器的大小
以alexnet為例:
計算conv_5的感受野:
擴大感受野,主要是通過池化和大步長卷積,卷積層對擴大感受野作用很小
python實現
#python
#卷積層輸出大小和感受野大小的計算
net_struct =
,'vgg16':,
'zf-5':}
imsize =
224def
outfromin
(isz, net, layernum)
:#從前向後算輸出維度
totstride =
1 insize = isz
for layer in
range
(layernum)
: fsize, stride, pad = net[layer]
outsize =
(insize - fsize +
2*pad)
/ stride +
1 insize = outsize
totstride = totstride * stride
return outsize, totstride
definfromout
(net, layernum)
:#從後向前算感受野 返回該層元素在原始中的感受野
rf =
1for layer in
reversed
(range
(layernum)):
fsize, stride, pad = net[layer]
rf =
((rf -1)
* stride)
+ fsize #計算感受野大小時,忽略了影象邊緣的影響,即不考慮padding的大小
return rf
if __name__ ==
'__main__'
:print
"layer output sizes given image = %dx%d"
%(imsize, imsize)
for net in net_struct.keys():
print
'************net structrue name is %s**************'
% net
for i in
range
(len
(net_struct[net]
['net'])
):p = outfromin(imsize,net_struct[net]
['net'
], i+1)
rf = infromout(net_struct[net]
['net'
], i+1)
print
"layer name = %s, output size = %3d, stride = % 3d, rf size = %3d"
%(net_struct[net]
['name'
][i]
, p[0]
, p[1]
, rf)
參考:
附另一種計算方法:
感受野計算
這兩篇部落格各有優缺點,我結合自己的理解分析一下。概念 感受野 receive field 是指當前feature map中的乙個原子點p與輸入層中多少個原子個數相關的問題,假設輸入層相關的點為 rf rf 個 假設長寬兩個方向上做同樣尺度的操作 即輸入層中rf rf個原子值的變化會影響當前feat...
感受野計算
定義 感受野 receptive field 指的是神經網路中神經元 看到的 輸入區域,在卷積神經網路中,感受野的定義是卷積神經網路每一層輸出的特徵圖 feature map 上的畫素點在原始影象上對映的區域大小。計算方式 l k lk 1 f k 1 i 0k 1 si l k l f k 1 p...
感受野的計算
感受野 receptive field 指的是神經網路中神經元 看到的 輸入區域,在卷積神經網路中,feature map上某個元素的計算受輸入影象上某個區域的影響,這個區域即該元素的感受野。卷積神經網路中,越深層的神經元看到的輸入區域越大,如下圖所示,kernel size 均為3 33 3,st...