CommencerCommencer gratuitement

Apprentissage par transfert

Vous avez constaté que lors de l'entraînement d'une couche d'intégration, il est nécessaire d'apprendre un grand nombre de paramètres.

Dans cet exercice, vous constaterez qu'en utilisant l'apprentissage par transfert, il est possible d'utiliser les poids pré-entraînés sans les mettre à jour, ce qui signifie que tous les paramètres de la couche d'intégration seront fixes et que le modèle n'aura qu'à apprendre les paramètres des autres couches.

La fonction load_glove est déjà chargée dans l'environnement et récupère la matrice du gant sous la forme d'un vecteur d'numpy.ndarray. Il utilise la fonction abordée dans les diapositives de la leçon pour récupérer les vecteurs gants avec 200 dimensions d'intégration pour le vocabulaire présent dans cet exercice.

Cet exercice fait partie du cours

Réseaux neuronaux récurrents (RNN) pour la modélisation du langage avec Keras

Afficher le cours

Instructions

  • Veuillez utiliser la fonction prédéfinie pour charger les vecteurs de gants.
  • Utilisez l'initialiseur Constant sur les vecteurs pré-entraînés.
  • Ajoutez la couche de sortie en tant qu'Dense e avec une unité.
  • Veuillez imprimer le résumé et vérifier les paramètres pouvant être ajustés.

Exercice interactif pratique

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

# Load the glove pre-trained vectors
glove_matrix = ____('glove_200d.zip')

# Create a model with embeddings
model = Sequential(name="emb_model")
model.add(Embedding(input_dim=vocabulary_size + 1, output_dim=wordvec_dim, 
                    embeddings_initializer=____(glove_matrix), 
                    input_length=sentence_len, trainable=False))
model.add(GRU(128))
model.add(____)
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])

# Print the summaries of the model with embeddings
model.____
Modifier et exécuter le code