1 回答
TA贡献1859条经验 获得超6个赞
是 6,因为编码目标在 [1,5] 中,但 keras sparse_cat 从 0 创建单热标签,因此它创建了另一个无用标签 (0)。
使用Dense(5, activation='softmax')你可以简单地做 y-1 以获得 [0,4] 中的标签并让它们从 0 开始
在 colab 链接之后,您可以更改:
model = tf.keras.Sequential([
tf.keras.layers.Embedding(vocab_size, embedding_dim, input_length=max_length),
tf.keras.layers.GlobalAveragePooling1D(),
tf.keras.layers.Dense(24, activation='relu'),
tf.keras.layers.Dense(5, activation='softmax')
])
model.compile(loss='sparse_categorical_crossentropy',optimizer='adam',metrics=['accuracy'])
history = model.fit(train_padded, training_label_seq-1, epochs=num_epochs, validation_data=(validation_padded, validation_label_seq-1), verbose=2)
添加回答
举报