Mots similaires dans un vocabulaire
Trouver des termes sémantiquement proches a de nombreuses applications en recherche d’information. Dans cet exercice, vous allez chercher le terme le plus proche du mot computer dans le vocabulaire du modèle en_core_web_md.
Le vecteur du mot computer a déjà été extrait et stocké dans word_vector. Le modèle en_core_web_md est déjà chargé dans nlp, et le paquet NumPy est chargé sous np.
Vous pouvez utiliser la fonction .most_similar() de l’objet nlp.vocab.vectors pour trouver les termes les plus proches sémantiquement. Utiliser [0][0] pour indexer la sortie de cette fonction renverra les identifiants (IDs) des mots similaires. nlp.vocab.strings[<un mot donné>] permet de trouver l’ID d’un mot donné et peut, de la même manière, renvoyer le mot associé à un ID donné.
Cet exercice fait partie du cours
Traitement du langage naturel avec spaCy
Instructions
- Trouvez le terme le plus proche sémantiquement dans le vocabulaire
en_core_web_md. - Trouvez la liste des mots similaires à partir des IDs des termes similaires.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Find the most similar word to the word computer
most_similar_words = nlp.vocab.vectors.____(np.asarray([____]), n = 1)
# Find the list of similar words given the word IDs
words = [nlp.____.____[____] for w in most_similar_words[0][0]]
print(words)