Partie 2 : Définir le modèle complet
Saviez-vous qu'il a fallu environ 6 jours et 96 GPU pour entraîner une variante du Google Neural Machine Translator uniquement sur la tâche de traduction de l'anglais vers le français ?
Dans cet exercice, vous allez définir un modèle de traduction automatique neuronale de type encodeur-décodeur, similaire mais beaucoup plus simple. Plus précisément, vous utiliserez les entrées et sorties déjà définies pour créer un objet Model de Keras, puis vous compilerez le modèle avec une fonction de perte et un optimiseur fournis.
On met à votre disposition en_inputs (couche d'entrée de l'encodeur), en_out et en_state (sorties du GRU de l'encodeur), de_out (sortie du GRU du décodeur) et de_pred (prédiction du décodeur) que vous avez définis précédemment.
Cette activité fait partie du cours
Traduction automatique avec Keras
Instructions de l’exercice
- Définissez un
ModelKeras qui prenden_inputscomme entrées et les prédictions du décodeur (de_pred) comme sortie. - Compilez le modèle défini en appelant
<model>.compileavec l'optimiseur'adam', la perte d'entropie croisée et la justesse (acc) comme mesure. - Affichez le sommaire du modèle.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
from tensorflow.keras.models import Model
# Define a model with encoder input and decoder output
nmt = ____(____=____, outputs=____)
# Compile the model with an optimizer and a loss
nmt.____(optimizer=____, ____='categorical_crossentropy', metrics=[____])
# View the summary of the model
nmt.____()