【问题标题】:Why are inputs for convolutional neural networks always squared images?为什么卷积神经网络的输入总是平方图像?
【发布时间】:2016-12-22 16:00:03
【问题描述】:

我使用 CNN 进行深度学习已经有一段时间了,我意识到模型的输入总是平方图像。

我看到卷积运算或神经网络架构本身都不需要这种属性。

那么,这是什么原因呢?

【问题讨论】:

    标签: neural-network artificial-intelligence deep-learning


    【解决方案1】:

    来自苏哈斯·皮莱:

    问题不在于卷积层,而在于全连接 网络层,需要固定数量的神经元。对于 例如,以一个小的 3 层网络 + softmax 层为例。如果前 2 层是卷积+最大池,假设维度是 卷积前后相同,池化减少了 dim/2 ,即 通常情况下。对于 3*32*32(C,W,H) 的图像,其中包含 4 个过滤器 第一层和第二层的6个过滤器,之后的输出 第 2 层末尾的卷积 + 最大池化,将是 6*8*8 ,而对于 3*64*64 的图像,在第 2 层输出的末尾 将是 6*16*16。在进行全连接之前,我们将其扩展为 单个向量(6*8*8=384 个神经元)并进行全连接操作。 所以,你不能有不同维度的全连接层 不同尺寸的图像。解决这个问题的一种方法是使用空间金字塔 池化,您将最后一个卷积层的输出强制为 将其汇集到固定数量的箱(即神经元)中,以便完全 连接层具有相同数量的神经元。您也可以全面检查 卷积网络,可以拍摄非方形图像。

    【讨论】:

      【解决方案2】:

      没有必要使用方形图像。我看到了两个“原因”:

      • 缩放:如果图像是从另一个纵横比(以及横向/纵向模式)自动缩放的,这通常会引入最小的错误
      • 出版物/可视化:方形图像易于一起显示

      【讨论】:

        【解决方案3】:

        因为方形图像令人赏心悦目。但是当领域需要时,有非方形图像的应用程序。例如 SVHN 原始数据集是多位数字的图像,因此矩形图像用作 convnet 的输入,如here

        【讨论】:

          猜你喜欢
          • 2023-03-08
          • 2020-03-18
          • 2016-10-20
          • 1970-01-01
          • 1970-01-01
          • 2017-07-30
          • 2017-08-31
          • 2020-05-26
          • 2017-05-13
          相关资源
          最近更新 更多