首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Keras convolution2d错误

Keras convolution2d错误
EN

Stack Overflow用户
提问于 2018-08-02 13:43:10
回答 2查看 114关注 0票数 0

灰度图像(宽12px,高12px)在训练和测试中进行处理,如以下Keras代码所示。

代码语言:javascript
复制
model.add(Convolution2D(32, 3, 3, border_mode='same', input_shape=(1,12,12)))
model.add(Activation("relu"))
model.add(Convolution2D(32, 3, 3))
model.add(Activation("relu"))
model.add(MaxPooling2D(pool_size=(2, 2), border_mode=("same")))
model.add(Dropout(0.25))

然而,错误发生如下。

代码语言:javascript
复制
tensorflow.python.framework.errors_impl.InvalidArgumentError: Negative dimension size caused by subtracting 3 from 1 for 'conv2d_2/convolution' (op: 'Conv2D') with input shapes: [?,1,12,32], [3,3,32,32].

让我知道如何解决它。

EN

回答 2

Stack Overflow用户

发布于 2018-08-02 14:03:47

当我做物体检测时,我也遇到了类似的问题,我发现问题是一些损坏的图像。当keras试图读取图像但被损坏时,图像不会被加载。因此,它不会为image抛出错误,而是开始执行操作并失败。因此,在开始模型训练之前,只需检查是否可以成功加载图像。这将为您提供罪魁祸首文件。这应该可以解决您的问题。

票数 0
EN

Stack Overflow用户

发布于 2018-08-02 14:30:29

Keras期望格式是这样的:(samples,rows,cols,channels),你的格式看起来是(samples,channels,rows,cols)。

尝试使用可选参数data_format指定数据格式,如下所示:

代码语言:javascript
复制
model.add(Convolution2D(32, 3, 3, border_mode='same', input_shape=(1,12,12), data_format = 'channels_first'))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51646275

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档