Semantische Ähnlichkeit zur Kategorisierung von Text
Das Hauptziel semantischer Ähnlichkeit ist es, den Abstand zwischen den Bedeutungen eines Wortpaars, von Wortgruppen, Sätzen oder Dokumenten zu messen. Zum Beispiel ist das Wort „car“ „bus“ ähnlicher als „cat“. In dieser Übung findest du Sätze, die dem Wort sauce aus einem Beispieltext der Amazon Fine Food Reviews ähnlich sind. Du kannst spacy verwenden, um die Ähnlichkeitswerte zwischen dem Wort sauce und beliebigen Sätzen in einem gegebenen String texts zu berechnen und den Wert des ähnlichsten Satzes auszugeben.
Ein String texts ist vorab geladen und enthält alle Text-Daten der Rezensionen. Für diese Übung verwendest du das englische Modell en_core_web_md, das bereits als nlp verfügbar ist.
Diese Übung ist Teil des Kurses
<Kurs>Natural Language Processing mit spaCy</Kurs>Übungsanweisungen
- Verwende
nlp, umDoc-Container für das Wortsauceund fürtextszu erzeugen und speichere sie unterkeybzw.sentences. - Berechne die Ähnlichkeitswerte des Wortes
saucemit jedem Satz im Stringtexts(auf zwei Stellen gerundet).
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# 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)