【问题标题】:Convolutional Neural Network (LeNet 5). Construction of C3, C5 layers卷积神经网络(LeNet 5)。 C3、C5层的构建
【发布时间】:2015-08-07 12:59:38
【问题描述】:

http://i60.tinypic.com/no7tye.png 图 1 卷积神经网络(LeNet5)

在卷积神经网络 (LeNet 5) 上,图 1 卷积 (C1) 的过程,Max Pooling(Subsampling) (S2,S4) 层是通过迭代方式计算的。但我不明白如何正确地进行 C3(卷积)层。

http://tinypic.com/r/fvzp86/8 图 2 继续 C1 层

首先,我们收到一个 MNIST 32*32 灰度数字图像作为输入,将其视为大小为 32*32 的字节数组。在 C1 层中,我们有 6 个不同的(各种)内核,其中填充了随机的小值。从 1 到 6 的每个内核用于构建 6 个不同的特征图(每个特征图一个内核)。将大小为 5*5 的感受野从左向右移动 1 个像素的步幅(偏差),将图像数组中的值乘以内核值加上偏差并通过 sigmoid 函数。结果是当前构造的特征图的 i,j。一旦我们到达图像数组的末尾,我们就完成了当前特征图的构建。

http://i57.tinypic.com/rk0jk9.jpg 图 3 进行 S2 层

接下来我们开始生成 S2 层,同样会有 6 个特征图,因为我们为 C1 层的 6 个特征图中的每一个单独使用 2*2 感受野(使用最大池化操作,在 2*2 中选择最大值感受野)。 C1、S2、S4 以迭代方式进行。

http://i58.tinypic.com/ifsidu.png 图4 C3层的连接列表

但接下来我们需要计算 C3 层。根据各种论文,存在一个连接图。你能说一下连接列表下的感知吗?这是否意味着我们仍然会像在 C1 层那样使用 5*5 的感受野。例如,我们看到在第一行有一个标记的特征图对应于列 (0,4,5,6,9,10,11,12,14,15)。这是否意味着要构造 C3 层的 0、4、5、6、9、10、11、12、14、15 个特征图,我们将在 S2 层的第一个特征图下进行卷积操作,感受野为 5*5。在卷积操作期间将使用什么具体的内核,或者我们需要像在 C1 层中那样随机生成 16 个填充小数字的内核。如果是,我们看到 C3 的特征图 0,4,5,6,9,10,11,12,14,15 以浅灰色、浅灰色、深灰色、浅灰色、深灰色、浅灰色、深灰色着色、浅灰色、浅灰色、深灰色。可以清楚地看到 S2 的第一个特征图是浅灰色的,但只有 0,4,6,10,12,14 是浅灰色的。因此,C3 中 16 个特征图的构建可能以不同的方式进行。请问C5层是怎么产生的,会有一定的连接列表吗?

【问题讨论】:

    标签: networking convolution


    【解决方案1】:

    免责声明:我刚刚开始讨论这个话题,所以请指出我的概念中的错误!

    1. 在原版Lenet paper 的第 8 页中,您可以找到将 S2 的不同层连接到 C3 的层的连接图。这个连接列表告诉我们 S2 的哪些层正在与内核进行卷积(详细信息即将发布)以生成 C3 的层。

    2. 您会注意到,S2 的每一层都参与了恰好 10 层(不是全部 16 层)C3 的生成。这表明内核的大小是(5x5x6)x 10。

    3. 在 C1 中,我们有一个 (5x5) x 6 内核,即具有 6 个特征图的 5x5。这是二维卷积。在 C3 中,我们有 (5x5x6) x 10 内核,即具有 10 个特征图的“内核盒”。这 10 个特征图和 kernel-box 组合产生 16 层而不是 6 层,因为它们不是完全连接的。

    4. 关于内核权重的生成,这取决于算法。它可以是随机的、预定义的或使用某些方案,例如caffe 中的 xavier。

    让我感到困惑的是内核细节没有很好地定义,必须从给定的信息中推导出来。

    更新: C5是如何产生的?

    C5 层是一个具有 120 个特征图的卷积层。 C5 特征图的大小为 1x1,因为在 S4 上应用了 5x5 内核。在 32x32 输入的情况下,我们也可以说 S4 和 C5 是全连接的。应用于 S4 以获得 C5 的内核大小为 (5x5x16) x 120(偏差未显示)。论文中没有明确给出这 120 个内核盒如何连接到 S4 的详细信息。但是,作为提示,提到 S4 和 C5 是全连接的。

    【讨论】:

      【解决方案2】:

      论文中关于“C5”的关键点似乎是 5x5 内核应用于 ALL 16 或 S4 的特征图——一个全连接层。

      “每个单元都连接到 S4 的所有 16 个特征图上的 5x5 邻域”。

      由于我们有 120 个输出单元,我们应该有 120 个偏置单元连接(否则架构细节不相符)。

      然后,我们连接所有 25x16 输入单元以生成特征图输出之一。

      所以我们总共有

      num_connections = (25x16+1)x120 = 48000+120 = 48120

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-01-01
        • 1970-01-01
        • 2019-05-06
        • 1970-01-01
        • 1970-01-01
        • 2020-08-14
        • 2017-10-21
        相关资源
        最近更新 更多