开始使用免费开始使用

组合使用回调函数

深度学习模型的训练可能耗时很长,尤其是在模型更深、数据集更大时。每当性能提升时保存模型,并在性能不再提升时提前停止训练,这样您就不必过于纠结训练多少个 epoch。您也可以在任意时间恢复已保存的模型,并从中断处继续训练。

工作区中已经提供训练与验证数据:X_trainX_testy_trainy_test

请使用 EarlyStopping()ModelCheckpoint() 回调。把训练交给电脑,您就可以安心去享用一大罐曲奇啦!

本练习是课程的一部分

Keras 深度学习入门

查看课程

练习说明

  • tensorflow.keras 导入 EarlyStoppingModelCheckpoint 两个回调。
  • 创建 monitor_val_acc,作为一个 EarlyStopping 回调,监控 'val_accuracy'patience 设为 3 个 epoch。
  • 创建 model_checkpoint,作为一个 ModelCheckpoint 回调,将最优模型保存为 best_banknote_model.hdf5
  • 拟合模型时,传入包含上述回调的"列表",并使用 X_testy_test 作为验证数据。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Import the EarlyStopping and ModelCheckpoint callbacks
from tensorflow.____.____ import ____, ____

# Early stop on validation accuracy
monitor_val_acc = ____(monitor = ____, patience = ____)

# Save the best model as best_banknote_model.hdf5
model_checkpoint = ____(____, save_best_only = True)

# Fit your model for a stupid amount of epochs
h_callback = model.fit(X_train, y_train,
                    epochs = 1000000000000,
                    callbacks = [____, ____],
                    validation_data = (____, ____))
编辑并运行代码