Der technische Fortschritt hat die Art der Computernutzung in den letzten Jahren grundlegend revolutioniert. Kaum eine andere Branche hat dabei die Arbeitsweise der Menschen so stark verändert. Digitale Kommunikation ist sowohl im privaten als auch im beruflichen Umfeld effektiv und selbstverständlich. Rückständige Bereiche leiden unter ihren veralteten Kommunikationsformen und investieren in Optimierung.
Weit verbreitet sind aktuell Lösungen, die menschliche Kommunikation in natürlicher Sprache zwischen Menschen ermöglichen und solche, die formale Datenkommunikation zwischen IT-Systemen realisieren. Die Ersteren fallen in den Bereich E-Mail, Social Media und Chat. Viele Unternehmen erhalten über oben die beschriebenen Kanäle eine große Zahl an Kommunikationsanfragen in natürlicher Sprache. Bislang ist ein hoher Fließtextanteil ein Digitalisierungshindernis und führt zu hohen Kosten durch eine überwiegend manuelle Bearbeitung.
Natürliche Sprache ist vor allem durch eine hohe Vielfalt, Variabilität und Mehrdeutigkeit geprägt. Diese Faktoren machen eine automatisierte Verarbeitung mit klassischen Methoden der Informatik, z.B. Grammatiken, Wörterbüchern oder Parsern, fast unmöglich. Im Gegensatz hierzu haben Menschen eine genetische Veranlagung um Informationen aus dem Kontext der Sprache zu nutzen und so mit diesen Faktoren umzugehen.
Das Forschungsgebiet Natural Language Processing (NLP) untersucht die Schnittstelle zwischen Computern und natürlicher Sprache. Grundsätzlich wird in diesem Feld nicht versucht, alleine durch operational formulierte Regeln (Programm-Code usw.) Lösungsalgorithmen zu implementieren. Vielmehr werden Regeln auf Basis vorhandener Daten angelernt, es entsteht ein statistisches Modell (Maschinelles Lernen, ML). Sobald das statistische Modell in dieser Form ausreichend trainiert ist, können auch unbekannte Texte mit hoher Wahrscheinlichkeit korrekt verarbeitet werden. Die Kombination von manuell erstellten und gelernten Regeln erzeugt eine effektive Algorithmik zur Verarbeitung natürlicher Sprache, als Basis für vielfältige Anwendungsfälle.
Die Methoden des ML sind bereits seit den 50er Jahren Gegenstand der Forschung. Mit dem Durchbruch von Deep-Learning in der Bild- und Sprachverarbeitung in den 2010er Jahren haben diese Methoden zunehmend den Weg in die Unternehmen gefunden.
Abbildung 1 illustriert den Entwicklungsprozess von NLP-Anwendungen. Für eine möglichst repräsentative und ausreichend große Trainingsdatenmenge erfolgt eine manuelle Bearbeitung (Tagging) zur Erstellung einer Referenzlösung. Diese Datenmenge (annotierter Korpus) bildet die Basis für das Training des Modells, also der statistischen Verteilung. Nach optionalen Optimierungsschritten ist der Entwicklungsprozess abgeschlossen.
Während der anschließenden Produktionsphase werden auf Basis dieses Modells nun unbekannte Texte analysiert. Entsprechend der jeweiligen Anwendung erfolgt z.B. eine Informationsextraktion, also die Identifikation von bekannten semantischen Strukturen aus dem Text oder eine Analyse der Stimmungslage des Autors beim Schreiben. Von außen betrachtet arbeitet das trainierte Modell wie ein menschlicher Sachbearbeiter und kann in bestehende Prozesse integriert werden. Die folgende Fallstudie verdeutlicht diesen Prozess.
Fallstudie
Die Deutsche Bahn als Beispiel für einen großen Mobilitätsanbieter möchte ihre Kundenkommunikation effektiver gestalten. Um die Arbeitskraft ihrer Servicemitarbeiter möglichst sinnvoll einzusetzen sollen besonders regelmäßige Anfragen, wie
„Meine Verbindung von Aachen nach Köln am nächsten Mittwoch fällt aus, welche Ersatzverbindung darf ich nutzen?“
automatisiert beantwortet werden. Zunächst ist zu beobachten, dass die relevanten Parameter der Anfrage in diesem Beispiel konkret genannt werden:
Eine automatisierte Extraktion dieser bekannten Konzepte hat zur Folge, dass die Fließtextanfrage automatisch in eine strukturierte Anfrage überführt und so in bestehende digitale Prozesse integriert werden kann.
Während des Trainingsprozesses werden diese Konzepte in vorhandenen Kundenanfragen annotiert. Mit der resultierenden Trainingsdatenmenge wird ein statistisches Modell so trainiert, dass es Regelmäßigkeiten in unbekannten Fließtexten entdecken kann um Instanzen der antrainierten Konzeptklassen zu extrahieren. Die Kombination des NLP Modells mit einer entsprechenden Geschäftslogik kann nun genutzt werden, um einen Teil der Anfragen automatisiert zu beantworten.
Die Vorteile von ML möchten wir in diesem Zusammenhang am Beispiel des Datum-Konzepts verdeutlichen. Um ein Datum aus Anfragen zu extrahieren, könnten wir einen regulären Ausdruck, z.B.
^\d{1,2}[ \.]{1,2}\d{0,2}[ \.]{0,2}((19|20|21)?\d{0,2})?$
in Kombination mit einem Wörterbuch (Montag, …, Sonntag, morgen, nächsten …) verwenden. Diese klassische Form der Datenverarbeitung funktioniert in vielen Fällen bereits gut. Kleinste Abweichungen von dem hier definierten Schema führen allerdings dazu, dass ein Datum im Text nicht mehr erkannt wird. Zudem birgt dieser Ansatz die Gefahr verschiedener gravierender Fehlersituationen. Zunächst stellt sich heraus, dass Fehler, wie z.B. Tippfehler, Rechtschreibfehler usw., nicht berücksichtigt werden. Zusätzlich gibt es Fälle in denen Wörter aus dem Wörterbuch nicht im Kontext eines Datums genutzt werden.
„… den zug habe ich verpasst und warte auf den nächsten montag gilt mein wochenendticket aber nicht mehr.“
Das Beispiel zeigt, dass „nächsten“ auch eine Referenz auf einen Zug sein kann. Hier erschweren fehlende Satzzeichen zusätzlich zur fehlenden Groß- und Kleinschreibung die Definition allgemeingültiger Regeln. Ein auf derartigen Daten trainiertes ML-basiertes NLP Modell erkennt die Referenz und hat so die Möglichkeit nur „Montag“ als Datumsangabe zu identifizieren.
Der Entwicklungs- und DevOps-Prozess dieses NLP Modells wird, vergleichbar zu konventioneller Softwareentwicklung, durch einen problemspezifischen Tool Stack unterstützt. So bieten NLP Frameworks wie bspw. spaCy alle Methoden um NLP Modelle aus vorhandenen Daten zu erzeugen. Die Erstellung der Trainingsdaten werden durch Task-spezifische Annotationstools und ML-spezifische Versionierungstools, wie bspw. DVC unterstützt. Erstellte Modelle können effizient durch Container-Technologien wie Docker in Kombination mit Systemen zur Bereitstellung der Softwarecontainer wie Amazon EC² oder Kubernetes in der Cloud bereitgestellt, betrieben und überwacht werden.
Zusammenfassung
Die Forschung im Bereich des NLP hat in den letzten Jahren grundlegende Fortschritte gemacht. Der enorme Zuwachs in verfügbarer Rechenleistung führt zu immer stärkeren Modellen und immer besseren NLP Systemen (der Google Übersetzer ist nur ein positives Beispiel).
Laut einer Studie von Gartner[1],befindet sich NLP gerade auf dem Weg aus der Forschung in die Industrie. Die Möglichkeiten, die sich aus ML-gestütztem NLP ergeben, haben in vielen Unternehmen das Potential IT-Prozesse grundlegend kosteneffizient zu optimieren und gleichzeitig den immer weiterwachsenden Anforderungen der Kunden an die Verfügbarkeit durch eine vollständige oder teilweise Automatisierung gerecht zu werden.
Autoren
Prof. Dr. Bodo Kraft
Prof. Dr. Bodo Kraft ist Gründer und Leiter des Labors Business Programming. Er betreibt dort seit über zehn Jahren zusammen mit aktuell fünf Promovierenden anwendungs-orientierte Forschung im Umfeld von Computer-Linguistik. Gemeinsame Basis der unterschiedlichen Projekte ist die Problemstellung, massenhaft anfallende, natürlichsprachliche Dokumente effizient und automatisiert zur verarbeiten.
Die erfolgreiche Anpassung der Lösungen auf die jeweilige Domäne ist hierbei elementar. Ein weiterer Schwerpunkt liegt auf einer agilen, qualitätsgetriebenen Vorgehensweise zur Erstellung betrieblich verwertbarer und wartbarer Softwaresysteme.
M. Sc. Lars Klöser
M. Sc. Lars Klöser hat an der RWTH Aachen Informatik studiert und promoviert nun bei Prof. Dr. Bodo Kraft und ist Teil des Labor Business Programming. Sein Fokus liegt auf NLP und besonders auf der Extraktion komplexer semantischer Strukturen aus rechtlichen Texten.
[1] https://www.gartner.com/smarterwithgartner/top-trends-on-the-gartner-hype-cycle-for-artificial-intelligence-2019/