Création du modèle de génération de texte
Dans cet exercice, vous allez définir un modèle de génération de texte à l'aide de Keras.
Les variables « n_vocab
» contenant la taille du vocabulaire et « input_shape
» contenant la forme des données utilisées pour l'entraînement sont déjà chargées dans l'environnement. De plus, les poids d'un modèle pré-entraîné sont disponibles dans le fichier model_weights.h5
. Le modèle a été entraîné avec 40
époques sur les données d'entraînement. Rappelons que pour entraîner un modèle dans Keras, il suffit d'utiliser la méthode .fit()
sur les données d'entraînement (X, y)
et le paramètre epochs
. Par exemple :
model.fit(X_train, y_train, epochs=40)
Cet exercice fait partie du cours
Réseaux neuronaux récurrents (RNN) pour la modélisation du langage avec Keras
Instructions
- Ajoutez une couche d'
LSTM
s renvoyant les séquences. - Ajoutez une couche d'
LSTM
e qui ne renvoie pas les séquences. - Ajoutez la couche de sortie avec des unités d'
n_vocab
. - Afficher le résumé du modèle.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Instantiate the model
model = Sequential(name="LSTM model")
# Add two LSTM layers
model.add(____(64, input_shape=input_shape, dropout=0.15, recurrent_dropout=0.15, return_sequences=____, name="Input_layer"))
model.add(____(64, dropout=0.15, recurrent_dropout=0.15, return_sequences=____, name="LSTM_hidden"))
# Add the output layer
model.add(Dense(____, activation='softmax', name="Output_layer"))
# Compile and load weights
model.compile(loss='categorical_crossentropy', optimizer='adam')
model.load_weights('model_weights.h5')
# Summary
model.____