【问题标题】:TensorFlow Convolutional Neural Network tutorialTensorFlow 卷积神经网络教程
【发布时间】:2016-05-29 19:37:52
【问题描述】:

我正在阅读 'Expert MINST' tf 教程 (https://www.tensorflow.org/versions/r0.8/tutorials/mnist/pros/index.html),我被困在这部分:

密集连接层

现在图像尺寸已减小到 7x7,我们添加一个 具有 1024 个神经元的全连接层,允许在 整个图像。我们将池化层的张量重塑为 一批向量,乘以权重矩阵,添加偏差,并应用 ReLU。

为什么是数字 1024?这是哪里来的?

我对全连接层的理解是,它必须以某种方式恢复到原始图像大小(然后我们开始将东西插入到我们的 softmax 方程中)。在这种情况下,原始图像大小是 Height x Width x Channels = 28*28*1 = 784... 而不是 1024。

我在这里错过了什么?

【问题讨论】:

    标签: machine-learning neural-network tensorflow conv-neural-network


    【解决方案1】:

    1024 只是任意数量的隐藏单元。此时,网络的输入减少到 64 个平面,每个平面大小为 7x7 像素。他们不尝试“恢复到原始图像大小”,他们只是声称,他们想要一个可以提取全局特征的层,因此他们希望它与来自最后一个池化层(代表您的输入空间),而之前的操作(卷积和池化)是局部特征

    因此,为了以 MLP 方式处理它,您需要 7*7*64=3136 个神经元。他们在顶部添加了另一层 1024,因此,如果您绘制网络,它将是

     INPUT - CONV - POOL - .... - CONV - POOL - HIDDEN - OUTPUT
    
    28 x 28-               ....         7*7*64   1024      10
                                        =3136
    

    因此,这个数字非常随意,他们只是凭经验测试它是否有效,但您可以在此处使用任意数量的单位或任意数量的层。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-14
      • 2019-08-18
      • 2017-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-15
      相关资源
      最近更新 更多