CommencezCommencez gratuitement

Partie 2 : Comprendre les modèles GRU

Vous allez maintenant voir comment utiliser des modèles Keras pour accepter des lots d'entrées de taille arbitraire. Cette capacité est importante pour plusieurs raisons. Par exemple, elle vous permet de définir un seul modèle Keras et d'expérimenter différentes tailles de lot pendant l'entraînement, sans rien changer au modèle.

Pour cet exercice, keras et numpy (comme np) ont déjà été importés.

Cette activité fait partie du cours

Traduction automatique avec Keras

Voir le cours

Instructions de l’exercice

  • Définissez une couche d'entrée qui accepte un lot de taille arbitraire avec une longueur de séquence de 3 et une taille d'entrée de 4.
  • Définissez une couche GRU avec 10 unités cachées qui consomme l'entrée précédente et produit une sortie.
  • Définissez un modèle appelé model qui prend la couche d'entrée en entrée et produit la sortie de la couche GRU en sortie. Rappelez-vous que vous pouvez utiliser la syntaxe keras.models.Model(<argument>=<value>) pour définir un modèle.
  • Prédisez la sortie du modèle pour x1 et pour x2.

Exercice interactif pratique

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

# Define an input layer
inp = keras.layers.____(____=(____))
# Define a GRU layer that takes in the input
gru_out = keras.layers.____(____)(____)
# Define a model that outputs the GRU output
____ = keras.models.____(inputs=____, outputs=____)

x1 = np.random.normal(size=(2,3,4))
x2 = np.random.normal(size=(5,3,4))

# Get the output of the model and print the result
y1 = ____.____(____)
y2 = ____.____(____)
print("shape (y1) = ", y1.shape, " shape (y2) = ", y2.shape)
Modifier et exécuter le code