对于Keras,我想在时代停止训练,这会返回最佳(在大多数情况下:最低)观察到的度量(例如val_loss)。我不喜欢在耐心“耗尽”之后使用网络状态。
我该怎么做?
答案 0 :(得分:2)
嗯......你真的不能停止"以最准确的方式,因为你需要知道未来的价值,以决定是否会有更好的价值观!
但您可以使用另一个回调ModelCheckpoint来保存每个纪元后的模型。
您可以传递参数save_best_only
,这样只有在受监控的值(在您的情况下为'val_loss'
)优于上次保存的模型时才会保存模型。
训练后,您可以加载已保存的模型:keras.models.load_model(filepath)
如果您在加载这样的已保存模型时遇到问题,可以尝试在回调中使用save_weights_only=True
。然后,您使用model.load_weights(filepath)
加载权重。