Natural Language Processing

Was Sie über NLP wissen müssen

17.04.2019
Von   IDG ExpertenNetzwerk
Felix Weber ist Doktorand am Lehrstuhl für Wirtschaftsinformatik und integrierte Informationssysteme mit den Forschungsschwerpunkten Digitalisierung, Künstliche Intelligenz, Preis-Promotion- und Sortiments-Management sowie Transformationsmanagement. An der Universität Duisburg-Essen ist er Leiter des SAP University Innovation Labs und gleichzeitig Berater für SAP Systeme im (Einzel-)Handel bei der Consenso Consulting GmbH.
Die Einsatzmöglichkeiten von Natural Language Processing sind umfangreich und dienen im Handel zur Automatisierung von kundenzentrierten Prozessen und der Kundeninteraktion.
Natural Language Processing (NLP) ist ein Teilbereich der Künstlichen Intelligenz, der sich darauf konzentriert, Computer in die Lage zu versetzen menschliche Sprache zu verstehen und zu verarbeiten. Mögliche Anwendungsfelder sind Chatbots.
Natural Language Processing (NLP) ist ein Teilbereich der Künstlichen Intelligenz, der sich darauf konzentriert, Computer in die Lage zu versetzen menschliche Sprache zu verstehen und zu verarbeiten. Mögliche Anwendungsfelder sind Chatbots.
Foto: NicoElNino - shutterstock.com

Computer sind hervorragend für den Umgang mit standardisierten und strukturierten Daten wie Datenbanktabellen oder Schnittstellenaufrufen geeignet. Dabei sind Computer in der Lage diese Daten sogar viel schneller zu verarbeiten und komplexere Berechnungen auf diesen anzustellen, als wir Menschen es könnten. Aber im Unterschied kommunizieren Menschen nicht in solch strukturierten Daten und sprechen auch nicht über standardisierte Schnittstellen auf Basis vordefinierter Regeln. Wir kommunizieren mit Worten und Sätzen, in sehr groben und losen Regeln (der Grammatik) - aus technischer Sicht einer Form von unstrukturierten Daten.

Gegenüber dem Menschen sind Computer im Umgang mit unstrukturierten Daten schlecht, weil Regeln nicht direkt angewendet werden können und es keine standardisierten Techniken zur Verarbeitung gibt. Wenn Computer programmiert werden, dann bestehen diese Programme im Wesentlichen, sehr vereinfacht dargestellt, aus einer Reihe von Entscheidungsregeln, nach denen das Programm arbeiten sollte: wenn X Element größer als 3, dann setze Ausgabe auf erfolgreich. Bei unstrukturierten Daten sind diese Regeln allerdings nur sehr abstrakt definierbar.

Wenn für einen Satz der das Wort "Bank" beinhaltet ein Regelsatz zur Verarbeitung aufgestellt werden soll, so stellt sich zunächst die Frage, welche der verschiedenen Bedeutungen gemeint ist? Möchte der Sprecher eine Bank für seinen Garten haben? Möchte er den Weg zu einer (Park-)bank? Oder möchte er zu einem Geldinstitut? Um dort eine regelbasierte Logik aufzustellen, müssen unzählige Regeln und Eventualitäten berücksichtigt werden. Es reicht nicht, das Wort an sich zu erkennen (worin der Computer gut wäre), vielmehr muss der Zusammenhang und Kontext des Gesagten erkannt und dementsprechend reagiert werden.

Obwohl die Verarbeitung natürlicher Sprache kein neues Feld der (Computer-)wissenschaft ist, entwickelt sich die Technologie in den vergangenen zehn Jahren dank des zunehmenden Interesses an der sogenannten Menschen-Maschine-Kommunikation, der Verfügbarkeit großer Datenmengen, wesentlich leistungsstärkerer Computer und verbesserter Algorithmen rasant weiter.

Natural Language Processing (NLP) ermöglicht aktuell beispielsweise eine Suche im Internet per Spracheingabe. Eine Google-Studie von 2014 zeigt, dass 55 % der Jugendlichen und 41 % der Erwachsenen in den USA die Sprachsuche des Suchgiganten mehr als einmal täglich nutzen. Im Jahr 2016 gab Google bekannt, dass 20 Prozent seiner Anfragen von mobilen App- und Android-Geräten Sprachsuchen sind.

