回调是一个对象,它可以在训练的不同阶段执行操作(例如,在每个 epoch 的开始或结束,在单个批次之前或之后等)。
您可以使用回调来
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'),
]
model.fit(dataset, epochs=10, callbacks=my_callbacks)
然后,回调的相关方法将在训练的每个阶段被调用。
创建新的回调是自定义训练循环的一种简单而强大的方法。了解有关在指南编写自己的回调中创建新回调的更多信息,并参考基础 Callback
类的文档。