gpt4 book ai didi

python - 多个Conv1D层: Negative dimension size caused by subtracting 8 from 1 for 'conv1d_2/convolution/Conv2D

转载 作者:行者123 更新时间:2023-12-01 01:00:59 25 4
gpt4 key购买 nike

我对卷积网络还很陌生。我正在尝试在 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].

我原以为这可能与步幅导致的尺寸减小有关,但在为两条 Conv1D 线设置 strides=1 后仍然不起作用。这是我的代码。如果 for 循环运行,则会抛出错误。

#State branch
x = 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)

任何帮助或建议将不胜感激。谢谢!

最佳答案

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

有关更多信息,请参阅 docs .

关于python - 多个Conv1D层: Negative dimension size caused by subtracting 8 from 1 for 'conv1d_2/convolution/Conv2D,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55793513/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com