卷积的维度?
Dimensions of a convolution?
我对这个卷积的计算方式及其输出维度有一些疑问。我熟悉 nxm 内核的简单卷积,使用步幅、扩张或填充,这不是问题,但这个维度对我来说似乎很奇怪。由于我使用的模型是众所周知的 onnx-mnist,我认为它是正确的。
所以,我的观点是:
- 如果输入的尺寸为 1x1x28x28,输出如何为 1x8x28x28?
- W表示内核。怎么可能是8x1x5x5呢?据我所知,第一个维度是批量大小,但这里我只是用 1 个输入进行推理。这有意义吗?
- 我正在从头开始实现这个卷积运算符,到目前为止它适用于 1x1x28x28 和 1x1x5x5 的内核,但额外的维度对我来说没有意义。
附上我正在尝试做的卷积,希望不要太onnx
具体。
我没有看到您使用的代码,但我猜 8 是 内核数 。这意味着您在输入上应用了 8 个不同的内核,大小为 5x5,批量大小为 1。这就是您在输出中获得 1x8x28x28 的方式,8 表示激活图的数量(每个内核一个)。
您的内核维度数 (8x1x5x5) 解释:
- 8: 不同的数量 filters/kernels(将是每个图像的输出贴图数量)
- 1: 输入通道数。如果您的输入图像是 RGB 而不是灰度,这将是 3 而不是 1。
- 5: 第一空间维度
- 5: 第二空间维度
我对这个卷积的计算方式及其输出维度有一些疑问。我熟悉 nxm 内核的简单卷积,使用步幅、扩张或填充,这不是问题,但这个维度对我来说似乎很奇怪。由于我使用的模型是众所周知的 onnx-mnist,我认为它是正确的。
所以,我的观点是:
- 如果输入的尺寸为 1x1x28x28,输出如何为 1x8x28x28?
- W表示内核。怎么可能是8x1x5x5呢?据我所知,第一个维度是批量大小,但这里我只是用 1 个输入进行推理。这有意义吗?
- 我正在从头开始实现这个卷积运算符,到目前为止它适用于 1x1x28x28 和 1x1x5x5 的内核,但额外的维度对我来说没有意义。
附上我正在尝试做的卷积,希望不要太onnx
具体。
我没有看到您使用的代码,但我猜 8 是 内核数 。这意味着您在输入上应用了 8 个不同的内核,大小为 5x5,批量大小为 1。这就是您在输出中获得 1x8x28x28 的方式,8 表示激活图的数量(每个内核一个)。
您的内核维度数 (8x1x5x5) 解释:
- 8: 不同的数量 filters/kernels(将是每个图像的输出贴图数量)
- 1: 输入通道数。如果您的输入图像是 RGB 而不是灰度,这将是 3 而不是 1。
- 5: 第一空间维度
- 5: 第二空间维度