【问题标题】:How to understand the CNN's convolutional layer's output depth is the number of convolution filter used ?如何理解 CNN 的卷积层的输出深度是使用的卷积滤波器的个数?
【发布时间】:2018-01-12 19:53:35
【问题描述】:

假设我对 conv 层的输入是 256 x 256 x 64,我使用了 32 个 3 x 3 的过滤器,为什么输出深度是 32 而不是 64?深度轴上的卷积是如何进行的?

【问题讨论】:

标签: deep-learning convolution


【解决方案1】:

对于 CNN,每个过滤器都由其长度和宽度 (3 x 3) 定义。沿深度轴的连通性始终等于输入的深度。

以您为例:

您有 32 个过滤器,每个过滤器的大小为 (3x3)。因此,每个过滤器中的神经元将查看输入的 (3x3x64) 块,并且每个过滤器层中的神经元数量(没有零填充和步幅 = 1)将为 (256-3)。
所以, Neuron1 在每一层,即Layer1Layer2,......,Layer32 查看输入的 (3x3x64) 的同一块。它使卷积层的输出大小为 (253x253x32)。
这就是滤波器数量决定 CNN 深度的方式。
为了更清楚地了解我在这里讨论的内容,您可以参考 @987654321 @。这可以更直观、更数学地解释 CNN。

【讨论】:

    【解决方案2】:

    输出深度取决于当前卷积层中的过滤器数量。

    当您定义过滤器时,您提供空间维度(X,Y),过滤器的最后一个维度基于输入通道。

    由于在卷积中,每个滤波器 (3, 3, z) 与输入 (Xin,Yin,z) 卷积(简单来说就是元素虎钳乘法)产生 (Xout,Yout,1) 维输出。每个过滤器产生单层输出,这就是为什么输出深度等于该卷积层中的过滤器数量。

    注意:如果您对层的输出大小感兴趣,则可以使用计算,这张幻灯片解释了卷积的工作原理。

    X_out=(Xin+2Pad-kernal)/步幅

    您可能想观看李飞飞教授讲座的video。这是她完整的Deep learning course

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-06-21
      • 1970-01-01
      • 1970-01-01
      • 2018-08-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多