卷积神经网络中的维数

时间:2017-03-10 07:00:16

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

我试图理解卷积神经网络中的维度是如何表现的。在下图中,输入是28×28矩阵,带有1个通道。然后有32个5乘5的过滤器(高度和宽度的步幅2)。所以我理解结果是14乘14乘32。但是在下一个卷积层中,我们有64个5乘5的滤波器(再次使用步幅2)。那么为什么结果是7乘7乘64而不是7乘7乘32 * 64?我们是否将64个过滤器中的每一个应用于32个通道中的每一个?

enter image description here

3 个答案:

答案 0 :(得分:1)

一个过滤器是上一层中所有尺寸的总和。这意味着5x5滤波器在所有32个维度上求和,实质上是32 * 5 * 5值的加权和。但是,权重值是跨维度共享的。然后有64个这样的过滤器。可以在此处找到有关图像的更好解释:http://www.cs.colostate.edu/helpdocs/eclipseCommLineArgs.html

答案 1 :(得分:1)

here清楚地解释了输入的大小如何随着层之间的进展而变化。

在输入中,您给出的尺寸为28宽,28高度和深度为1.对于第1层中的滤镜,滤镜的深度尺寸必须等于输入的深度。因此过滤器的尺寸为5x5x1,应用一个过滤器,尺寸减小(由于步幅)产生14x14x1尺寸激活图,因此应用32个这样的过滤器将为您提供32个激活图。将所有这些14x14x32组合在一起输出第1层并输入到第二层。再次在第二层中,您需要在图层上应用尺寸为5(宽度)x5(高度)x32(深度)的滤镜,以生成一个14x14x1的激活贴图,堆叠所有64个激活贴图,将第二层的输出尺寸作为14x14x64等等。

是的,您实际上是在32个频道的每个频道上应用64个过滤器。

答案 2 :(得分:1)

深度通常是隐式给出的。 例如,许多图像被认为具有深度3(对于每个像素中的三个颜色尺寸)。那么5x5滤镜就是5x5x3滤镜。 在您的情况下,5x5-过滤器实际上是5x5x32过滤器。

通常会明确说明一个深度(例如在“ 5x5x1过滤器”中)。