Disambiguazione del senso delle parole con spaCy
La WSD (Word-Sense Disambiguation) è un problema classico: decidere con quale accezione una parola è usata in una frase. Determinare il senso corretto può essere cruciale per motori di ricerca, traduzione automatica e sistemi di question answering. In questo esercizio, farai pratica usando il POS tagging per la disambiguazione del senso delle parole.
Troverai due frasi contenenti la parola jam, con due accezioni diverse, e il tuo compito è identificare i POS tag per aiutarti a stabilire il senso corrispondente della parola in ciascuna frase.
Le due frasi sono disponibili nella lista texts. Il modello en_core_web_sm è già caricato e disponibile come nlp.
Questo esercizio fa parte del corso
Natural Language Processing con spaCy
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
texts = ["This device is used to jam the signal.",
"I am stuck in a traffic jam"]
# Create a list of Doc containers in the texts list
documents = [____ for t in texts]
# Print a token's text and POS tag if the word jam is in the token's text
for i, doc in enumerate(documents):
print(f"Sentence {i+1}: ", [(____, ____) for token in doc if "jam" in token.text], "\n")