【发布时间】:2020-08-31 15:57:11
【问题描述】:
我正在尝试创建一个 CNN + LSTM 网络,但 LSTM 层不接受输入形状。有什么我可以做的吗?
model = Sequential()
model.add(Conv2D(128, (2,2), padding = 'same', input_shape=(30, 216, 1)))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2,2)))
model.add(Dropout(0.2))
model.add(Conv2D(256, (2,2), padding = 'same'))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2,2)))
model.add(Dropout(0.2))
model.add(LSTM(512, input_shape = (7, 54, 256,)))
model.add(Flatten())
model.add(Dense(7, activation='softmax'))
ValueError:lstm_21 层的输入 0 与该层不兼容:预期 ndim=3,发现 ndim=4。收到的完整形状:[None, 7, 54, 256]
【问题讨论】:
-
你可以简单地采用reshape操作:stackoverflow.com/a/63789979/10375049
标签: python lstm sequential conv-neural-network