TensorFlow.Keras ModelCheckpoint在训练时保存模型,为什么?

时间:2018-01-07 16:59:50

标签: tensorflow keras

我想知道为什么我们需要在训练时保存模型? 还不足以在火车开始时保存一次,然后只在火车上保存重量?

我的意思是,模型在火车期间没有变化,为什么需要这个布尔值?

class ModelCheckpoint(Callback):
...
save_weights_only: if True, then only the model's weights will be saved.
...

谢谢!

1 个答案:

答案 0 :(得分:1)

它不是一个需要或要求,它只是方便。在典型的DL / DS工作流程中,您可以训练许多具有不同配置的模型,并且很容易迷失。也许您现在已经保存了最佳模型的权重,但您不记得使用了哪种模型配置。该信息不是权重的一部分,必须单独记录。

然后Keras提供了一个简单的解决方案,用于存储模式(小于10 KB)和权重,因此在丢失原始模型配置的情况下,它仍然保存在同一个HDF5文件中。 / p>

还要考虑在没有模型配置的情况下将模型权重发送给其他人的情况,如何在没有模型的情况下加载权重?再一次它的便利性。