Natural Language Processing punktet vor allem bei Textsuche, -klassifikation und -analyse

bei

 / 18. July. 2019

Der Markt für NLP (Natural Language Processing)-basierte Software wächst trotz aller technischen Herausforderungen auf breiter Front. Moderne NLP-Lösungen, die auf den drei Grundpfeilern Lexika, Regeln und Maschinellem Lernen basieren, eröffnen gerade in den Bereichen Textsuche,
-klassifikation und -analyse gänzlich neue Möglichkeiten.

Der Begriff NLP (Natural Language Processing) beschreibt ganz allgemein die Erfassung und computerbasierte Verarbeitung natürlicher Sprache mit Verfahren der Künstlichen Intelligenz (KI). Der Fokus dieses Blog-Beitrags liegt auf der Verarbeitung von Text, nicht von gesprochener Sprache (Speech).

Die zunehmende Bedeutung von NLP zeigt sich im Consumer-Bereich in der Etablierung von digitalen Assistenten wie Siri, Cortana oder dem Google Assistent. In Unternehmensanwendungen halten solche Technologien insbesondere in Enterprise-Search-Anwendungen Einzug. Die reine Keyword-basierte Suche ist hier nicht mehr Stand der Technik. Gartner etwa prognostiziert, dass 30 Prozent der internen Suchanfragen (Enterprise Search) künftig mit W-Fragen beginnen, also mit Fragewörtern wie „Was“, „Wer“, „Wie“, „Wo“ oder „Wann“.

Dass das Verarbeiten und Verstehen natürlicher Sprache mit ihrer Komplexität und Mehrdeutigkeit eine immense Herausforderung darstellt, zeigen einfache Beispiele: Die unterschiedliche Rolle von „Löffel“ und „Nudeln“ in den Sätzen „Ich esse die Suppe mit den Nudeln“ und „Ich esse die Suppe mit dem Löffel“ sind mit einer einfachen syntaktischen Analyse nicht korrekt zu erfassen. Auch im Englischen ist das nicht einfacher wie folgende aus Nachrichten übernommene Titel zeigen: „Scientists watch whales from space“, „The pope’s baby steps on gays“.

NLP nutzt Lexika, Regeln und Maschinelles Lernen

Zur Bewältigung dieser Herausforderung nutzt NLP verschiedene KI-Methoden, vor allem Lexika und regelbasierte Verfahren (klassische Computerlinguistik) und Maschinelles Lernen (ML), etwa in der Form des Deep Learning.

Klassische Computerlinguistik

Die Analyse und Aufbereitung von Text mittels klassischer computerlinguistischer Verfahren besteht aus folgenden Schritten:

  1. Erkennung von Wörtern und ihre Normalisierung

Zunächst wird der Text in eine Folge von Wörtern zerlegt. Wichtig ist auch die Normalisierung dieser Wörter und für die weitere Verarbeitung die Bestimmung des Wort-Typs (Substantiv, Verb, usw.). Beides wird meist auf Basis von Lexika realisiert. Beispiele sind etwa die Lemmatisierung, um bei einer Suche nach „Buch“ auch „Bücher“ zu finden, oder die Komposita-Zerlegung, die „Buchhandel“ und „Kinderbuch“ als Treffer ermöglicht. Meist ist auch noch eine weitere Normalisierung auf den Wortstamm (Tänzer -> tanzen) notwendig. Ebenso sind semantische Lexika mit Thesauren erforderlich, damit verwandte Begriffe wie „Auto“ und „Kfz“ miteinander identifiziert werden können.

In Chinesisch oder Japanisch kann schon die Identifizierung der Wortgrenzen nur über große Lexika gelöst werden.

  1. Erkennen von Entitäten

Bei Entitäten handelt es sich etwa um Namen von Personen, Unternehmen, Produkten oder Orten. Basis für das Erkennen dieser Informationseinheiten sind spezielle Lexika (zum Beispiel typische Vor- und Nachnamen) und typische Kontexte dieser Entitäten. So stellen Formulierungen wie „liegt in“ oder „wohnhaft in“ typische Kontexte für Ortsangaben dar. Regelbasiert wird dann auf Basis von Matches mit den Lexika und den Kontextbeschreibungen entschieden, ob für eine konkrete Textstelle eine Entität identifiziert werden kann.

  1. Erkennung von Wortgruppen, Satzstrukturen und Relationen

Die Königsdisziplin der klassischen Computerlinguistik ist die syntaktisch-semantische Analyse kompletter Sätze. Auf Basis der Informationen der beiden vorherigen Analyseschritte und Grammatiken können komplette Sätze analysiert werden. Dabei werden größere Wortgruppen – in obigen Beispielen „mit dem Löffel“ und „mit den Nudeln“ – identifiziert und im ersten Fall als Attribut zum Verb „essen“, im zweiten Fall als Teil des Satz-Objekts „Suppe“ identifiziert. Somit können dann Relationen erkannt werden. Aus dem Satz „Das Unternehmen Microsoft wurde am 4. April 1975 von Bill Gates und Paul Allen gegründet“ kann zum Beispiel eine Relation (Gründungs-Relation) zwischen den beiden genannten Personen und dem Unternehmen Microsoft extrahiert werden. Auf Basis erkannter Relationen können dann zuverlässig Fragen beantwortet werden.

Maschinelle Lernverfahren

Schon lange werden klassische computerlinguistische Verfahren durch ML ergänzt oder ersetzen diese sogar. Aufgaben wie die Bestimmung von Textsprache, Thema eines Textes (Klassifikation) oder Stimmung (Sentiment) werden fast ausschließlich mit ML gelöst. Auch zur Erkennung von Entitäten wird häufig ML eingesetzt. Jedoch hatten ML-Verfahren bisher zwei grundsätzliche Nachteile: 1. Es wurden große Mengen von manuell analysierten Beispieltexten als Trainingsmengen benötigt. 2. Bis vor ein paar Jahren war ML eher eine Domäne für Experten, da die Aufbereitung der Texte (Feature-Engineering) oft eine entscheidende Voraussetzung für den Erfolg war.

