Efeitos da batch normalization
A batch normalization tende a aumentar a velocidade de aprendizado dos modelos e deixar as curvas de aprendizado mais estáveis. Vamos comparar dois modelos idênticos, com e sem batch normalization.
O modelo que você acabou de construir, batchnorm_model, já está carregado para você usar. Uma cópia exata dele sem batch normalization, standard_model, também está disponível. Você pode conferir o summary() de ambos no console. X_train, y_train, X_test e y_test também estão carregados para que você treine os dois modelos.
Você vai comparar as curvas de aprendizado de acurácia dos dois modelos, plotando-as com compare_histories_acc().
Você pode conferir a função colando show_code(compare_histories_acc) no console.
Este exercício faz parte do curso
Introdução ao Deep Learning com Keras
Instruções do exercício
- Treine o
standard_modelpor 10 épocas, passando os dados de treino e validação, e guarde o histórico emh1_callback. - Treine o seu
batchnorm_modelpor 10 épocas, passando os dados de treino e validação, e guarde o histórico emh2_callback. - Chame
compare_histories_accpassandoh1_callbackeh2_callback.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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(____, ____)