Semantisk likhet för textklassificering
Huvudsyftet med semantisk likhet är att mäta avståndet mellan de semantiska betydelserna hos ett par ord, fraser, meningar eller dokument. Till exempel är ordet "car" mer likt "bus" än "cat". I den här övningen hittar du meningar som liknar ordet sauce i en exempeltext från Amazon Fine Food Reviews. Du kan använda spacy för att beräkna likhetspoängen mellan ordet sauce och varje mening i en given sträng texts, och rapportera poängen för den mest likartade meningen.
En sträng texts är förinläst och innehåller Text-data från alla recensioner. Du använder den engelska modellen en_core_web_md för den här övningen, som redan finns tillgänglig som nlp.
Den här övningen är en del av kursen
Naturlig språkbehandling med spaCy
Övningsinstruktioner
- Använd
nlpför att genereraDoc-behållare för ordetsauceoch förtexts, och lagra dem ikeyrespektivesentences. - Beräkna likhetspoängen mellan ordet
sauceoch varje mening i strängentexts(avrundade till två decimaler).
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Populate Doc containers for the word "sauce" and for "texts" string
key = ____
sentences = ____
# Calculate similarity score of each sentence and a Doc container for the word sauce
semantic_scores = []
for sent in sentences.____:
semantic_scores.append({"score": round(sent.____(____), 2)})
print(semantic_scores)