【问题标题】:CNN model why the data is too large?CNN模型为什么数据太大?
【发布时间】:2016-12-20 13:05:11
【问题描述】:

  • 使用 keras 和 tensorflow 后端
  • 仅使用 CPU,内存 128GB
  • 输入数据的形状为 (45,1024,1024)
  • 模型只有一个卷积,一个 (2,2) 最大池化
  • 1024 *1024 完全连接。

我收到此错误消息:

无效参数:形状 [4194304,1048576] 太大(超过 1099511627776 个条目)

注意:

4194304 = 2048 * 2048
1048576 = 1024 * 1024

keras 是如何计算这个形状的?为什么它太大了?

【问题讨论】:

    标签: tensorflow keras training-data


    【解决方案1】:

    [4194304, 1048576] 的形状计算如下:

    对大小为[1024, 1024, 3]的输入应用16个大小为[3, 3]same边界模式的卷积,得到大小为[1024, 1024, 16]的输出。在大小为 2 的最大池化之后,它变为[512, 512, 16],当扁平化时为512 * 512 * 16 = 41943041048576 来自 1024 * 1024,正如您在 Dense 层构造函数中指定的那样。

    我认为您应该重新考虑模型的架构。您可以使用较小尺寸的输入,添加几个池化层,应用1 x 1 卷积降低维度。而且我怀疑1024 * 1024 是全连接层中合理数量的节点。

    【讨论】:

      猜你喜欢
      • 2018-03-21
      • 2019-07-05
      • 1970-01-01
      • 2020-02-23
      • 1970-01-01
      • 2017-07-23
      • 2018-08-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多