【发布时间】:2019-03-13 21:00:36
【问题描述】:
我收到了错误:ValueError: Input 0 is incompatible with layer lstm_1: expected ndim=3, found ndim=2,代码如下:
def make_model():
model = Sequential()
model.add(Conv2D(20,(5,5), input_shape = (24,48,30), activation = "relu", strides = 1, padding = "valid"))
model.add(MaxPooling2D(pool_size=(2,2)))
model.add(Conv2D(50, (5,5), use_bias = 50))
model.add(MaxPooling2D(pool_size=(2,2)))
model.add(Flatten())
model.add(Dense(20, activation = "relu"))
model.add(LSTM(50, activation="relu", return_sequences=True))
return model
我的输入是 30 个大小为 24*48 的矩阵。
【问题讨论】:
-
尝试使用
input_shape=(24, 48) -
不,那行不通。给出错误
ValueError: Input 0 is incompatible with layer conv2d_1: expected ndim=4, found ndim=3 -
George 是对的,您不应该指定模型中的数据数量。如果问题仍然存在,请参阅:machinelearningmastery.com/…
-
检查您在 model.fit() 调用中作为 x_train 和 x_validation 给出的内容,它们的大小应该是 (30,24,48) 而不是 (24,48,30) 。 input_shape = (24,48,30) 应该是 input_shape = (24,48)
-
@yaminigoel:X_train的形状是什么?
标签: machine-learning keras recurrent-neural-network keras-layer