繁体   English   中英

如何在 keras 和 python 中保存和使用经过训练的模型

[英]How to save and use a trained model in keras and python

我们想保存一个训练好的模型,我们可以在应用程序中使用它。 所以问题是,如果我们加载模型,准确率会很低。 请参阅下面的代码。

要保存模型:

    model.save("TrainedModel\\emotionDetector.h5")

加载模型:

    model = models.load_model("TrainedModel\\emotionDetector.h5")
    loss, acc = model.evaluate(X,  y, verbose=1)
    print('Restored model, accuracy: {:5.2f}%'.format(100*acc), loss)

保存前的精度和损失:损失:0.2324 - 精度:0.9202 - val_loss:1.3789 - val_accuracy:0.6353

加载后准确率和损失:恢复模型,准确率:36.92% 损失:nan

所以我们知道,model.fit() 和 model.evaluate() 是有区别的。 我们如何改进model.evaluate的这个结果,或者我们必须在启动应用程序后再次训练模型?

请帮助我们! 提前致谢。

根据模型的架构,某些层在评估期间可能未处于活动状态。 这些层可以是 Dropout 或 BatchNormalization。 因此,结果可能会有所不同。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM