【问题标题】:Understanding 2D convolution output size了解 2D 卷积输出大小
【发布时间】:2021-05-12 20:17:43
【问题描述】:

我是卷积深度学习的初学者。我在论文Simultaneous Feature Learning and Hash Coding with Deep Neural Networks 中看到了以下架构:对于大小为 256*256 的图像,

不明白第一个2D卷积的输出大小:96*54*54。 96 似乎很好,因为过滤器的数量是 96。但是,如果我们对输出大小应用以下公式:size = [(W−K+2P)/S]+1 = [(256 - 11 + 2*0)/4] + 1 = 62.25 ~ 62。我有假设填充,P 为 0,因为它在论文中的任何地方都没有提到。 Keras Conv2D API 产生相同的 96*62*62 大小的输出。那么,为什么paper指向96*54*54呢?我错过了什么?

【问题讨论】:

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


    【解决方案1】:

    嗯,它提醒了我AlexNet paper 哪里有类似的错误。你的计算是正确的。我认为他们错误地写了 256x256 而不是 224x224,在这种情况下,输入层的计算是,

    (224-11+2*0)/4 + 1 = 54.25 ~ 54

    作者很可能错误地写了 256x256 而不是真正的架构输入大小为 224x224(AlexNet 中也是这种情况),或者另一个不太可能的选项是他们写了 256x256,这是真正的架构输入大小,但是224x224 的计算。后者是可以忽略的,因为我认为这是一个非常愚蠢的错误,我认为这甚至不是一个选择。

    因此,我相信真正的输入尺寸是 224x224 而不是 256x256。

    【讨论】:

    • 似乎是唯一可能的解释。谢谢!如果有任何问题,我会打开这个问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-03
    • 1970-01-01
    • 2019-06-14
    • 1970-01-01
    • 2018-06-25
    • 1970-01-01
    相关资源
    最近更新 更多