IBM Watson Assistant

Gliederung

  1. Einführung in IBM Watson
  2. Watson Assistant Chatbot
  3. Beispiel: Einen Chatbot erstellen
  4. Fazit
  5. Quellen
  6. Anhang

Einführung in IBM Watson

Watson  ist ein von IBM entwickeltes Programm aus dem Bereich der künstlichen Intelligenz, das Antworten auf natürlichsprachliche Fragen gibt und unstrukturierte Daten verarbeiten kann. Unstrukturierte Daten können mit Hilfe von Watson in geschäftsrelevantes Wissen und Wettbewerbsvorteile umgewandelt werden. Somit ist IBM Watson als geschäftsförderndes Informationssystem einsetzbar.

Watson vereint eine Palette von Produkten, die auf Basis von KI bzw. maschinellen Lernens arbeiten. Dadurch ist es unter anderem möglich, relevante Erkenntnisse, Muster und Beziehungen aus unstrukturierten Daten, wie Bildern, E-Mails oder Social-Media-Inhalten zu erhalten. Kundenwünsche können aus großen Datenmengen entnommen werden oder es können Tools zur Verbesserung der Kundenzufriedenheit angeboten werden (z.B. ein Chatbot, der auf natürliche Sprache reagiert und antwortet).

Produktübersicht

  • Watson Assistant
    Erstellen und Implementierung von Chatbots und virtuellen Assistenten 
  • Watson Discovery
    Eine Such- und Textanalyseplattform auf KI-Basis, die zur Analyse von verborgenen Informationen in Unternehmensdaten genutzt werden kann
  • Watson Speech to Text
    Konversion von Audio und Sprache in geschriebenen Text auf einfache Weise
  • Watson Text to Speech
    Konversion von geschriebenem Text in natürliche Sprache in vielen verschiedenen Sprachen und Stimmen
  • Watson Language Translator
    Dynamisches Übersetzen von Nachrichten, Patenten oder Konversionsdokumenten
  • Watson Natural Language Classifier
    Interpretation und Klassifikation von natürlicher Sprache auf zuverlässige Weise
  • Watson Natural Language Understanding
    Ein NLP-Service (Natural Language Processing) zum  Analysieren von Text, um aus Inhalten wie Begriffen, Entitäten und Stimmungen Metadaten zu extrahieren.
  • Watson Machine Learning
    Erstellen, Trainieren und Implementieren von Self-Learning-Modellen mit einem automatisieren, interaktiven Workflow mit Hilfe von Machine Learning
  • Weitere Watson Produkte, die auf verschiedene Bereiche spezialisiert sind, wie z.B. Gesundheitswesen, Werbung, Personalwesen, Sicherheit und Risiko und Finanzen

Watson Assistant – Chatbot

Beschreibung

Watson Assistant ist ein von IBM angebotenes Produkt zur Entwicklung und Integration KI-basierter Chatbots. Ein Chatbot ist eine Dialogschnittstelle, die zum Beispiel für den automatisierten Kundenservice geeignet ist und Kundenfragen beantworten kann. IBM verfolgte mit Watson das Ziel, eine semantischen Suchmaschine zu schaffen, die den Sinn einer in natürlicher Sprache gestellten Frage erfasst und in einer großen Datenbank (die ebenfalls Texte in natürlicher Sprache umfasst) relevante Texte (Antworten) auffindet.
Die automatisierte Beantwortung von Fragen ist durch die Verarbeitung natürlicher Sprache (NLP, Natural Language Processing) möglich. Ein Kunde stellt dem Chatbot eine Frage und erhält in Echtzeit eine Antwort, die laut IBM schnell geliefert, konsistent und genau ist.

Ein KI-basierter Chatbot wird auch “Virtueller Assistent” genannt und unterscheidet sich von einem traditionellen Chatbot. Ein virtueller Assistent kann anhand der mit ihm geführten Konversationen lernen und passt somit seine Antworten an. Der Bot ist bestrebt, stets genauere und kontextbezogene Antworten zu liefern. 

