Podobne słowa w słowniku
Wyszukiwanie semantycznie podobnych terminów ma wiele zastosowań w wyszukiwaniu informacji. W tym ćwiczeniu przećwiczysz znajdowanie terminu najbardziej zbliżonego znaczeniowo do słowa computer w słowniku modelu en_core_web_md.
Wektor słowa computer jest już wyodrębniony i zapisany jako word_vector. Model en_core_web_md jest załadowany jako nlp, a pakiet NumPy – jako np.
Do znalezienia semantycznie podobnych terminów możesz użyć funkcji .most_similar() obiektu nlp.vocab.vectors. Indeksowanie wyniku tej funkcji za pomocą [0][0] zwraca identyfikatory słów podobnych terminów. nlp.vocab.strings[<dane słowo>] pozwala znaleźć identyfikator danego słowa i analogicznie – zwrócić słowo powiązane z podanym identyfikatorem.
To ćwiczenie jest częścią kursu
Przetwarzanie języka naturalnego z użyciem spaCy
Instrukcje do ćwiczenia
- Znajdź semantycznie najbardziej podobny termin ze słownika
en_core_web_md. - Na podstawie identyfikatorów podobnych terminów utwórz listę podobnych słów.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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)