【问题标题】:How do custom input_shape for Inception V3 in Keras work?Keras 中 Inception V3 的自定义 input_shape 如何工作?
【发布时间】:2019-06-28 13:25:21
【问题描述】:

我知道 Inception V3 的 input_shape(299,299,3)。但是在 Keras 中,如果 include_topFalse,则可以构建具有自定义 input_shape 的 Inception V3 版本。

"input_shape:可选的形状元组,仅当include_topFalse时才指定(否则输入形状必须为(299, 299, 3)(使用'channels_last'数据格式)或(3, 299, 299)(使用'channels_first'数据格式)。它应该正好有 3 个输入通道,并且宽度和高度应该不小于 75。例如 (150, 150, 3) 将是一个有效值" - https://keras.io/applications/#inceptionv3

这怎么可能?如果include_topfalse,为什么它只能有自定义 input_shape?

【问题讨论】:

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


    【解决方案1】:

    这是可能的,因为模型是完全卷积的。卷积不关心图像大小,它们是“滑动过滤器”。如果你有大图像,你就有大输出,如果小图像,你有小输出。 (不过,过滤器具有由kernel_size 和输入和输出过滤器定义的固定大小)

    当您使用include_top 时,您不能这样做,因为此模型可能使用Flatten() 层,最后使用Dense 层。 Dense 层需要固定的输入大小(由基于图像大小的 flatten 给出),否则将无法创建可训练的权重(具有可变数量的权重没有意义)

    【讨论】:

      猜你喜欢
      • 2019-07-14
      • 2019-12-24
      • 1970-01-01
      • 2021-01-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-01
      • 2017-06-12
      相关资源
      最近更新 更多