Ihr Chatbot ist online, und nicht alles läuft rund? Dann ist Chatbot-Training angesagt. Jede Plattform ermöglicht es, den Chatbot zu trainieren, um sein Verständnis für die Eingaben zu verbessern. Dieser Text orientiert sich an Dialogflow, einer der bekanntesten Plattformen. Das eigentlich alle Chatbots aber über die Komponenten Intents und Entities verfügen, können die wesentlichen Arbeitsweisen beim Chatbot-Training zumindest ausprobiert werden.

Wer einen Chatbot anbietet, hat im Vorfeld hoffentlich viel getestet und schon zum Launch die „Verstehensquote” auf 80 % gebracht. Diese Quote beschreibt, wie viele Eingaben der Chatbot erfolgreich verstehen und verarbeiten konnte. Für die Verarbeitung benutzt ein Chatbot typischerweise eine sogenannte NLP-Unit (Natural Language Processing; Verarbeitung natürlichsprachlicher Eingaben). Sie zerlegt und interpretiert die Eingabe. Um die Verarbeitung zu verbessern, ermöglicht die Plattform Dialogflow Chatbot-Training. Weitere Informationen zu Chatbot-Plattformen finden Sie hier.

Ein Verfahren aus der Künstlichen Intelligenz, sogenanntes Machine Learning, verbessert ständig die Zerlegung und die Interpretation. Allerdings ist es nicht möglich, die Fortschritte genauer zu prognostizieren oder auch nur zu qualifizieren. Die Künstliche Intelligenz im Hintergrund ist eine Blackbox. Auch wenn Sie sich auf die KI-Fähigkeiten hinter der NLP verlassen möchten, sollten Sie Ihren Chatbot regelmäßig auf sein Verständnis der Kundeneingaben prüfen und nach Möglichkeit gezielt gegensteuern, wenn Unverständnis oder Missverständnisse auftreten.

Trainingsobjekt – der Chatbot einer Online-Plattform

Im folgenden wird ein Best Practice-Ansatz Chatbot-Training mit Dialogflow dargestellt. Der Chatbot arbeitet auf einer Online-Plattform mit Anbindung an ein CMS. Er soll helfen, Kundendaten aktuell zu halten und zu ergänzen, allgemeine Fragen (FAQ) zu beantworten, zu gesuchten Begriffen oder Kombinationen aus einer großen Datenbank Ergebnisse abzufragen. Und er kann ein bisschen Smalltalk.

Zu Beginn standen ca. 70 Intents ohne Smalltalk zur Verfügung, im Bereich Smalltalk waren es ca. 60 beim Start. Am Ende des Chatbot-Trainings lag die Zahl der Smalltalk-Intents mehr als doppelt so hoch, bei den anderen waren es ca. 35 % mehr. Nebenbei: Oft hört man, dass rund 100 Intents (ohne Smalltalk) in den meisten Fällen ausreichen. Das käme in diesem Fall hin.

Das Chatbot-Training erfolgte über rund sechs Wochen regelmäßig. Es erfolgte eine tägliche Kontrolle der Chatverläufe von Montag bis Freitag auf Unverständnis oder Missverständnisse. Schwächen wurden im Training korrigiert.

Die Datenbank blieb über den Betrachtungszeitraum unverändert, es wurden weder Stichwörter ergänzt noch korrigiert. Verbesserungen der Suchleistung können daher dem Training zugeschrieben werden.

Verständnisprobleme im Chatbot

Die geführten Dialoge wurden im Trainingsmodus von Dialogflow betrachtet. Dazu listet Dialogflow sie zeitlich absteigend mit der Angabe der Schrittanzahl und der Anzahl nicht zugeordneter Intents auf. Wir konnten uns aufgrund der Spezifika auf Dialoge beschränken, die mindestens zwei Intents getriggert hatten oder direkt mit einer Suche begannen.

Dialogflow führt jeden Einzelschritt auf, nennt den Intent, markiert den einer Entity zugeordneten Textblock und nennt die Entity. Nicht oder falsch verstandene Eingaben können Sie auf diese Weise leicht erkennen und das Problem identifizieren.

Welche Probleme traten auf?

Charakteristisch für Chatbots ist das Nichtverstehen einer Nutzereingabe, weil diese den als Beispiel für die Intents eingegebenen Textsequenzen nicht ausreichend entspricht. Ob es sich in einem solchen Fall um die Konstruktion, einen einzelnen oder mehrere Begriffe oder um Vertipper handelt, kann – wenn überhaupt – nur der menschliche Bearbeiter identifizieren.

