Efectos de la normalización por lotes
La normalización por lotes tiende a aumentar la velocidad de aprendizaje de nuestros modelos y a hacer más estables sus curvas de aprendizaje. Veamos cómo se comparan dos modelos idénticos con y sin normalización de lotes.
El modelo que acaba de construir batchnorm_model está cargado para que pueda utilizarlo. Una copia exacta sin normalización por lotes: standard_model también está disponible. Puedes consultar su summary() en la consola. X_train, y_train, X_test, y y_test también se cargan para que puedas entrenar ambos modelos.
Comparará las curvas de aprendizaje de precisión de ambos modelos trazándolas con compare_histories_acc().
Puede comprobar la función pegando show_code(compare_histories_acc) en la consola.
Este ejercicio forma parte del curso
Introducción al aprendizaje profundo con Keras
Instrucciones del ejercicio
- Entrena el
standard_modeldurante 10 épocas pasando datos de entrenamiento y validación, almacenando su historial enh1_callback. - Entrene su
batchnorm_modeldurante 10 épocas pasando datos de entrenamiento y validación, almacenando su historial enh2_callback. - Llama a
compare_histories_accpasando porh1_callbackyh2_callback.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# 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(____, ____)