【问题标题】:When training neural networks, does Tensorflow automatically revert back to the best epoch after finishing?训练神经网络时,Tensorflow 完成后会自动恢复到最佳 epoch 吗?
【发布时间】:2019-12-02 03:06:55
【问题描述】:

如果不是,为什么不呢?有时我会有一个 95% 的 epoch,然后以一个 10% 左右准确率的 epoch 结束。我只是永远无法判断它是否会回到那个最好的时代。

【问题讨论】:

  • 您不一定需要使用ModelCheckpoint 回调将模型文件保存在磁盘上。相反,您可以使用EarlyStopping 回调来获得最佳模型。见this answer

标签: python tensorflow machine-learning keras epoch


【解决方案1】:

如果你使用 Keras,那么在 ModelCheckpoint 回调中,设置 save_best_only=True。如果启用此选项,则它会保存模型,该模型会根据您设置的指标(您为 monitor 属性提到的损失或准确性)显示最佳结果。

在此处了解更多信息 - https://keras.io/callbacks/#modelcheckpoint

【讨论】:

  • 谢谢。出于某种原因,我尝试了 earlystopping 回调。这看起来像一个更好的匹配
  • 如果您觉得此答案有用,请将其标记为已接受的答案,这将对未来的用户有所帮助。谢谢:-)
【解决方案2】:

keras.callbacks.ModelCheckpoint(filepath, monitor='val_loss', verbose=0, save_best_only=True, save_weights_only=False, mode='auto', period=1)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-03-18
    • 2017-05-23
    • 1970-01-01
    • 2011-04-07
    • 1970-01-01
    • 1970-01-01
    • 2016-02-25
    • 1970-01-01
    相关资源
    最近更新 更多