Deep Dive in Bot-Technologien
Wie funktionieren Chatbots
Im Rahmen unserer Serie zu Chatbots haben wir bereits die unterschiedlichen Arten der Kommunikationsroboter vorgestellt. Doch was steckt eigentlich hinter einem Chatbot? Wie funktioniert er genau?
In diesem Beitrag beleuchten wir die Technologie hinter dem Sprachverständnis der Natural-Language-Understanding (NLU) Chatbots. Hierbei steigen wir nicht zu tief in die Technologie ein, sondern fokussieren uns auf die Bereiche, die ein Chatbot-Entwickler typischerweise beeinflussen kann.
Das Wesentliche einer jeden Nachricht verstehen
Sendet ein Mensch eine Nachricht an einen Bot, geschieht dies meist in der natürlichen Sprache des Menschen. Mit dieser Nachricht wird implizit eine Absicht oder ein Anliegen („Intent“) geäußert. Aufgabe der Sprachverständniskomponente des Bots ist es, diesen Intent zu erkennen. Dafür muss das Sprachverständnis des Chatbots zuvor trainiert werden. Hierbei wird ihm – häufig anhand von Beispielen – beigebracht, welcher Intent hinter bestimmen Äußerungen steckt. Es kann sein, dass für das Training eine Vielzahl von Beispielen bereitgestellt werden müssen, damit der Bot eine hohe und korrekte Erkennungsrate bei der Textanalyse erreicht.
Daneben spielt das Konzept der Entitäten eine große Rolle. Damit sind Schlüsselwörter oder –daten gemeint, die wichtige Informationen rund um die Absicht des Nutzers beschreiben. Es kann sich sowohl um Zahlen oder Datumsangaben als auch um branchen- oder kontextspezifische Begriffe handeln.
So könnte die Nachricht: „Ich suche jetzt eine Zugverbindung von München nach Berlin“ wie folgt analysiert werden:
Intent:
- Zugverbindung_finden
Entities:
- Datum und Uhrzeit: jetzt
- Start Ort: München
- Ziel Ort: Berlin.
Die meisten Anbieter von NLU-Services liefern bereits vordefinierte Entitäten wie bspw. Alters-, Orts-, Datums- oder auch Maßangaben mit.
Effizientes Training dank KI
Der Vorteil am Training der Spracherkennung mit maschinellem Lernen ist, dass trotz der potentiell hohen Anzahl von Trainingsbeispielen nicht alle möglichen Äußerungen des Menschen gelernt werden müssen. Die künstliche Intelligenz hinter Services wie Microsoft LUIS erlaubt es, auch ähnliche Äußerungen oder Äußerungen mit Rechtschreibfehlern korrekt zu erkennen. Hierfür arbeiten verschiedene hochkomplexe und rechenintensive Algorithmen zusammen. So benötigt die NLU-Komponente ein Lexikon, einen Parser und Grammatikregeln der entsprechenden Sprache. Dazu kommen vordefinierte Ontologien – oder auch Begriffsnetzwerke – zum Einsatz. Hierüber kann die Sprachverarbeitung bspw. Rückschlüsse daraus ziehen, ob Begriffe eine ähnliche Bedeutung haben. So konnten wir bei arvato Systems bei der Entwicklung eines Service-Chatbots den Intent „Email versenden“ aus den Äußerungen „E-Mail senden“, „Email weiterleiten“ und „E-Mail schicken“ erkennen – ohne dass all diese Verben explizit trainiert werden mussten. Zwar sank die Genauigkeit, mit der die NLU davon überzeugt war, dass die analysierte Äußerung auf den Intent passte, dennoch war sich der Algorithmus zu über 70 Prozent sicher, die korrekte Absicht zu erkennen. Damit zeigt sich, dass das Machine-Learning-Modell flexibel genug arbeitet, um auch Abweichungen in der Kommunikation zu verkraften.
Aktuelle Grenzen der NLU-Komponenten
Das Training der Chatbots mit Hilfe von Beispielen erlaubt es, das generelle Sprachverständnis, das die Algorithmen des Chatbot-Anbieter mitbringen, durch kontext- oder branchenspezifische Begriffe zu erweitern. Es ist allerdings noch nicht möglich, den NLU-Komponenten echte Ontologien beizubringen. Zwar bietet Microsoft LUIS das Konzept der hierarchischen Entities, diese können jedoch lediglich Taxonomien – also streng hierarchische Begriffsnetzwerke – abbilden. Hierüber kann die NLU zwar lernen, dass ein Labrador ein Hund ist, nicht jedoch, dass ein Hund von einem Menschen besessen wird. Um diese Komplexität zu erreichen, muss momentan noch auf Eigenentwicklungen zurückgegriffen werden. Möglicherweise werden die großen NLU-Anbieter, wie Microsoft LUIS, IBM Watson, Google oder Facebooks api.ai hier in Zukunft weitere Möglichkeiten anbieten.
Es bleibt spannend.