Andreas Schneider
IT Architect
Das Kategorisieren von Kundenkorrespondenz ist zeit- und ressourcenintensiv. Wir zeigen eine Lösung auf Basis der künstlichen Intelligenz (KI).
Autor: Andreas Schneider
Kundenanliegen schnell und gut zu beantworten bedingt, dass sie an die richtige Stelle gelangen. Wir zeigen, wie wir dies mit modernen Methoden aus dem Bereich der künstlichen Intelligenz (KI) erreichen können. Dank Machine Learning (ML) in der Cloud, können wir die Anwendung schneller als mit herkömmlichen Methoden entwickeln, bereitstellen, operationalisieren und letztendlich auf den Markt bringen.
Die Sprache ist unser wichtigstes Kommunikationsmittel. Deshalb birgt die automatisierte Auswertung von Texten grosse Potenziale. Textklassifizierung gehört zu den «Low Hanging Fruits» mit direktem Nutzen für die Benutzer. Lassen Sie uns nun also eine Frucht vom Machine-Learning-Baum pflücken.
Unser Beispiel ist eine Versicherung, die ihre Kundenanfragen, mit Textklassifikation automatisiert, an die richtigen Bearbeiter zuordnen will. So gelangen die E-Mails schneller an die richtige Stelle und können zeitnah beantwortet werden. Dies soll nun neu durch eine «Lernmaschine» erfolgen und nicht mehr manuell von einer Person durchgeführt werden. Die Maschine teilt uns mit, mit welcher Wahrscheinlichkeit die E-Mail in eine der verschiedenen Kategorien gehört (Abbildung 1).
Weitere Use Cases für textuelle Daten finden Sie im Blogbeitrag zum Thema AI-based Natural Language Processing: 7 Einsatzgebiete in modernen Unternehmen.
Unser ML Modell für die E-Mail-Klassifizierung lernt aus Beispiel-Mails, von welchen wir die korrekte Zuordnung bereits kennen. Wir verwenden hier die Methoden, die uns Azure ML bietet um Daten, Code, und Modelle zu versionieren, damit wir die Entstehung unseres Modells später nachvollziehen können.
Erfolgreiches Machine Learning zeichnet sich durch ein sauberes Management von Daten, Modellen, Code und Deployments aus. Dazu sollten wir den ML-Lebenszyklus im Blick behalten und auf Best Practices achten. Azure ML hilft uns dabei.
Machine Learning Projekte, wie das hier beschriebene, bestehen grob aus drei Phasen (Abbildung 2). Für jede Phase gibt es in Azure ML Konzepte, welche die Entwicklung vereinfachen. Abbildung 3 gibt einen Überblick zur Implementierung unseres Use Cases:
Speziell für die Schweiz müssen wir in allen drei Phasen die Mehrsprachigkeit beachten, um gute Resultate zu erzielen. Pro Sprache haben wir unterschiedliche Mengen an Daten, aus welchen wir sprachspezifische Modelle erstellen.
In der Umsetzung unterstützt uns Azure ML mit verschiedenen Konzepten, welche die Entwicklung vereinfachen. Datasets geben uns versionierten Zugriff auf unsere E-Mails, unabhängig davon auf welcher Recheninstanz wir uns befinden. Resultate, Plots und andere Informationen, welche wir während dem Training aufzeichnen, können wir für jeden Durchlauf im Webinterface einsehen und damit verschiedene Runs vergleichen. Die Klassifikationsmodelle erfassen wir in der Model Registry. Sie gibt uns einen Überblick über alle Modelle und Modellversionen und vereinfacht uns die Modellauswahl. Mit Azure ML können wir mühelos fertige Modelle übers Internet anbieten und danach überwachen lassen. Azure ML erstellt dafür eine REST API für Modellabfragen. Pipelines geben uns die Möglichkeit bestehende Modelle mit den frisch gesammelten Daten zu trainieren. Zudem bietet Azure ML weitere Features wie zum Beispiel Auto ML, um das Bauen von Modellen zu automatisieren.
Azure ML gibt uns eine simple Infrastruktur, auf welcher wir mit bestehendem Wissen Machine-Learning-Modelle in der für Unternehmen geforderten Qualität entwickeln können. Die Beschleunigung durch die Cloud verkürzt nicht nur die Time-To-Market, sondern erlaubt es uns auch Modelle mit speziellen Hardware-Anforderungen zu trainieren. Gleichzeitig bezahlen wir in der Cloud nur für diejenigen Dienste, welche wir benötigen.
Zudem unterstützt – oder fast schon zwingt – uns Azure ML reproduzierbare und nachvollziehbare Modelle zu bauen, weil Daten, Code und Modelle konsequent versioniert werden. Vorüber sind die Zeiten als jemand ein Modell gebaut hat, von dem nachher niemand mehr wusste, wie es zustande gekommen ist.
Dank Machine Learning können unsere Kunden schneller und besser auf die Anliegen ihrer Kunden reagieren. Das automatisierte Kategorisieren ist dabei erst der Anfang. Künstliche Intelligenz bietet weitere Möglichkeiten, den Kundenkontakt personalisiert und automatisiert zu unterstützen.
Daten: E-Mail Inhalte, Labels für die verschiedenen Kategorien, einlesen mit Pandas.
Modell: Zeitreihen Multi-Class-Klassifizierung, LSTM Layers mit Keras.
Cloud: Azure ML Python SDK, Modellentstehung als Pipeline, Training mit GPUs, Deployment auf Inference Cluster