![](/img/trans.png)
[英]Negative dimension size caused by subtracting 3 from 1 for 'Conv2D'
[英]Multiple Conv1D Layers: Negative dimension size caused by subtracting 8 from 1 for 'conv1d_2/convolution/Conv2D
關於卷積網絡,我仍然相當新手。 我正在嘗試在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 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'
。
有關詳細信息,請參閱文檔 。
必須在第一層之后將kernel_size更改為1。
編輯:或填充必須設置為相同! 謝謝。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.