Una combinazione di callback
I modelli di deep learning possono richiedere molto tempo per l'addestramento, soprattutto quando passi ad architetture più profonde e insiemi di dati più grandi. Salvare il modello ogni volta che migliora e interrompere l'addestramento quando non migliora più ti permette di preoccuparti meno della scelta del numero di epoche. Puoi anche ripristinare un modello salvato in qualsiasi momento e riprendere l'addestramento da dove l'avevi lasciato.
I dati di addestramento e validazione del modello sono disponibili nel tuo workspace come X_train, X_test, y_train e y_test.
Usa i callback EarlyStopping() e ModelCheckpoint() così puoi andare a mangiare un barattolo di biscotti mentre lasci lavorare il computer!
Questo esercizio fa parte del corso
Introduzione al Deep Learning con Keras
Istruzioni dell'esercizio
- Importa i callback
EarlyStoppingeModelCheckpointdatensorflow.keras. - Crea
monitor_val_acccome callbackEarlyStoppingche monitori'val_accuracy', conpatiencedi 3 epoche. - Crea
model_checkpointcome callbackModelCheckpoint, salva il modello migliore comebest_banknote_model.hdf5. - Allena il modello passando una lista con i callback definiti e
X_testey_testcome dati di validazione.
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
# 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 = (____, ____))