IBM bietet keinen fertigen Chatbot an, sondern ein Tool, womit ein Unternehmen seinen eigenen auf sich zugeschnittenen Chatbot entwickeln und auf verschiedene Plattformen integrieren kann. Als Zielgruppe sind Unternehmen mit Omnichannel-Konzept zu nennen.
Omnichannel ist ein kanalübergreifendes Geschäftsmodell für Unternehmen zum Verbessern des Kundenerfahrungsmanagements. Das Ziel ist, dass Kunden über mehrere Kanäle gleichzeitig in ständigem Kontakt mit einem Unternehmen sein können.

Funktionalität

Die Funktionalität von Watson beruht auf Algorithmen der Natürlichen Sprachverarbeitung und des Information Retrieval, welche auf Methoden des Maschinellen Lernens, der Wissensrepräsentation und der automatischen Inferenz aufbauen. Der Prozess, auf dem der Chatbot basiert, lässt sich in die folgenden, in Abbildung 1 dargestellten Schritte einteilen. 

    1. Question Analysis: Im ersten Schritt versucht das System die Frage zu verstehen, indem die Struktur des Satzes mit Hilfe eines Parsers analysiert wird und Relationen identifiziert werden. Zudem werden die Fragen in Klassen, wie zum Beispiel Mathefragen und Definitionsfragen eingeordnet und Satzteile, die eine besondere Verarbeitung benötigen, wie zum Beispiel Wörter mit mehreren Bedeutungen, detektiert.
    2. Question Decomposition: Mit regelbasierten Deep-Parsing- und statistischen Klassifizierungsmethoden erkennt Watson, ob Fragen zerlegt werden sollten und wie sie am besten in Unterfragen aufgeteilt werden können. Es findet parallel eine Suche nach Antworten auf die Teilfragen statt. Später werden alle Antwortmöglichkeiten kombiniert.
    3. Hypothesis Generation: Im nächsten Schritt werden durch Verwendung der Analyseergebnisse mögliche Antworten (Hypothesen) generiert. Dazu werden die Datenquellen des Systems durchsucht und mögliche Fragmente in Antwortgröße ausgewählt. Für die Suche werden verschieden Techniken wie zum Beispiel Textsuchmaschinen, die Suche in Wissensdatenbanken mit SPARQL auf Triple Stores und die Dokumentensuche angewendet. 
    4. Hypothesis and Evidence Scoring: Die Hypothesen durchlaufen anschließend ein Bewertungssystem, das zusätzliche Belege für die einzelnen Antwortmöglichkeiten mit einbezieht. Diese zusätzlichen Belege werden zum Beispiel mit der Passagen-Suche gefunden. Bei dieser Suche wird die aus der Frage abgeleiteten Suchanfrage durch die generierte Antwort ergänzt, sodass Passagen gefunden werden können, in denen Frage und Antwort zusammen vorkommen. Die Evaluation der Belege erfolgt mit Hilfe verschiedener Bewertungsanalysen, die auf Faktoren wie zum Beispiel dem geografischen Standort, zeitlichen Beziehungen, der taxonomischen Klassifizierung und den lexikalischen und semantischen Beziehungen des Kandidats basieren.
    5. Final Merging and Ranking: Vor dem finalen Ranking der Antworten werden Kandidaten, die sich inhaltlich überschneiden unter Anwendung von Algorithmen zum Abgleich, zur Normalisierung und zur Auflösung von Koreferenzen gefunden und zusammengefasst. Das Modell welches anschließend die Rangfolge der Antworten festlegt, wurde zuvor durch maschinelles Lernen trainiert. Je nach Art der Frage wird ein spezifisches Modell eingesetzt.
Die Architektur des Systems zur automatischen Beantwortung von Fragen
Abbildung 1: Die Architektur des Systems zur automatischen Beantwortung von Fragen

Architektur

