Liknande ord i ett vokabulär
Att hitta semantiskt liknande termer har många användningsområden inom informationssökning. I den här övningen ska du öva på att hitta den mest semantiskt liknande termen till ordet computer från vokabuläret i modellen en_core_web_md.
Ordinbäddningen (word vector) för computer är redan extraherad och lagrad som word_vector. Modellen en_core_web_md är redan inläst som nlp, och NumPy-paketet är inläst som np.
Du kan använda funktionen .most_similar() på objektet nlp.vocab.vectors för att hitta de mest semantiskt liknande termerna. Genom att indexera utdata från den här funktionen med [0][0] får du ord-ID:na för de semantiskt liknande termerna. nlp.vocab.strings[<ett givet ord>] kan användas för att hitta ord-ID:t för ett givet ord, och kan på samma sätt returnera ordet som motsvarar ett givet ord-ID.
Den här övningen är en del av kursen
Naturlig språkbehandling med spaCy
Övningsinstruktioner
- Hitta den mest semantiskt liknande termen från vokabuläret i
en_core_web_md. - Ta fram listan med liknande ord utifrån ord-ID:na för de liknande termerna.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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)