Tensorflow 卷积的维数?

Tensorflow 卷积的维数?,tensorflow,machine-learning,conv-neural-network,onnx,Tensorflow,Machine Learning,Conv Neural Network,Onnx,关于这个卷积是如何计算的以及它的输出维度,我有一些问题。我熟悉使用nxm内核的简单卷积,使用步长、膨胀或填充,这不是问题,但这个维度对我来说似乎很奇怪。因为我使用的模型是众所周知的,所以我认为它是正确的 因此,我的观点是: 如果输入的尺寸为1x1x28x28,那么输出的尺寸为1x8x28如何 W表示内核。怎么可能是8x1x5x5?据我所知,第一个维度是批量大小,但这里我只是用1个输入进行推断。这有意义吗 我从零开始实现这个卷积运算符,到目前为止它适用于1x2x28和1x1x5x5内核,但是额外

关于这个卷积是如何计算的以及它的输出维度,我有一些问题。我熟悉使用nxm内核的简单卷积,使用步长、膨胀或填充,这不是问题,但这个维度对我来说似乎很奇怪。因为我使用的模型是众所周知的,所以我认为它是正确的

因此,我的观点是:

  • 如果输入的尺寸为1x1x28x28,那么输出的尺寸为1x8x28如何
  • W表示内核。怎么可能是8x1x5x5?据我所知,第一个维度是批量大小,但这里我只是用1个输入进行推断。这有意义吗
  • 我从零开始实现这个卷积运算符,到目前为止它适用于1x2x28和1x1x5x5内核,但是额外的维度对我来说没有意义
找到我要做的卷积,希望不是太具体


我看不到您使用的代码,但我猜8是内核数。这意味着您在输入上应用8个不同的内核,大小为5x5,批量大小为1。这就是在输出中获得1x8x28的方式,8表示激活映射的数量(每个内核一个)

内核尺寸(8x1x5x5)的编号说明如下:

  • 8:不同过滤器/内核的数量(将是每个图像的输出贴图数量)
  • 1:输入通道的数量。如果您的输入图像是RGB而不是灰度,这将是3而不是1
  • 5:第一空间维度
  • 5:第二空间维度

如果有8个不同的内核,每个内核有5x5个元素,为什么内核大小不是
1x8x5x5
而不是
8x1x5x5
?或者如果使用3D内核,第二个维度可能会不同于1?你的第二个假设是正确的。您有一个3D内核,但您的输入只有一个通道,因此它是
8x1x5x5
(内核数量x输入通道数量x第一空间x第二空间)。批处理中的每个图像都使用相同的过滤器,因此您没有类似于
1x8x1x5x5