为什么训练有素的模型给出不同的评估结果? 82%和5%

问题描述

我实现了seq-Keras模型,并成功对其进行了训练。

ipfs config Addresses.Gateway /ip4/0.0.0.0/tcp/8080
ipfs config Addresses.API /ip4/0.0.0.0/tcp/5001
ipfs config --json API.HTTPHeaders.Access-Control-Allow-Origin "[\"*\"]"
ipfs config --json API.HTTPHeaders.Access-Control-Allow-Credentials "[\"true\"]"

下一步: 现在我运行这段代码

...
model.fit(...)
...
>>Result:  Successfully completed: TrainAcc=99%,ValAcc=88%

下一步: 但是当我加载保存的模型(Model88)并进行评估时:

model.save('Model88.h5')
model.evaluate(X_test,y_test)
   Result >> accuracy: 0.8216

测试数据相同,保存的模型和加载的模型相同!

为什么会这样?准确性: 82%-> 5% !!!!

解决方法

我之前也遇到过同样的问题,我发现在训练过程中错误地计算了测试的准确性。我已将测试批大小更改为1来解决它。