回调是一个可以在训练的各个阶段执行动作的对象(例如,在一个周期的开始或结束、在单个批次之前或之后等)。
你可以使用回调来:
fit()
循环使用回调你可以将一个回调列表(作为关键字参数 callbacks
)传递给模型的 .fit()
方法:
my_callbacks = [
keras.callbacks.EarlyStopping(patience=2), # 提前停止
keras.callbacks.ModelCheckpoint(filepath='model.{epoch:02d}-{val_loss:.2f}.h5'), # 模型检查点
keras.callbacks.TensorBoard(log_dir='./logs'), # TensorBoard 日志
]
model.fit(dataset, epochs=10, callbacks=my_callbacks)
回调的相关方法将在训练的每个阶段被调用。
创建新的回调是自定义训练循环的一种简单而强大的方法。了解更多关于创建新回调的信息,请参考指南编写你自己的回调,并查看基础 Callback
类的文档。