Es gibt auch viele unbekannte, aber durchaus praktische, Anwendungen von NLP in unserem täglichen Leben. Neben dem genannten und offensichtlichen Gespräch mit virtuellen Assistenten wie Alexa oder Siri gibt es hier noch ein paar weitere Beispiele:

  • Haben Sie sich jemals die E-Mails in Ihrem Spam-Ordner angesehen und Ähnlichkeiten in den Betreffzeilen festgestellt? Dies basiert in vielen Fällen auf einer Bayes'sche-Spam-Filterung. Dies ist eine statistische NLP-Technik, die die Wörter mit "gültigen" E-Mails vergleicht, um Junk-Mails zu identifizieren.

  • Haben Sie schon einmal eine Diktiersoftware mit Speech-to-Text-Funktion genutzt, um Texte ohne Tastatur am Computer zu erfassen? Das ist die Sprach-zu-Text-Konvertierung, eine NLP-Fähigkeit.

Natural Language Processing - Eine Definition

Natural Language Processing (NLP) ist ein Teilbereich der Künstlichen Intelligenz, der sich darauf konzentriert Computer in die Lage zu versetzen menschliche Sprache zu verstehen und zu verarbeiten.

Um mit den ersten Computern vor 70 Jahren zu kommunizieren, benutzen Programmierer Lochkarten. Dieser manuelle und mühsame Prozess wurde nur von einer relativ kleinen Anzahl von Menschen verstanden. Heute sind wir in der Lage einfach zu sagen: "Alexa, ich mag diesen Song" und ein kleines Gerät antwortet: "OK. Bewertung gespeichert" mit einer menschenähnlichen Stimme und Sie können sicher sein, dass Sie diesen und ähnliche Songs öfters hören werden.

Natural Language Processing - Methoden und Anwendungen

NLP greift im großen Stil auf Methoden der Künstlichen Intelligenz (KI) zurück. Im Speziellen kommt hier das Maschinelle und Deep Learning zum Einsatz. Anstatt große Regelwerke manuell vorzudefinieren, kann NLP mithilfe von Maschinellem Lernen (ML) diese Regeln automatisch lernen.

Dazu wird eine große Menge an vorab definierten Beispielen dem Algorithmus zum Lernen gegeben. Diese Testdaten bestehen beispielsweise aus einem großen Korpus an bekannten und schon inhaltlich bewerteten Referenzen (der Input und der erwartete Output sind bekannt). Das kann ein Buch sein oder in den meisten Fällen eine Sammlung von Sätzen und deren Bedeutung. Basierend aus diesen bekannten Beispielen wird dann eine statische Schlussfolgerung erlernt. Im Allgemeinen gilt: Je mehr Daten analysiert werden, desto genauer wird das Modell sein.

Googles Datenquelle von Testdaten zur Verbesserung des Maschinellen Lernens
Googles Datenquelle von Testdaten zur Verbesserung des Maschinellen Lernens
Foto: Screenshot vom Autor

Besonders gut in dieser Sammlung von Testdaten ist Google. Bekanntestes Beispiel ist der Service von Google "ReCaptchas". Dieser soll dafür sorgen, dass selbständige Softwareprogramme, sogenannte Bots, Formularfelder nicht automatisch ausfüllen können. Er ist an vielen Stellen anzutreffen und fordert die Nutzer auf Bilder zu einem Begriff zuzuordnen, damit diese ein Formular auf einer Webseite ausfüllen oder sich in einen Dienst einloggen können.

In den Anfängen diese Services mussten die Nutzer einzelne Wörter, die in recht unleserlicher Schrift dargestellt wurden, zur Bestätigung des eigenen Menschseins eintippen. Hier hat Google die oben beschriebenen Beispieldaten (Input ist unleserliches Bild mit Text und Output die richtige Erkennung durch den Menschen) für seine Texterkennung gesammelt. Heute werden meist Bilder von Autos, Zebrastreifen oder Geschäften gezeigt. Die Sammlung kommt dabei Googles Projekten für selbstfahrende Autos zugute, die auch Algorithmen des Maschinellen Lernens einsetzen.

Mensch-Computer-Interaktion

Die auf NLP-basierende Mensch-Computer-Interaktion ermöglicht reale Anwendungen wie automatische Textzusammenfassung, Gefühlsanalyse, Themenextraktion, Named Entity Recognition, Parts-of-Speech Tagging, Beziehungsextraktion, Stemming und mehr. Es wird dabei abstrakt in mehreren Schritten vorgegangen. Zunächst wird der Input (das gesprochene Wort) in eine maschinenlesbare Form umgewandelt, also in einen Text. Dieser Schritt ist dabei fast der entscheidende, denn wenn die Wörter dort schon falsch "übersetzt" werden, so werden die nachfolgenden Schritte unweigerlich schiefgehen.

