Una combinación de callbacks
Los modelos de deep learning pueden tardar mucho en entrenarse, especialmente cuando usas arquitecturas más profundas y conjuntos de datos más grandes. Guardar tu modelo cada vez que mejora y detenerlo cuando deja de hacerlo te permite preocuparte menos por elegir el número de épocas de entrenamiento. También puedes restaurar un modelo guardado en cualquier momento y reanudar el entrenamiento donde lo dejaste.
Los datos de entrenamiento y validación del modelo están disponibles en tu espacio de trabajo como X_train, X_test, y_train y y_test.
Usa los callbacks EarlyStopping() y ModelCheckpoint() para poder irte a por un tarro de galletas mientras dejas el ordenador trabajando.
Este ejercicio forma parte del curso
Introducción al Deep Learning con Keras
Instrucciones del ejercicio
- Importa los callbacks
EarlyStoppingyModelCheckpointdesdetensorflow.keras. - Crea
monitor_val_acccomo un callbackEarlyStoppingque monitorice'val_accuracy', con unapatiencede 3 épocas. - Crea
model_checkpointcomo un callbackModelCheckpoint, y guarda el mejor modelo comobest_banknote_model.hdf5. - Ajusta tu modelo proporcionando una lista con los callbacks definidos y
X_testyy_testcomo datos de validación.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
# 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 = (____, ____))