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
Natural Language Processing mit spaCy
Anleitung zur Übung
- 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 Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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)