gpt4 book ai didi

machine-learning - ValueError : Input 0 is incompatible with layer lstm_1: expected ndim=3, 发现 ndim=2 [keras]

转载 作者:行者123 更新时间:2023-11-30 08:53:19 27 4
gpt4 key购买 nike

我收到错误:ValueError:输入 0 与层 lstm_1 不兼容:预期 ndim=3,发现 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。

最佳答案

问题在于,在最后一个 Dense 层之后(在 lstm 层之前),输出形状为 (?, 20) 并且 lstm 层期望 3D 张量,而不是 2D。因此,您可以扩展以下维度为了在送入 lstm 层之前再添加一个。

您可以使用 tf.expand_dims 扩展维度(假设您使用tensorflow作为后端)tf expand

input_layer = Input((30,24,48))

model = Conv2D(20,(5,5), input_shape = (30,24,48), activation = "relu", strides = 1, padding = "valid")(input_layer)
model = MaxPooling2D(pool_size=(2,2))(model)
model = Conv2D(50, (5,5), use_bias = 50)(model)
model = MaxPooling2D(pool_size=(2,2))(model)
model = Flatten()(model)
model = Dense(20, activation = "relu")(model)
model = tf.expand_dims(model, axis=-1)
model = LSTM(50, activation="relu", return_sequences=True)(model)

(我没有使用顺序模式,我使用functional api,因为它更灵活)

如果您想使用顺序模型:

    model = Sequential()      

model.add(Conv2D(20,(5,5), input_shape = (30, 24, 48), 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(Lambda(lambda x: tf.expand_dims(model.output, axis=-1)))
model.add(LSTM(50, activation="relu", return_sequences=True))

您必须在Lambda内使用展开尺寸

关于machine-learning - ValueError : Input 0 is incompatible with layer lstm_1: expected ndim=3, 发现 ndim=2 [keras],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52714986/

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