Omnichannel-Chatbots können auf einer Vielzahl von Plattformen/Kanäle eingesetzt werden. Das können Unternehmenswebseiten, Messenger, soziale Medien, andere mobile Anwendungen, Live-Webchats, FAQ-Webseiten, physische Standorte, Telefon und Sprachassistenten wie Amazons Alexa sein. Für Nutzende ist das konsistenter, da nahtlos über alle Kanäle hinweg gearbeitet wird. Omnichannel beschreibt dabei die Konsistenz zwischen den verschiedenen Kanälen. Anfragen, die über Kanäle getätigt wurden, werden KI-gesteuert beantwortet, indem beispielsweise Antworten in strukturierten oder unstrukturierten Inhalten gefunden werden. Die Anfrage kann durch Watson Assistant auch direkt an den richtigen Agenten übergeben werden. 

Grobe Darstellung einer Watson Assistant Chatbot Architektur (Eigene Darstellung)
Abb. 2: Grobe Darstellung einer Watson Assistant Chatbot Architektur (Eigene Darstellung)

Die Chatbot-Applikation nimmt die Benutzereingaben entgegen. Der Parser überträgt die Eingabe in eine maschinenlesbare Form und leitet sie an den Assistent weiter. Dazu muss die Anfrage über NLP6 in strukturierte Daten umgewandelt werden. Aus der Anfrage werden der Intent (Absicht) und die Entitäts (Typ) herausgefiltert. Die Intents, Entitäten und deren Beziehung müssen dazu vorerst definiert und der Conversation Service trainiert werden. Der Dialog-Skill interpretiert die Benutzereingaben und steuert dann den Gesprächsverlauf indem er alle Informationen, die er benötigt, um zu antworten oder eine Transaktion im Namen des Benutzers durchzuführen, sammelt. Fragen, die vom Dialog-Skill nicht beantwortet werden können, können an den Such-Skill weitergeleitet werden, welcher in Wissensdatenbanken des Unternehmens nach relevanten Antworten sucht. In der Service-API werden den einzelnen Intents zugehörige Aktionen ausgelöst. Die Antwort der Service-API wird in ein für Nutzende lesbares Format umgewandelt und der Chatbot-Applikation zur Verfügung gestellt.

 

Detaillierte Darstellung der Architektur (Eigene Darstellung)
Abb. 3: Detaillierte Darstellung der Architektur (Eigene Darstellung)

Flexible Bereitstellung und Resilienz

Je nach Anforderung kann der Assistant entsprechend skaliert und auch im Nachhinein an sich ändernde Anforderungen angepasst werden. Eine lokale Ausführung des Assistenten ist mit IBM Cloud Pak® for Data möglich. Die Ausführung ist über die IBM Cloud und andere Public Clouds möglich. Eine hohe Verfügbarkeit des Assistenten wird sichergestellt (3 Rechenzentren, mind. 8 Meilen voneinander entfernt, rund um die Uhr in Betrieb). Watson Assistant bietet bis zu 99,9 % Verfügbarkeit.

Datensicherheit

Watson Assistant ist für Informationssicherheit und Datenschutz ISO-zertifiziert (ISO 27001, 27017 und 27018), um die hohen Standards von Unternehmensorganisationen zu erfüllen.

Es kann selbstständig angepasst werden, welche Daten genutzt und über diverse Instanzen hinweg aufgezeichnet werden. Über die optionale Datenisolation wird eine Single-Tenant-Umgebung bereitgestellt. Es wird gewährleistet, dass die Daten durch Verschlüsselungstechniken sowie Optionen für private Endpunkte und BYOK (Bring Your Own Keys) sicher sind. Der Datenschutz wird anhand von Sicherheitstests laufend überprüft. Die Anzeige- und Bearbeitungs-Zugriffe für Skills, Assistenten und ganze Instanzen können zudem gesteuert werden. Aktualisierungen können anhand eines Protokolls verfolgt werden, um fälschliche Aktionen erkennen zu können.

Beispiel: Einen Chatbot erstellen

