Efectos de la normalización por lotes
La normalización por lotes suele acelerar el aprendizaje de nuestros modelos y hacer que sus curvas de aprendizaje sean más estables. Vamos a comparar dos modelos idénticos, con y sin normalización por lotes.
El modelo que acabas de construir, batchnorm_model, está cargado para que lo uses. También tienes disponible una copia exacta sin normalización por lotes: standard_model. Puedes consultar su summary() en la consola. X_train, y_train, X_test y y_test también están cargados para que puedas entrenar ambos modelos.
Vas a comparar las curvas de aprendizaje de la exactitud de ambos modelos representándolas con compare_histories_acc().
Puedes consultar la función pegando show_code(compare_histories_acc) en la consola.
Este ejercicio forma parte del curso
Introducción al Deep Learning con Keras
Instrucciones del ejercicio
- Entrena
standard_modeldurante 10 épocas pasando los datos de entrenamiento y validación, y guarda su histórico enh1_callback. - Entrena
batchnorm_modeldurante 10 épocas pasando los datos de entrenamiento y validación, y guarda su histórico enh2_callback. - Llama a
compare_histories_accpasandoh1_callbackyh2_callback.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
# Train your standard model, storing its history callback
h1_callback = standard_model.fit(____, ____, validation_data=(____,____), epochs=____, verbose=0)
# Train the batch normalized model you recently built, store its history callback
h2_callback = batchnorm_model.fit(____, ____, validation_data=____, epochs=____, verbose=0)
# Call compare_histories_acc passing in both model histories
compare_histories_acc(____, ____)