Named-entity recognition (NER) ist ein Schlagwort, das Sie vielleicht schon im Zusammenhang mit Natural Language Processing gelesen haben. Natural Language Processing bezeichnet grundlegend die algorithmische Verarbeitung natürlicher Sprache. Diese Disziplin der Informatik bildet eine besondere Herausforderung, weil menschliche Sprache ein Beispiel für unstrukturierte bzw. schwach strukturierte Information ist – ganz im Gegensatz zu stark strukturierten Daten, wie relationalen Datenbanken.
Die NER befasst sich damit, in einem Text sogenannte Entitäten zu finden, mithilfe derer Fragen nach dem Wer, Was, Wo und Wann beantwortet werden können. Beispiele für Entitäten sind dabei Namen von Personen und Ländern, aber auch Kontonummern oder Datumsangaben. Zur NER gehört sowohl die Erkennung von Entitäten als auch ihre Kategorisierung.
Aus dem Satz „Max Mustermann wurde am 01.01.2020 von der Sparkasse eingestellt“ lassen sich beispielsweise folgende Entitäten erkennen:
In unserem E-Book erfahren Sie die wichtigsten Inhalte rund um das Thema künstliche Intelligenz & wie Sie davon profitieren können!
Erste Forschungen auf dem Gebiet der Name-entity recognition wurden im Rahmen der 6. Message Unterstanding Conference (kurz MUC-6) der DARPA durchgeführt. Die vorigen fünf MUCs befassten sich primär mit der Extraktion eng definierter Ereignisse aus einem freien Text. Im Rahmen der MUC-6 hingegen wurde das Ziel gesteckt, allgemeinere Entitäten – d.h. Namen, zeitbezogene und numerische Ausdrücke – zu erkennen, ohne dabei eine spezifische Domäne festzulegen.
NER bring verschiedene Herausforderungen mit sich:
Es gibt verschiedene Verfahren, die Sie für NER nutzen können. Hauptsächlich wird dabei zwischen zwei Herangehensweisen unterschieden:
Im Rahmen der regelbasierten Extraktion erstellen Sie ein System von Regeln, das zur Erkennung von Entitäten genutzt werden kann. Ein Beispiel für eine Regel kann dabei sein, dass die Wörter „Frau“ oder „Herr“, gefolgt von weiteren Wörtern und einem Nachnamen aus einer Liste häufiger deutscher Nachnamen, eine Person bezeichnen. Diese Regel würde Beispielsweise „Frau Erika Mustermann“ als Person erkennen.
Regelbasierte Systeme zur NER sind sehr aufwendig in der Erstellung, erzielen aber tendenziell bei einem spezifischen Gebiet und festgelegten Entitätstypen gute Ergebnisse. Allerdings ist ihre Transferierbarkeit auf andere Anwendungsgebiete stark eingeschränkt.
Ein weiterer Ansatz ist die Nutzung von supervised Machine Learning. Hier können Sie auf eine große Menge verschiedener Methoden zurückgreifen, wie zum Beispiel Hidden Markov Models (HMM) oder Conditional Random Fields (CRF). Für dieses Verfahren muss zunächst ein Textkorpus annotiert werden, d.h. Sie markieren und kategorisieren die darin vorkommenden Entitäten. Anschließend wird ein Machine-Learning-Modell trainiert, das anhand statistischer Zusammenhänge – beispielsweise im Satzbau – lernt, Entitäten zu erkennen.
Der Nachteil der Nutzung von supervised Machine Learning ist, dass Sie große Mengen annotierter Texte benötigen, um ein Machine-Learning-Modell trainieren zu können. Je größer der vorliegende Datensatz für das Training ist, desto besser funktioniert das damit erstellte Modell. Allerdings können Sie im Gegensatz zu regelbasierten Systemen so angelernte Modelle leichter für andere Anwendungsfälle nutzen.
Aufgrund der Vorteile setzen beispielsweise die beiden Python-Libraries NLTK und spacy Machine-Learning-Modelle zur NER ein.
Allgemein finden sich Anwendungsfälle für NER überall dort, wo beispielsweise ihre Kunden die Möglichkeit haben, Freitexte einzugeben. Zwei Anwendungsfälle möchte ich im Folgenden skizzieren:
Kundensupport: Wenn Sie im Kundensupport ein Ticketsystem einsetzen, kennen Sie das Problem, dass eingehende Tickets ggf. erst von einem Mitarbeiter geprüft und etwa anhand betroffener Produkte kategorisiert werden müssen. Bei dieser aufwendigen Arbeit kann ein System mithilfe von NER unterstützen: Der vom Kunden eingegebene Text wird untersucht und mithilfe von NER werden Entitäten erkannt und kategorisiert. Dabei können beispielsweise der Name eines Produktes oder einer Filiale erkannt werden. Anschließend kann das Ticket entsprechend kategorisiert werden, um direkt beim richtigen Supportmitarbeiter zu landen.
Voranalyse von Schadensfällen: Wenn eine Versicherung dem Kunden die digitale Meldung von Schadensfällen erlaubt, kann NER zur Voranalyse dieser Meldungen genutzt werden. Beispiele für Entitäten, die hier erkannt werden können, sind etwa an einem Verkehrsunfall beteiligte Parteien. Geht es um Schadensfälle für Geräteversicherungen, können betroffene Geräte identifiziert werden.
In diesem E-Book erfahren Sie, wie Sie KI in Ihrem Unternehmen einsetzen können.
Haben Sie noch Fragen, wie Sie NER in Ihrem Unternehmen nutzen können? Schreiben Sie mir einfach unter info-ki@mindsquare.de und wir sprechen einmal über Ihre aktuelle Situation.
Vollumfängliche Implementierungs- und Betriebsunterstützung für führende Softwareprodukte unserer Partnerunternehmen:
Vollumfängliche Implementierungs- und Betriebsunterstützung für führende Softwareprodukte unserer Partnerunternehmen:
Vollumfängliche Implementierungs- und Betriebsunterstützung für führende Softwareprodukte unserer Partnerunternehmen:
Vollumfängliche Implementierungs- und Betriebsunterstützung für führende Softwareprodukte unserer Partnerunternehmen: