我们想保存一个经过训练的模型,可以在应用程序中使用它。因此,问题在于,如果我们加载模型,则准确性会很低。参见下面的代码。
要保存模型:
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-损耗值:1.3789-精度:0.6353
加载后的精度和损失: 恢复的模型,准确性:36.92%损失:nan
因此我们知道,model.fit()和model.evaluate()之间存在差异。在启动应用程序后,如何改善模型结果。评估还是必须再次训练模型?
请帮助我们!预先感谢。
答案 0 :(得分:0)
根据模型的体系结构,某些层可能在评估期间不处于活动状态。这样的层可以是Dropout或BatchNormalization。由于这种结果可能会有所不同。