CommencerCommencer gratuitement

Une combinaison de callbacks

Les modèles de Deep Learning peuvent prendre beaucoup de temps à entraîner, surtout lorsque vous passez à des architectures plus profondes et à des jeux de données plus volumineux. Sauvegarder votre modèle à chaque amélioration et arrêter l’entraînement lorsqu’il ne progresse plus vous évite d’avoir à choisir précisément le nombre d’époques. Vous pouvez aussi restaurer un modèle sauvegardé à tout moment et reprendre l’entraînement là où vous l’avez laissé.

Les données d’entraînement et de validation du modèle sont disponibles dans votre espace de travail sous les noms X_train, X_test, y_train et y_test.

Utilisez les callbacks EarlyStopping() et ModelCheckpoint() pour pouvoir aller déguster un bocal de cookies pendant que votre ordinateur travaille !

Cet exercice fait partie du cours

Introduction au Deep Learning avec Keras

Afficher le cours

Instructions

  • Importez les callbacks EarlyStopping et ModelCheckpoint depuis tensorflow.keras.
  • Créez monitor_val_acc comme un callback EarlyStopping qui surveille 'val_accuracy', avec une patience de 3 époques.
  • Créez model_checkpoint comme un callback ModelCheckpoint, et sauvegardez le meilleur modèle sous le nom best_banknote_model.hdf5.
  • Entraînez votre modèle en fournissant une liste contenant les callbacks définis, et X_test et y_test comme données de validation.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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 = (____, ____))
Modifier et exécuter le code