【发布时间】:2020-04-18 21:52:41
【问题描述】:
我正在尝试实现一个keras LSTM。我在 keras.model.fit 中遇到错误。我不明白这个错误是什么意思。我的代码如下 -
print(x_train.shape)
print(y_train.shape)
word_input = Input(shape=(mxlen,), dtype="int32", name="word_input")
x1 = Embedding(len(vocab), 100, input_length=mxlen, weights=[embeddings], trainable=False)(word_input)
x1 = LSTM(100)(x1)
y = Dense(6, activation="softmax", name="main_output")(x1)
model = Model(inputs=[word_input], outputs=[y])
adam = optimizers.Adam(learning_rate=0.001, beta_1=0.9, beta_2=0.999, amsgrad=False)
model.compile(optimizer=adam,loss='categorical_crossentropy',metrics=['categorical_accuracy']) # have to look into it
model.fit(x_train, y_train, epochs=30, batch_size=40, verbose=1)
x_train 和 y_train 具有以下形状 - (10240, 198) 和 (10240,)。
我收到以下错误:
【问题讨论】:
-
只需将此行从
model.compile(optimizer=adam,loss='categorical_crossentropy',metrics=['categorical_accuracy']) # have to look into it更改为model.compile(optimizer=adam,loss='sparse_categorical_crossentropy',metrics=['accuracy']) # have to look into it。让我知道它是否适合你。
标签: keras lstm keras-layer tf.keras