为了账号安全,请及时绑定邮箱和手机立即绑定

多个 Conv1D 层:'conv1d_2/convolution/Conv2D 从 1 中减去

多个 Conv1D 层:'conv1d_2/convolution/Conv2D 从 1 中减去

泛舟湖上清波郎朗 2022-01-18 16:24:25
我对卷积网络还是很陌生。我正在尝试在 Keras 中实现多个 Conv1D 层。不幸的是,在第一层之后,任何后续层都会抛出以下错误:tensorflow.python.framework.errors_impl.InvalidArgumentError: Negative dimension size caused by subtracting 8 from 1 for 'conv1d_2/convolution/Conv2D' (op: 'Conv2D') with input shapes: [?,1,1,32], [1,8,32,32].我曾认为这可能与由于步幅而减小尺寸有关,但在设置strides=1两条 Conv1D 线后它仍然不起作用。这是我的代码。如果 for 循环运行,则抛出错误。#State branchx = Conv1D(layerSize,8,strides=1)(inputState)x = Activation("relu")(x)for l in range(conv1Layer-1):    x = Conv1D(layerSize,8,strides=1)(x)    x = Activation("relu")(x)x = MaxPooling1D(pool_size=1)(x)x = Flatten()(x)x = Model(inputs=inputState, outputs=x)任何帮助或建议将不胜感激。谢谢!
查看完整描述

2 回答

?
慕容708150

TA贡献1831条经验 获得超4个赞

如果您不希望卷积后长度发生变化,请考虑padding='same'在 的构造函数中指定Conv1d

有关更多信息,请参阅文档


查看完整回答
反对 回复 2022-01-18
?
宝慕林4294392

TA贡献2021条经验 获得超8个赞

kernel_size 必须在第一层之后更改为 1。

编辑:或者填充必须设置为相同!谢谢。


查看完整回答
反对 回复 2022-01-18
  • 2 回答
  • 0 关注
  • 254 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号