開始使用免費開始

回呼的組合拳

深度學習模型常常需要很長的訓練時間,特別是當你使用更深的架構和更大的資料集時。每當模型表現變好就儲存,以及在不再進步時提早停止,能讓你不必太糾結要訓練多少個 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 = (____, ____))
編輯並執行程式碼