我已经训练了模型中使用word2vec和使用keras的LSTM模型来预测主题类别,并有大约训练期间98%的准确率,我保存的模型,然后装到另一个文件试图在测试集,我用model.evaluate和model.predict,结果非常不一样。
我使用 keras 和 tensorflow 作为后端,模型摘要是:
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
lstm_1 (LSTM) (None, 22) 19624
_________________________________________________________________
dropout_1 (Dropout) (None, 22) 0
_________________________________________________________________
dense_1 (Dense) (None, 40) 920
_________________________________________________________________
activation_1 (Activation) (None, 40) 0
=================================================================
Total params: 20,544
Trainable params: 20,544
Non-trainable params: 0
_________________________________________________________________
None
Run Code Online (Sandbox Code Playgroud)
编码:
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
model.load_weights(os.path.join('model', 'lstm_model_weights.hdf5'))
score, acc = model.evaluate(x_test, y_test, batch_size=batch_size)
print()
print('Score: %1.4f' % score)
print('Evaluation Accuracy: %1.2f%%' % (acc*100))
predicted = model.predict(x_test, batch_size=batch_size)
acc2 …Run Code Online (Sandbox Code Playgroud)