我想了解TensorFlow的convolution,特別是式如何解釋TensorFlow的卷積濾波器和步進參數?
shape(output) = [batch,
(in_height - filter_height + 1)/strides[1],
(in_width - filter_width + 1)/strides[2],
...]
我本來期望公式是
shape(output) = [batch,
(in_height - filter_height)/strides[1] + 1,
(in_width - filter_width)/strides[2] + 1,
...]
代替。從32×32的圖像開始,並應用與進展5x5的過濾器[1,3,3,1],然後在我的理解這應該產生一個10×10輸出,其值的區域
(0:4,0:4) , (0:4,3:7) , (0:4,6:10) , ..., (0:4,27:31),
(3:7,0:4) , (3:7,3:7) , (3:7,6:10) , ..., (3:7,27:31),
...
(27:31,0:4), (27:31,3:7), (27:31,6:10), ..., (27:31,27:31)
這樣的卷積兩個尺寸應該是floor((32-5)/ 3)+ 1 = 10而不是floor((32-5 + 1)/ 3)= 9。我在這裏錯過了什麼?我誤解了卷積在這裏完成的方式和/或參數是什麼意思?如果是這樣,我應該使用什麼參數來獲得上述選擇?