O combinație de callback-uri
Modelele de învățare profundă pot dura mult până se antrenează, mai ales când treci la arhitecturi mai complexe și seturi de date mai mari. Dacă salvezi modelul de fiecare dată când se îmbunătățește și oprești antrenamentul când nu mai progresează, nu mai trebuie să-ți faci griji că alegi numărul greșit de epoci. Poți, de asemenea, să reiei oricând un model salvat și să continui antrenamentul de unde l-ai lăsat.
Datele de antrenament și de validare sunt disponibile în spațiul de lucru ca X_train, X_test, y_train și y_test.
Folosește callback-urile EarlyStopping() și ModelCheckpoint() ca să poți merge să mănânci un borcan de biscuiți cât timp calculatorul lucrează pentru tine!
Acest exercițiu face parte din cursul
Introducere în Deep Learning cu Keras
Instrucțiuni pentru exercițiu
- Importă atât callback-ul
EarlyStopping, cât șiModelCheckpointdintensorflow.keras. - Creează
monitor_val_accca un callbackEarlyStoppingcare va monitoriza'val_accuracy', cu o valoarepatiencede 3 epoci. - Creează
model_checkpointca un callbackModelCheckpointși salvează cel mai bun model cabest_banknote_model.hdf5. - Antrenează modelul furnizând o listă cu callback-urile definite și
X_testșiy_testca date de validare.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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 = (____, ____))