Named Entities (NER)
Benannte Entitäten erkennen
Neben POS-Informationen können die spaCy-Modelle auch benannte Entitäten erkennen und uns die Information zur Verfügung stellen. Eine benannte Entität kann zum Beispiel eine Person, Organisation, Firma oder ein Land sein.
import spacy
# Load English model
nlp = spacy.load("en_core_web_sm")
# Define the text and store it on a variable
text = "With Michael Jordan on the team, the Chicago Bulls won 6 NBA championship titles during the 1990s."
# Run the NLP process pipeline and save result on variable 'doc'
doc = nlp(text)
# Iterate over the predicted entities
for ent in doc.ents:
# Print the entity text and its label
print(ent.text, ent.label_)Wenn die ner-Komponente ausgeführt wurde, können wir über doc.ents auf die Informationen bezüglich der gefundenen Entitäten zugreifen. Dabei beinhaltet ent.text den Token selbst und ent.label_ das Kürzel für den Typ der Entität.
Das Script oben erzeugt folgende Ausgabe:
Um herauszufinden, was die einzelnen Abkürzungen bedeuten, könnt ihr spacy.explain() aufrufen:
Visualisierung der erkannten Entitäten
Mit displaCy bietet spaCy eine Möglichkeit, erkannte Entitäten in einem Text visuell hervorzuheben:
Das Ergebnis sieht in Databricks so aus:

Wir können auch nur bestimmte Entitäten hervorheben lassen sowie die Farbe ändern:
Das neue Ergebnis sieht dann so aus:

Links
Das Abkürzungs-Schema für das englische Modell findet ihr hier:
Mehr zu den Möglichkeiten der Visualisierung in spaCy findet ihr hier:
Last updated
Was this helpful?