Schematische Darstellung einer NLP-Systemarchitektur
Schematische Darstellung einer NLP-Systemarchitektur
Foto: Eigene Darstellung von Felix Weber

Im Rahmen des Natural Language Processings wird auf ein umfangreiches Repository von unterschiedlichsten Methoden und Frameworks zurückgegriffen:

  • Struktur-Extraktion: Identifizierung von zusammenhängenden Abschnitten und Inhaltsblöcken basierend auf dem sogenannten "Tagging".

  • Identifizieren und markieren von Satz- und Absatzgrenzen: Diese Marker sind wichtig für die Entitätsextraktion, da sie als nützliche Pausen dienen, innerhalb derer die Analyse stattfindet. Zu den Open Source Frameworks gehören der Lucene Segmenting Tokenizer oder die Satz- und Absatzgrenzendetektoren von Open NLP.

  • Sprachidentifikation erkennt die menschliche Sprache für das gesamte Dokument und für jeden Absatz oder Satz. Sprachdetektoren sind entscheidend, um festzustellen, welche linguistischen Algorithmen und Dictionaries auf den Text angewendet werden sollen. Zu den Open-Source-Methoden gehört der Google Language Detector oder der Optimize Language Detector.

  • Tokenisierung teilt Zeichenströme in Token auf, die zur weiteren Verarbeitung und zum Verständnis verwendet werden können. Token können Wörter, Zahlen, Bezeichner oder Satzzeichen sein (je nach Anwendungsfall). Zu den Open-Source-Tokenizern gehören die Lucene-Analysatoren und der Open NLP Tokenizer.

  • Akronym-Normalisierung und -Tagging: Akronyme können als "I.B.M." oder "IBM" angegeben werden, so dass diese gekennzeichnet und normalisiert werden sollten.

  • Lemmatisierung / Stemming reduziert Wortvariationen auf einfachere Formen, die helfen können, die Erkennung zu erhöhen. Die Lemmatisierung verwendet ein Sprachwörterbuch, um eine genaue Reduzierung auf Stammwörter durchzuführen.

  • Zerlegung: Für einige Sprachen (typischerweise germanische, skandinavische und kyrillische Sprachen) müssen zusammengesetzte Wörter in kleinere Teile zerlegt werden, um eine genaue NLP zu ermöglichen. Zum Beispiel wird so "samstagmorgen" zu "Samstag" und "Morgen".

  • Entitätsextraktion: Die Identifizierung und Extraktion von Entitäten (Personen, Orte, Unternehmen usw.) ist ein notwendiger Schritt zur Vereinfachung der nachgelagerten Verarbeitung. Es gibt mehrere verschiedene Methoden.

  • Phrasenextraktion extrahiert Sequenzen von Token (Phrasen), die eine starke Bedeutung haben, die unabhängig von den separat behandelten Wörtern ist. Diese Sequenzen sollten bei der Durchführung von NLP als eine einzige Einheit behandelt werden. Beispielsweise hat "Big Data" eine starke Bedeutung, die unabhängig von den Wörtern "big" und "data" ist, wenn sie getrennt verwendet wird. Alle Unternehmen haben diese Art von Phrasen, die im gesamten Unternehmen gebräuchlich sind und besser als Einheit und nicht getrennt behandelt werden.

Am Ende wird das extrahierte Ergebnis mithilfe von Maschinellem Lernen, basierend auf einem Zugriff auf eine umfangreiche Knowledge Base, beantwortet.

Einsatzszenarien von Natural Language Processing im Handel

Mehr denn je wird NLP zusammen mit KI als Kommunikationsmittel von verschiedensten Unternehmen eingesetzt. Insbesondere Einzelhandelsunternehmen wird der Einsatz von KI-gesteuerten Chatbots von vielen Experten nahezu aufgedrängt mit der Argumentation, dass dies der einzige Weg ist ein hervorragendes Kundenerlebnis zu gewährleisten und zukünftig zu konkurrieren. Tatsächlich ist es eher so, dass die meisten Händler weder entsprechende Möglichkeiten in ihren IT-Systeme haben oder der Einsatz von Methoden der Künstlichen Intelligenz oder des Maschinellen Lernen wirklich gering ist und es nur wenige Prototypen unter den größten Händlern weltweit gibt.

