Mesures et validation avec Keras
Nous avons entraîné un modèle pour prédire des lettres en langue des signes dans l'exercice précédent, mais il n'est pas clair à quel point nous avons réussi. Dans cet exercice, nous allons améliorer l'interprétabilité de nos résultats. Comme nous n'avons pas utilisé de fraction de validation, nous n'avons observé des améliorations de performance que sur l'ensemble d'entraînement; toutefois, il est difficile de savoir quelle part était due au surapprentissage. De plus, comme nous n'avons pas fourni de mesure, nous n'avons vu que des diminutions de la fonction de perte, sans interprétation évidente.
Notez que keras a été importé pour vous à partir de tensorflow.
Cette activité fait partie du cours
Introduction à TensorFlow en Python
Instructions de l’exercice
- Configurez la première couche dense avec 32 nœuds, une fonction d'activation
sigmoid, et une forme d'entrée de (784,). - Utilisez l'optimiseur root mean square propagation, une perte de type categorical crossentropy et la mesure d'exactitude (accuracy).
- Réglez le nombre d'époques à 10 et utilisez 10 % de l'ensemble de données pour la validation.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Define sequential model
model = keras.Sequential()
# Define the first layer
model.add(keras.layers.Dense(____, ____, ____))
# Add activation function to classifier
model.add(keras.layers.Dense(4, activation='softmax'))
# Set the optimizer, loss function, and metrics
model.compile(optimizer='____', loss='____', metrics=['____'])
# Add the number of epochs and the validation split
model.fit(sign_language_features, sign_language_labels, epochs=____, validation_split=____)