Normalização em lote de um modelo conhecido
Você se lembra do conjunto de dados de dígitos que treinou no primeiro exercício deste capítulo?

Um problema de classificação de várias classes que você resolveu usando o softmax
e 10 neurônios na camada de saída.
Agora você criará um novo modelo mais profundo que consiste em 3 camadas ocultas de 50 neurônios cada, usando a normalização em lote entre as camadas.
O parâmetro kernel_initializer
é usado para inicializar os pesos de forma semelhante.
Este exercício faz parte do curso
Introdução à aprendizagem profunda com o Keras
Instruções de exercício
- Importar
BatchNormalization
das camadas detensorflow.keras
. - Crie seu modelo de rede profunda, use 50 neurônios para cada camada oculta adicionando normalização de lote entre as camadas.
- Compile seu modelo com a descida de gradiente estocástica,
sgd
, como otimizador.
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
# Import batch normalization from keras layers
from tensorflow.____.____ import ____
# Build your deep network
batchnorm_model = ____
batchnorm_model.add(Dense(____, input_shape=(64,), activation='relu', kernel_initializer='normal'))
batchnorm_model.add(____)
batchnorm_model.add(Dense(____, activation='relu', kernel_initializer='normal'))
batchnorm_model.add(____)
batchnorm_model.add(Dense(____, activation='relu', kernel_initializer='normal'))
batchnorm_model.add(____)
batchnorm_model.add(Dense(10, activation='softmax', kernel_initializer='normal'))
# Compile your model with sgd
batchnorm_model.compile(optimizer=____, loss='categorical_crossentropy', metrics=['accuracy'])