CommencerCommencer gratuitement

Définition de l'encodeur

Vous allez maintenant faire votre premier pas vers la création d'un modèle de traduction automatique : l'implémentation de l'encodeur. L'encodeur que vous allez implémenter est un modèle très simple comparé aux modèles complexes utilisés dans des applications réelles telles que le service de traduction automatique de Google. Cependant, ne vous inquiétez pas, bien que le modèle soit simple, les concepts sont les mêmes que ceux des modèles complexes. Nous utiliserons ici le préfixe en (par exemple en_gru) pour désigner tout ce qui concerne l'encodeur et de pour désigner tout ce qui concerne le décodeur (par exemple de_gru).

Vous remarquerez que nous avons choisi une valeur pour l en_vocab inférieure (150) à la valeur réelle (228) que nous avons trouvée. Réduire le vocabulaire diminue l'empreinte mémoire du modèle. Il est acceptable de réduire légèrement le vocabulaire, car nous supprimons les mots les plus rares. Dans le cadre de la traduction automatique, les mots rares ont généralement moins de valeur que les mots courants.

Cet exercice fait partie du cours

Traduction automatique avec Keras

Afficher le cours

Instructions

  • Définissez une couche d'Input s pour une entrée dont la taille du vocabulaire est en_vocab et la longueur de la séquence est en_len, à l'aide de l'argument shape.
  • Définissez une couche d'keras.layers.GRU qui comporte un hsize, des unités cachées et renvoie son état.
  • Obtenez les résultats de la couche GRU en entrant en_inputs, puis attribuez l'état GRU à en_state et le résultat à en_out.
  • Définissez un modèle de classification ( keras.models.Model ) dont l'entrée est « en_inputs » et la sortie « en_state », puis affichez le résumé du modèle.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

import tensorflow.keras as keras

en_len = 15
en_vocab = 150
hsize = 48

# Define an input layer
en_inputs = keras.layers.____(____=____)
# Define a GRU layer which returns the state
en_gru = ____(____, ____=____)
# Get the output and state from the GRU
____, ____ = ____(____)
# Define and print the model summary
encoder = ____(inputs=____, ____=____)
print(encoder.____)
Modifier et exécuter le code