常见的库如opencv, theano等的卷积操作方法(cv2.filter2D
, theano.tensor.nnet.conv2d
)都有带有\(2d\), 这个2d代表什么呢?
# 卷积操作的维度
进行conv操作时, 它的前进方向的维度就是conv操作的维度. 例如最常见的图片conv操作只沿长与宽两个方向进行, 所以是$2D$的conv. 若conv操作还沿channel方向前进, 那它就是$3D$的. 最简单的判别方式就是看conv操作stride的(有效)维度. CNN里的stride都是$(s_y, s_x)$, 如$(1, 1), (2, 2)$, 两维的.
output = theano.tensor.nnet.conv2d(
input, filters, input_shape=(b, c2, i1, i2), filter_shape=(c1, c2, k1, k2),
border_mode=(0, 0), subsample=(1, 1))
#Reference
* http://deeplearning.net/software/theano_versions/dev/tutorial/conv_arithmetic.html
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:卷积操作的维度 - Python技术站