Der „Watson Assistant“ ist ein Werkzeug zur individuellen Entwicklung eines Chatbots und bietet drei Möglichkeiten zur Dialogerstellung:

  • Aktionsskill : Bietet eine einfache Schnittstelle, über die ein Dialogablauf für einen Assistenten erstellt werden kann.
  • Dialogskill: Verwendet die Watson-Verarbeitung für natürliche Sprache und Technologien für maschinelles Lernen, um Benutzerfragen und -anforderungen zu verstehen und sie mit Antworten zu beantworten, die selbst verfasst wurden.
  • Suchskill : Verwendet für eine bestimmte Benutzerabfrage den IBM Watson™ Discovery-Service, um nach einer Datenquelle mit Self-Service-Inhalten zu suchen und eine Antwort zurückzugeben.

Im Folgenden werden die wichtigsten Begrifflichkeiten aufgeführt, die bei der Verwendung des Werkzeuges relevant sind, wenn ein Dialogskill erstellt werden möchte.

Ein Assistant ist ein Chatbot, der mehrere Skills besitzen kann. ​Ein Skill beschreibt dabei eine spezifische Fähigkeit eines Assistants. Ein Unternehmen kann ein Assistant verwalten und verschiedene Skills, je nach Themenschwerpunkt, anbieten. Das Kernstück des Skills ist der Dialog; eine Baumstruktur. Jeder Skill hat einen Dialog, der die Kommunikationsstruktur bezüglich eines Themenschwerpunktes darstellt. Am Dialog arbeitet der Redaktionelle Anwender, um Antwortmöglichkeiten zu definieren, die in Reaktion auf Kundentexte ( = was ein Kunde in den Chat schreibt) ausgegeben werden. Genauso definiert der Redaktionelle Anwender für jede Antwort eine Bedingung, die erfüllt werden muss, damit sie ausgegeben wird.  

Um die natürlichsprachlichen Kundentexte zu verstehen, liegt dem Assistant eine Künstliche Intelligenz zu Grunde. So können Kundentexte mit Absichten (Intents) in Verbindung gebracht werden, um daraufhin die richtige, zuvor definierte, Antwort auszugeben. E​in Intent ist ein Oberbegriff, der irgendetwas zusammenfasst. Intents werden manuell angelegt und mit User Examples befüllt. User Examples sind potenzielle Kundentexte, die zu dem jeweiligen Intent passen. 

Beispiel: Ein Skill soll bei einem Online-Shop für Kleidung die Kunden bezüglich der aktuellen Trends beraten, um die Beratung in einem physischen Store zu imitieren. Die erste Überlegung eines Redaktionellen Anwenders ist, welche Fragen der Skill beantworten können soll; dazu werden dann Oberbegriffe (die Intents) definiert. Ein Intent, der mit “#” gekennzeichnet wird, kann dann zum Beispiel “#Farbe” sein. Daraufhin müssen User Examples definiert werden, die ein Redaktioneller Anwender zunächst basierend auf fachlicher Expertise schätzt: (Mindestens 5, im besten Fall 30)

  • Welche Farben sind im Trend?
  • Trendfarben 
  • angesagte Farben
  • Welche Farbe passt am besten zu mir?
  • Ich möchte eine Farbberatung

Die zugrundeliegende KI speist die User Examples ein, durchläuft einen Trainingsprozess und wird daraufhin den Intent #Farbe erkennen können, wenn sich der Kundentext mit den User Examples ähnelt. Damit das korrekte Erkennen von Intents nicht ausschließlich von den User Examples abhängt, wird  fortwährend mit realen Kundentexten weiter trainiert. 

Neben Intents gibt es noch Entitäten, die bei der spezifischen Ausgabe von Antworten unterstützen. Eine Entität beschreibt ein Objekt und weist ihnen Werte zu.​ Das Erkennen von Entitäten erfolgt textuell; sie werden nur erkannt, wenn der Kunde konkret den Namen oder seinen Wert schreibt. Formal wird eine Entität “@Name:Wert” geschrieben. Eine Entität “@Jahreszeit” mit vier Werten könnte definiert werden als: @Jahreszeit:Frühling, @Jahreszeit:Sommer, @Jahreszeit:Herbst, @Jahreszeit:Winter.

