卷积中2D步幅的含义是什么?

时间:2017-11-15 10:30:48

标签: machine-learning deep-learning conv-neural-network convolution stride

我知道stride只是一个整数时的含义是什么(通过哪个步骤应该将滤镜应用于图像)。但是(1, 1)甚至更多的维度步幅呢?

1 个答案:

答案 0 :(得分:5)

stride 定义了滤镜沿输入图像(张量)的移动方式。没有什么能阻止你以不同的方式跨越不同的轴,例如,stride=[1, 2]意味着沿着0轴一次移动1px,沿着1轴一次移动2px。这种特殊的组合并不常见,但可能。

Tensorflow API更进一步,允许自定义跨越4D输入张量的所有轴(参见tf.nn.conv2d)。使用此API,设置strides=[1, 2, 2, 1]并不罕见,这很有意义:它应该处理每个图像(第一个1)和每个输入通道(最后1) ,但应用2x2跨越空间维度。就卷积而言,任何strides数组的操作都是适用的,但是值不是同样有用。

强烈建议this CS231n tutorial了解更多详情。