回调是一种对象,可以在训练的不同阶段(例如,在每个 epoch 的开始或结束时,在单个 batch 之前或之后等)执行操作。
您可以使用回调来
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
类的文档。