【发布时间】:2021-03-27 09:21:52
【问题描述】:
我是机器学习和 keras 的新手。我试图为我的分类问题创建一个 LSTM 模型,但我收到了这个错误:(我从互联网上得到了几个样本并试图修改它们)
ValueError:输入 0 与层序号_1 不兼容:预期形状=(无,无,30),发现形状=[无,3,1]这就是我需要的,我有一个像 1,2,3,4 这样的序列,其中 1,2,3 是我的 X_train,4 是标签(Y),所以 我的意思是时间步长是 3 和每个人只有一个特点
我的标签有 30 个类。所以我希望输出是这 30 个类之一。 64 是内存单元的数量。
这是我的代码
def get_lstm():
model = Sequential()
model.add(LSTM(64, input_shape=(3, 30), return_sequences=True))
model.add(LSTM(64))
model.add(Dropout(0.2))
model.add(Dense(30, activation='softmax'))
X_train = user_data[:, 0:3]
X_train = np.asarray(X_train).astype(np.float32)
X_train = np.reshape(X_train, (X_train.shape[0], X_train.shape[1], 1))
Y_train = user_data[:, 3]
Y_train = np.asarray(Y_train).astype(np.float32)
local_model = Mymodel.get_lstm()
local_model.compile(loss="categorical_crossentropy", optimizer="adam", metrics=['accuracy'])
local_model.set_weights(global_weights)
local_model.fit(X_train, Y_train, batch_size=32,
epochs=1)
如果您需要更多信息或不清楚,请告诉我。我真的需要你们的帮助,谢谢
【问题讨论】:
标签: tensorflow machine-learning keras lstm multiclass-classification