【问题标题】:How can I apply convolution over the undefined shape in Keras or Tensorflow?如何在 Keras 或 Tensorflow 中对未定义的形状应用卷积?
【发布时间】:2017-01-17 19:02:26
【问题描述】:

我定义了 Keras,

conv = Convolution2D(num_filters, ws, ws)(x),

我的形状是x(1, ?, 10, 1)

我遇到了问题

TypeError: *: 'NoneType' 和 'int' 的操作数类型不受支持

由于在二维图像的每个窗口上应用的卷积权重矩阵共享参数,因此至少对我而言,在不知道图像真实尺寸的情况下这样做是有效的。

【问题讨论】:

  • 您使用哪种图像排序方式?
  • @MarcinMożejko 张量流顺序
  • @MarcinMożejko 我可以在形状上移动一个窗口(?, 10)
  • @xxx222 我已更正。显然 tf 确实允许在运行时计算张量形状stackoverflow.com/questions/37096225/…。谢谢

标签: machine-learning tensorflow deep-learning keras


【解决方案1】:

如果您想在 CNN 中处理任意大小的输入,请按如下方式定义第一层:

Convolution2D(num_filters, ws, ws, input_shape=(nb_channels, None, None))

请注意,与固定输入大小相比,训练具有可变输入大小的网络需要更长的时间。请参阅我的问题here

【讨论】:

    猜你喜欢
    • 2019-11-20
    • 1970-01-01
    • 1970-01-01
    • 2018-07-19
    • 1970-01-01
    • 2019-09-09
    • 2018-06-16
    • 1970-01-01
    • 2018-01-24
    相关资源
    最近更新 更多