我想我已经找到了解决方案
首先,我将激活层更改为线性,以便接收@loannis Nasios概述的logit。
其次,为了仍然获得
sparse_categorical_crossentropy损失函数,我定义了自己的损失函数,将from_logits参数设置为true。
model.add(embedding_layer)model.add(LSTM(n_hidden, return_sequences=False))model.add(Dropout(dropout_keep_prob))model.add(Dense(vocab_size))model.add(Activation('linear'))optimizer = RMSprop(lr=self.lr)def my_sparse_categorical_crossentropy(y_true, y_pred): return K.sparse_categorical_crossentropy(y_true, y_pred, from_logits=True)model.compile(optimizer=optimizer,loss=my_sparse_categorical_crossentropy)


