CommencerCommencer gratuitement

Projection de vecteurs de mots

Vous pouvez visualiser des vecteurs de mots dans un nuage de points pour mieux comprendre comment le vocabulaire se regroupe. Pour les visualiser, il faut les projeter dans un espace bidimensionnel. Vous pouvez projeter les vecteurs en extrayant les deux composantes principales via une analyse en composantes principales (PCA).

Dans cet exercice, vous allez vous entraîner à extraire des vecteurs de mots et à les projeter dans un espace à deux dimensions en utilisant la bibliothèque PCA de sklearn.

Une courte liste de mots est fournie dans la liste words, ainsi que le modèle en_core_web_md. Le modèle est chargé sous le nom nlp. Toutes les bibliothèques et tous les paquets nécessaires sont déjà importés pour vous (PCA, numpy sous le nom np).

Cet exercice fait partie du cours

Traitement du langage naturel avec spaCy

Afficher le cours

Instructions

  • Extrayez les IDs des mots fournis et enregistrez-les dans la liste word_ids.
  • Extrayez les cinq premiers éléments des vecteurs de mots correspondants, puis empilez-les verticalement avec np.vstack() dans word_vectors.
  • Étant donné un objet pca, calculez les vecteurs de mots transformés en utilisant la fonction .fit_transform() de la classe pca.
  • Affichez la première composante des vecteurs transformés en utilisant l’indexation [:, 0].

Exercice interactif pratique

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

words = ["tiger", "bird"]

# Extract word IDs of given words
word_ids = [nlp.____.____[w] for w in words]

# Extract word vectors and stack the first five elements vertically
word_vectors = np.vstack([nlp.____.____[i][:5] for i in word_ids])

# Calculate the transformed word vectors using the pca object
pca = PCA(n_components=2)
word_vectors_transformed = pca.____(____)

# Print the first component of the transformed word vectors
print(____[:, 0])
Modifier et exécuter le code