Intents und Entitäten können beliebig genutzt und kombiniert werden, um Bedingungen, und somit Antworten bei Erfüllung der Bedingungen, zu definieren. Operatoren sind erlaubt. Beispiel:

If Assistant recognizes #Farbe && @Jahreszeit:Herbst
then reply
Herbstliche Trendfarben sind erdig und natürlich. [...]

Fazit

Vorteile

  • Automatisierung bestimmter Prozesse, um Zeit und Geld zu sparen, sowie Fehlerquoten zu reduzieren
  • Beherrschung einer formalen Abfragesprache nicht nötig, denn die Anfragen werden in natürlicher Sprache getätigt
  • Übertragbar auf jedes Cloud-gestützte Unternehmen
  • Einfache Verknüpfung mit anderen IBM Watson Produkten
  • Auch für größere Chatbots und intensive Nutzung gebaut
  • Ein großer Vorteil ist, dass mit dem Chatbot einerseits ein Prozess (zb. die Kundenberatung) automatisiert werden kann, und gleichzeitig wichtige Daten sammelbar sind. Alles, was mit dem Chatbot kommuniziert wird, kann analysiert werden und zu Geschäftsvorteilen umgewandelt werden.

Nachteile

  • Generiert nicht für jeden Anwendungsfall einen Mehrwert (auch ethisch diskutierbar: welche Bereiche sollten nicht automatisiert werden?)
  • Kunden verwechseln Bot ggf. mit echten Menschen
  • Trotz vorgefertigter Architektur hoher Zeitaufwand bei größeren Chatbots

Quellen

Camiade, Jean Marie (2013, 07. November). Multi-channel, cross-channel, omni-channel retailing: business in all its forms. Digital Analytics by AT Internet. https://blog.atinternet.com/en/multi-channel-cross-channel-omni-channel-retailing-business-forms/ (Zugriff am 05.01.22).

D’Angelo, Scott (2019, 6. August). Introduction to Watson Assistant – Learn the basics of the Watson Assistant Service (Überarbeitet 2021, 4. Oktober). IBM Developer. https://developer.ibm.com/articles/introduction-watson-assistant/ (Zugriff 05.01.2022).

Campos, Adrian; Boyer, Jerome (o. D.). Build an IT support chatbot by using IBM Watson Assistant. https://www.ibm.com/cloud/architecture/tutorials/build-it-support-chatbot-watson-assistant?task=4 (Zugriff 05.01.2022)

IBM (o.D.). IBM Watson. https://www.ibm.com/watson/ (Zugriff 05.01.2022)

IBM (o.D.). IBM Watson Products. https://www.ibm.com/watson/products-services (Zugriff 05.01.2022)

IBM – Watson Assistant (o. D.). Customer experience integrations. https://www.ibm.com/products/watson-assistant/integrations (Zugriff 05.01.2022)

IBM – Watson Assistant (o. D.). Dialogorientierte KI, die auf Unternehmen abgestimmt ist. https://www.ibm.com/de-de/products/watson-assistant/enterprise-security (Zugriff 05.01.2022)

IBM (o.D.). IBM Watson Products. https://www.ibm.com/watson/products-services (Zugriff 05.01.2022)

The DeepQA Research Team – IBM. (o. D.). IBM Research. https://researcher.watson.ibm.com/researcher/view_group_subpage.php?id=2159 (Zugriff: 05.01.2022)

Ferrucci, D., Brown, E., Chu-Carroll, J., Fan, J., Gondek, D., Kalyanpur, A. A., Lally, A., Murdock, J. W., Nyberg, E., Prager, J., Schlaefer, N. & Welty, C. (2010). Building Watson: An Overview of the DeepQA Project. AI Magazine, 31(3), 59.

Anhang

Lesenswert: Watson Assistant – The AI assistant that solves customer issues the first time

Doku

Präsentation