IniziaInizia gratis

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

Visualizza il corso

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")
Modifica ed esegui il codice