Comparaison du nombre de paramètres
Vous avez constaté que la représentation one-hot n'est pas une bonne représentation des mots, car elle est très clairsemée. L'utilisation de la couche « Embedding
» permet d'obtenir une représentation dense des vecteurs, mais nécessite également l'apprentissage de nombreux paramètres.
Dans cet exercice, vous allez comparer le nombre de paramètres de deux modèles en utilisant les encodages « embeddings
» et « one-hot
» afin de constater la différence.
Le modèle model_onehot
est déjà chargé dans l'environnement, tout comme les modèles Sequential
, Dense
et GRU
provenant de keras
. Enfin, les paramètres vocabulary_size=80000
et sentence_len=200
sont également chargés.
Cet exercice fait partie du cours
Réseaux neuronaux récurrents (RNN) pour la modélisation du langage avec Keras
Instructions
- Veuillez importer la couche «
Embedding
» à partir de l'adresse suivante :keras.layers
. - Au niveau de la couche d'intégration, veuillez utiliser la taille du vocabulaire plus un comme dimension d'entrée et la taille de la phrase comme longueur d'entrée.
- Compilez le modèle.
- Veuillez imprimer le résumé du modèle avec intégration.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Import the embedding layer
from tensorflow.keras.layers import ____
# Create a model with embeddings
model = Sequential(name="emb_model")
model.add(Embedding(input_dim=____, output_dim=wordvec_dim, input_length=____, trainable=True))
model.add(GRU(128))
model.add(Dense(1))
model.____(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
# Print the summaries of the one-hot model
model_onehot.summary()
# Print the summaries of the model with embeddings
model.____