Mit der Entwicklung der Deep-Learning-Ansätze der letzten Jahre werden die Karten neu verteilt. Zum einen ist das oben erwähnte Feature-Engineering weniger wichtig, da die tiefen Neuronalen Netze in der Lage sind, die für die jeweilige Anwendung entscheidenden Features automatisch zu generieren. Wichtig für den Erfolg von Deep Learning im Bereich NLP sind die sogenannten Word Embeddings. Es handelt sich hierbei um neuronale Repräsentationen für Wörter. Wörter, die typischerweise in ähnlichen Kontexten verwendet werden und damit auch semantisch ähnlich sind, bekommen automatisch ähnliche Repräsentationen. Für das Training von Word Embeddings sind keine manuell analysierten Trainingsbeispiele notwendig. Große Textmengen, die ja ausreichend zur Verfügung stehen, genügen völlig. Word Embeddings können manuell generierte Lexika ersetzen oder zumindest ergänzen.

Mit ähnlichen Ansätzen kann man Repräsentationen für ganze Sätze generieren. Deep-Learning-Enthusiasten propagieren gar die komplette Ersetzung klassischer computerlinguistischer Ansätze und klassischer Suchmaschinentechnologie. Die Zukunft wird zeigen, ob wir hier einen kompletten Technologiewandel erleben oder ob eher die Kombination neuer und alter Ansätze weiterführt.

NLP bietet dialogbasierte Suche, Textklassifikation und
-analyse

Die Vorteile eines NLP-Einsatzes sind weitreichend. Wir wollen hier insbesondere drei Anwendungen im Unternehmensbereich skizzieren:

  1. die intelligente natürlichsprachliche dialogbasierte Suche

Mittels NLP kann ein Enterprise-Search-System natürlichsprachliche Sucheingaben verarbeiten. Damit kann es Treffer liefern, die zu kompletten Fragesätzen wie etwa „Welcher Geschäftspartner brachte 2017 den größten Umsatz?“ passen. Der Nutzer gelangt dadurch deutlich schneller und intuitiver an die gewünschte Auskunft als etwa bei einer Suche per Keywords.

Insbesondere im Support-Bereich wird eine natürlichsprachliche und dialogbasierte (Chatbots) Suche immer wichtiger. Beim Kundensupport können zum Beispiel Anfragen über virtuelle Assistenten aufgenommen, mit FAQ-Datenbanken abgeglichen und anschließend beantwortet werden.

  1. die Verschlagwortung von Dokumenten und die Textklassifikation

Neben Suchanwendungen spielen auch Anwendungen eine Rolle, bei denen es um eine automatische Bewertung (Klassifikation) von Texten geht. NLP-Verfahren können die Dringlichkeit, Stimmung (Sentiment) oder die Art (technisches Problem, Kündigung, Abrechnungsfragen) einer Kunden-Anfrage automatisch erkennen und entweder eine passende automatische Antwort generieren oder die Anfrage an den geeigneten Experten im Unternehmen weiterleiten (automatische Sortierung des Posteingangs).

Unternehmen, in denen viele eingehende Texte bislang zur weiteren Bearbeitung manuell vorsortiert werden müssen, eröffnet sich dadurch ein erhebliches Optimierungspotenzial. E-Mails, die in Sammelpostfächern eingehen und Briefe oder Faxe, die in der Poststelle via Optical Character Recognition (OCR) digitalisiert werden, können mittels NLP ohne weiteres menschliches Zutun klassifiziert werden.

  1. Lesehilfe und Analyse größerer Textmengen

Eine NLP-Lösung, die sowohl linguistische Regeln als auch Künstliche Intelligenz und maschinelle Lerntechniken nutzt, kann das Wesentliche aus Hunderten von mehrseitigen Texten extrahieren. Damit können etwa Juristen bei Gesetzesänderungen oder Firmenübernahmen große Bestände von Verträgen automatisch auswerten. Auf Basis moderner ML-Verfahren erkennt eine NLP-Software selbstständig Klauseln und wichtige Datenpunkte und extrahiert sie zur gezielten Prüfung, Kommentierung und Bearbeitung. Juristen sparen damit enorm viel Zeit und können sich wieder verstärkt ihren Kernaufgaben widmen. Zudem minimieren sie so das Risiko, relevante Klauseln zu übersehen.

NLP-Software wird zwar in Zukunft in immer mehr Anwendungsszenarien ihre Praxistauglichkeit nachweisen, bereits heute aber kann sie ein zentrales Problem auf Unternehmensseite beseitigen: den vielfach hohen Zeitaufwand von Mitarbeitern für oft völlig ergebnislose Informationsrecherchen. Mit NLP-Lösungen können Nutzer auch W-Fragen stellen und so die Suchergebnisse deutlich verbessern. Das NLP-Anwendungsspektrum umfasst dabei klassische suchgetriebene Anwendungen wie Intranet- und Internetsuche, Enterprise Search oder E-Commerce-Suche. Und auch im User Helpdesk, bei Self-Services oder bei Chatbots hilft NLP, die passenden Antworten zu finden, indem Fragen syntaktisch und semantisch analysiert werden.

 

Dr. Christoph Goller promovierte in Informatik mit einem Deep Learning-Thema an der TU München. Seit 2002 leitet er den Bereich Forschung des Enterprise-Search-Anbieters IntraFind Software AG. Er ist Spezialist für Information Retrieval (Apache Lucene Committer), Natural Language Processing und AI.