Vergleichsweise einfach sind Probleme nicht erkannter Intents zu lösen, denn Sie markieren die entsprechende Eingabe und ordnen sie dem richtigen Intent zu. Normalerweise antwortet ein Chatbot bei Unverständnis mit dem leicht identifizierbaren Fallback-Intent („Entschuldigung, das habe ich nicht verstanden.“). Kann die Eingabe einem vorhandenen Intent zugewiesen werden, wird sie im Chatbot-Training einfach dem richtigen Intent zugeordnet. Klicken Sie dazu links unten auf den angegebenen Intent und suchen Sie den passenden über die Eingabemöglichkeit. Passenden auswählen und dann rechts oben bestätigen. Das war’s. Den Erfolg können Sie im Prinzip direkt durch Aufruf des Intents und Kontrolle der Eingabebeispiele prüfen.

Für falsch erkannte Intents ist die Vorgehensweise nahezu identisch. Der Unterschied besteht darin, dass Dialogflow statt des Fallback-Intents den Namen des identifizierten Intents anzeigt.

Interpretiert Dialogflow bestimmte Eingaben trotz Chatbot-Training immer wieder falsch, kann ein zusätzlicher Intent die Abgrenzung erleichtern. Ggf. können Sie die Erkennung auch über eine zusätzliche Entity verbessern.

Schwieriger ist es, wenn Entities nicht richtig erkannt oder falsch zugeordnet werden. Werden in einem Chatbot Zahlenangaben in Entities genutzt, kann schon der unbestimmte Artikel „ein“ zum Problem werden, weil er als Anzahl interpretiert werden kann. Dann müssen Sie im Chatbot-Training diese Zuordnung explizit entfernen. Klicken Sie die Annotierung an und entfernen Sie die Annotierung durch einen Klick auf den Mülleimer. Danach wird die Anpassung rechts oben bestätigt.

Erkennt Dialogflow einen Begriff oder eine Kombination zwar, ordnet sie aber nicht vollständig der Entity zu, muss passend markiert und zugewiesen werden. Künftig erfolgt die Erkennung dann deutlich sauberer.

Probleme bei Smalltalk-Intents

Verwenden Sie Smalltalk-Intents, sind die 80 % Verstehensquote schnell Illusion. Das kann schon bei höflichen Menschen beginnen, die sich für eine Auskunft förmlich bedanken. Das wird schnell mal vergessen, wenn man Smalltalk-Intents erstellt.

Gehen Sie davon aus, dass sich Smalltalk-Intents im Chatbot-Training vervielfachen. Im Beispiel hat sich die Zahl innerhalb von sechs Wochen mehr als verdoppelt. Es waren allerdings auch viele Smalltalk-„Bedürfnisse“ zu bemerken.

In Dialogflow ist ein fehlender Intent zwar rasch nachgepflegt, ist dann aber noch nicht passend ausgestaltet. Sie können einfach innerhalb des Trainingsmoduls auf den falschen Intent klicken, dann öffnet sich eine Übersicht, in der Sie den richtigen finden oder mit „Create new“ einen neuen erstellen können. Die Neuerstellung führt Sie also nicht aus dem Training heraus, Sie sollten aber später die Utterances nachziehen.

Unterscheiden sich zwei Intents zwar inhaltlich, aber sprachlich nur geringfügig (Extremfälle: „Du bist ein Idiot.“ oder „Du bist kein Idiot.“ bzw. „Du bist wunderbar.“ oder „Du bist wunderlich.“), kann es später helfen, in den Utterances mehrere Beispiele zur Unterscheidung zu liefern.

Bearbeitung dokumentieren

Es ist nützlich, die Bearbeitungsschritte zu dokumentieren. Wir haben dazu eine Excel-Tabelle genutzt. Das Dokumentieren hat den Vorteil, dass Sie sehen, welchen Aufwand Sie in welcher Phase wirklich treiben (müssen). Außerdem können Sie Standards erarbeiten, wenn außer Ihnen noch andere den Chatbot trainieren. Wenn klar ist, wie bestimmte Eingaben zugewiesen werden sollen, kann man sich daran gut orientieren.

Zweiter großer Vorteil von Excel: Sie können relativ leicht zusätzliche Schwerpunkte angeben, die AutoFill-Features zur Arbeitserleichterung nutzen und die Probleme auswerten. Bei unserem Beispielchatbot kam heraus, dass rund 20 % der nicht gefundenen Suchbegriffe auf Defizite in der Datenbank zurückgingen.

Vorteile und Zeitaufwand

Mit dem geschilderten Vorgehen haben Sie eine permanente Erfolgskontrolle, wie gut Ihr Chatbot arbeitet. Damit können Sie unternehmensintern nicht nur dokumentieren, was Sie tun, sondern auch, dass sich Ihre Chatbot-Training auszahlt. Greifen Sie die Überlegung der Excel-Tabelle auf, können Sie auch Auffälligkeiten schnell erkennen und deren Anteil an den Problemfällen ermitteln.

Im Rahmen des geschilderten Verfahrens nahmen die Aufwände für das Training immer stärker ab. Das war sowohl in quantitativer wie in zeitlicher Hinsicht zu beobachten.

[printfriendly]

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.