CommencezCommencez gratuitement

Appliquer la normalisation par lot à un modèle familier

Vous vous souvenez du jeu de données digits que vous avez entraîné dans le premier exercice de ce chapitre?

Un problème de classification multiclasse que vous avez résolu à l'aide de softmax et de 10 neurones dans votre couche de sortie.

Vous allez maintenant créer un nouveau modèle plus profond composé de 3 couches cachées de 50 neurones chacune, en utilisant la normalisation par lot entre les couches. Le paramètre kernel_initializer sert à initialiser les poids de façon similaire.

Cette activité fait partie du cours

Introduction à Deep Learning avec Keras

Voir le cours

Instructions de l’exercice

  • Importez BatchNormalization à partir des couches de tensorflow.keras.
  • Construisez votre réseau profond, utilisez 50 neurones pour chaque couche cachée en ajoutant une normalisation par lot entre les couches.
  • Compilez votre modèle avec la descente de gradient stochastique, sgd, comme optimiseur.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# 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'])
Modifier et exécuter le code