Dennoch erwartet das Marktforschungsunternehmen IDC , dass der Einzelhandel das Bankwesen zukünftig überholen wird, wenn es um die Ausgaben für KI, ML oder NLP geht. Allein in 2018 sind über 3,4 Milliarden Dollar in eine Reihe von Anwendungsfällen investiert worden. Die Möglichkeiten für E-Commerce und stationäre Einzelhändler sind dabei sehr umfangreich. Im Folgenden listen wir einmal die interessantesten Anwendungsfälle im Handel auf:

Natural Language Processing für personalisierte Bots und Chatbots

Chatbots, also sprach- oder textbasierte Dialogsysteme, sind oft mit dem Ziel konzipiert, dass sie überzeugend einen menschlichen Gesprächspartner simulieren. Chatbots werden typischerweise im Kundenservice oder zur Informationsbeschaffung eingesetzt. Der Kundensupport ist einer der wichtigsten Anlaufstellen für Kunden. Dabei erwarten Kunden nicht nur einen schnellen und richtigen Server, sondern dieser muss im besten Fall auch 24 Stunden 7 Tage die Woche zur Verfügung stehen.

Zu den wichtigsten Vorteilen von Chatbots gehört, dass diese immer einsatzbereit sind und das System sich fast unendlich skalieren lässt. Eine Warteschlange ist somit nicht mehr nötig. Den Kern eines Chatbot bildet dabei ein NLP-System. In Verbindung mit den persönlichen Daten ist so direkt beim Einstieg eine personalisierte Begrüßung mit ihrem Namen möglich. Situationsbedingt direkt gefolgt von der Frage, ob der Kunde wegen einer kürzlich aufgegebenen Bestellung anruft und beispielsweise den Liefertermin wissen oder verschieben möchte.

Eine Studie von Epsilon ergab, dass Verbraucher personalisierte Erlebnisse sehr positiv bewerten und bis zu zehnmal häufiger zur Kundengruppe der wertvollsten Kunden (diejenigen mit mehr als 15 Transaktionen in einem Jahr) zählen.

In den heutigen gängigen Omnichannel-Szenarien kann es sein, dass der Kunde online eine Bestellung zur Abholung im Geschäft (Click-to-Collect) aufgegeben hat und den Kundendienst um Hilfe bittet. Um ein möglichst genaues Gespräch zu ermöglichen, ist es für den Chatbot unerlässlich über die verschiedenen Touchpoints (Online, Mobile, Stationär) hinweg Zugriff auf den gesamten Kundenkontext zu haben.

Darüber hinaus sollte das Chatbot-NLP-System nicht nur die Absicht des Benutzers interpretieren, sondern auch die Fähigkeit haben, vergangenes Verhalten (Kontext) zu antizipieren und mögliche Unterstützungsbereiche zu identifizieren. Andererseits muss der Chatbot auch in der Lage sein, bei Prozessen, die nicht durch automatisierte Workflows gelöst werden können, den Kunden an einen menschlichen Agenten zu übergeben.

Erste Tests mit Chatbots haben dabei durchaus ergeben, dass sie einen erheblichen wirtschaftlichen Beitrag für die Unternehmen leisten können. Zum Beispiel berichtete Asos , der größte britische Online-Versandhändler im Bereich Mode und Beauty, dass durch einen neuen Facebook-Messanger-Chatbot die Bestellungen um 300% gesteigert werden konnten und das Projekt einen ROI von 250% erzielte - während man gleichzeitig fast viermal mehr Zielpersonen erreichte. Sephora, die französische Kosmetikkette seinerseits konnte die Anzahl der verkauften Umstylingtermine über den Facebook-Messenger-Chatbot um 11% erhöhen.

Natural Language Processing für Stimmungsanalyse

Wenn es um die Ausrichtung und Optimierung von Vertriebs- und Marketingstrategien geht, ist die Kenntnis über das Verhältnis zwischen den Kunden und dem Unternehmen unerlässlich. Diese Technologie, auch bekannt als Opinion Mining oder Sentiment Analysis, entstammt ursprünglich aus dem Umfeld der Social-Media-Analysen und ist in der Lage Nachrichten und Blogs zu analysieren. Die heutigen NLP-Algorithmen gehen so weit, dass diese nicht nur Stimmungen (positiv, negativ oder neutral), sondern auch Emotionen (glücklich, verärgert, wütend oder traurig) identifizieren. So kann ganz gezielt über längere Zeiträume die Einstellungen der Kunden zu einem Unternehmen untersucht werden und in die Entscheidungsfindung einfließen.

Stimmungsanalyse auf Twitter für den Discounter LIDL
Stimmungsanalyse auf Twitter für den Discounter LIDL
Foto: Screenshot des Autors

Ein europäischer Einzelhändler beauftragte das KI-Entwicklungsteam 8allocate mit der Entwicklung eines auf NLP basierenden Tools zur Analyse des Kundenfeedbacks in seinem Webshop. Mit diesem Instrument zur Stimmungsanalyse wollte das Unternehmen die Kundenbindung erhöhen, Geschäftsveränderungen vorantreiben und die Vertriebs- und Marketinginvestitionen optimieren. Das Projektteam des Einzelhändlers führte eine Datenbereinigung auf den bestehenden Kundenanfragen, Feedbacks und den Bewertungen im Shop durch.

Auf diesen Daten wandte man die Wort-Tokenisierung zusammen mit einem Natural Language Toolkit, zur Definition von Synonymen, Semantiken und Sentiments, an. Anschließend wurde eine Geschäftslogik basierend auf Spracheigenheiten, Abkürzungen, Kollokationen und mundartlichen Ausdrücken implementiert und dies in die Auswertungslogik der Marketingentscheidungen integriert. So war es den Entscheidern sofort möglich, jegliche Änderungen in der Kundenstimmung zu erkennen und so die Auswirkungen der eigenen Entscheidungen besser abzuschätzen.

Natural Language Processing für Semantik im Webshop

Die semantische Suche verwendet NLP und Methoden der KI, um lange und zusammenhängende Suchbegriffe zu verstehen ("Schokoladenriegel unter 5 Euro"). Durch den Einsatz von Techniken des maschinellen Lernens können auch die Absichten des Kunden während der Eingabe vorhergesagt werden (ähnlich der Suchvervollständigung durch Google).

Auch können Tippfehler identifiziert, Synonyme erkannt und verwandte Produkte angezeigt werden. Das Konzept der semantischen Suche ist nicht ganz neu. Apples Siri, Amazon Echo und Google Assistant verwenden ähnliche Technologien, um die Sprache der Menschen zu verstehen. Neben der Möglichkeit den Kunden relevantere Produkte zu präsentieren, gibt es viele weitere Vorteile der semantischen Suche gegenüber der traditionellen Suche.

NLP-basierte und semantische Suchfunktion im Webshop von Nordstrom
NLP-basierte und semantische Suchfunktion im Webshop von Nordstrom
Foto: Screenshot des Autors

So reduziert sich die Anzahl der Schritte im Suchprozess in diesem Beispiel von zwei Schritten (Suche nach Suchbegriff "Schokoladenriegel" und die anschließende Filterung/Sortierung auf "unter 5 Euro") auf nur einen einzigen Suchvorgang. Die textbasierte Suche liefert oft das falsche oder (schlimmer) gar keine Ergebnisse für eine bestimmte Kombination von Begriffen oder Tippfehlern. Um die Kundenzufriedenheit zu verbessern, müssen die Ergebnisse für diese Fälle durch den Betreiber des Webshops manuell korrigiert und hinterlegt werden. Durch den Einsatz einer Semantischen Suchen können die Suchergebnisse automatisch optimiert werden und aus Fehleingaben und der anschließenden Korrektur durch den Nutzer auch automatisch verbessert werden.

Fazit - Breites Einsatzfeld für Natural Language Processing

Wie die Beispiele aus der Branche des Handels zeigen, dient NLP vor allem zur besseren Verknüpfung und Interaktion mit dem Kunden. Großer Vorteil ist dabei, dass sich NLP-Systeme immer verfügbar sind und sich nahezu beliebig skalieren lassen. Ein höheres Volumen an Kundenanfragen aufgrund eines gelungen Fernsehwerbespots kann problemlos, jedenfalls für die erste Interaktion und einfacheren Anfragen, komplett ein Chatbot lösen. Auch ermöglicht NLP die Gewinnung von neuen Informationen über die Kunden - durch Textverständis oder die Verbesserung von kundenzentrierten Prozessen.