Die Zufriedenheit eines Kunden hängt oftmals nicht nur von der Qualität des gekauften Produkts ab, sondern auch vom Service des Anbieters. Ein positives Kundenerlebnis kann darüber entscheiden, ob aus einem zufriedenen Kunden ein loyaler Kunde wird und er sich eventuell sogar zu einem “Botschafter der Marke” entwickelt.
In diesem Blog möchten wir Ihnen unsere umgesetzte innovative und modulare Lösung für die Optimierung eines Call Centers vorstellen. Hierfür haben wir im Rahmen eines PoCs die Google Speech API verwendet, um die Call Center-Gespräche zu transkribieren und um anschließend mit Hilfe von Advanced Analytics nicht nur quantitative, sondern auch qualitative Auswertungen der Gespräche zu ermöglichen.
Ausgangssituation
Ausgangslage für die Umsetzung dieses Use Cases waren Audiodateien von Telefonmitschnitten mit Kunden, die im Service-Center eines Unternehmens, das diverse elektronische Geräte wie Mobiltelefone und Laptops vertreibt.
Projektziele
Ziel des Projekts war es, für das Unternehmen eine automatisierte und modulare Lösung zu entwickeln, die diese Audio-Dateien in Text transkribiert und durch Advanced-Analytics-Methoden Erkenntnisse zur Optimierung der Call-Center-Performance ableitet.
Nutzen
- Steigerung der Kundenzufriedenheit und Kundenbindung
- Qualität der Next Best Action (NBA) bzw. Next Best Offer (NBO) erhöhen
- Identifikation von Trainingsmaßnahmen, Gesprächsschwerpunkten und Vertriebspotential
- Automatisiertes Skill Based Routing
- Kostenreduzierung im Call Center durch Automatisierung von Prozessen
- Messbarkeit der qualitativen Leistung des Agents
- Ressourcen-Optimierung
- Wissen für zukünftige Chatbots zu gewinnen
Umsetzung
Nicht nur wegen der großen Datenmenge, die ein Call-Center pro Tag produziert, sondern auch aufgrund des Formats der Gesprächsprotokolle ist eine Big Data Hadoop Plattform ideal für die weitere Verarbeitung der Daten. Für die Umsetzung des Use Cases haben wir folgende Technologien und Big Data Open Source Tools verwendet:
- Hadoop Cluster in der Amazon-Cloud
(EC2:2 Master Nodes (m4.2xlarge) und 6 Slaves (m4.xlarge).) - Cloudera Hadoop Distribution
- Hadoop Distributed Filesystem (HDFS)
- ffmpeg und Google Speech API
- Python mit Apache Spark SQL und Apache Spark ML
- Elasticsearch und Kibana
Vereinfacht lässt sich die technisch anspruchsvolle Architektur wie folgt darstellen:
Eine entscheidende Komponente dieser Architektur ist das Speech-To-Text Modul. Nur wenn die Gesprächsprotokolle der transkribierten Audiodaten in guter Qualität vorliegen, können weitere Analysen mit Machine Learning erfolgreich umgesetzt werden. Während des Projekts haben wir verschiedene Bibliotheken für die Übersetzung von Sprache zu Text getestet. Es hat sich gezeigt, dass die Google Speech API mit einer durchschnittlichen Fehlerquote von nur 5% zu den besten Ergebnissen führte. Unser Speech-To-Text Modul auf Basis der Google-API benötigt für die Übersetzung und die Berechnung erster Kennzahlen eines vierminütigen Gesprächs ungefähr eine Minute. Diese Zeit läßt sich aber durch Parallelisierung weiter verkürzen.
Für die weitere Verarbeitung der Daten haben wir ausschließlich kostenlose Open Source Technologien verwendet. Somit fallen lediglich Kosten für die Nutzung der AWS Cloud, der Cloudera-Distribution sowie der Google Speech API an. Um die Gesprächsprotokolle effizient analysieren zu können, werden diese auf das Hadoop Distributed Filesystem (HDFS) abgelegt und mit Apache Spark SQL aufbereitet, um anschließend mit Spark Machine Learning (ML) eine Topic-Discovery auf allen Gesprächsprotokollen und eine Sentiment-Analyse auf den einzelnen Gesprächen durchzuführen.
Insgesamt werden über 40 Kennzahlen generiert und mit Elasticsearch und Kibana Dashboards zur Visualisierung erstellt.
Alle genannten Schritte verlaufen völlig automatisch. Der Workflow wird in der folgenden Aufzählung kurz erläutert:
- Audiodatei des aufgenommenen Call Center-Gesprächs wird an das Hadoop Cluster in der Amazon Cloud geschickt.
- Das Speech-To-Text Modul wird angestoßen und transkribiert die neu eingetroffene Audiodatei.
- Sentiment-Analyse und Topic-Discovery mit Apache Spark werden aufgrund des neuen Gesprächprotokolls ausgeführt.
- Analyse-Ergebnisse werden an Elasticsearch gesendet und direkt automatisch mit Kibana in Form von Dashboards visualisiert.
Für die Verarbeitung der Punkte 3 und 4 eines 4‑minütigen Telefonats werden weniger als eine Sekunde auf dem Cluster benötigt.
Ausgewählte Ergebnisse
In Abbildung 2 und 3 sind Beispielergebnisse der Topic-Discovery dargestellt. Die Word Cloud in Abbildung 2 zeigt die wichtigsten Wörter aller gefundenen Topics (Cluster), während die Word Cloud in Abbildung 3 die Wörter eines Topics (Clusters) visualisiert. Topics werden sowohl für alle Gespräche, als auch für Gespräche eines bestimmten Zeitraums erstellt. Somit ist es z. B. möglich mit den Topics eines Tages Probleme besser zu identifizieren und schneller zu beheben.
Weitere interessante Kennzahlen sind z. B. der Anteil von Gesprächsüberlappungen (siehe Abbildung 4) und die Anzahl an unnatürlichen Gesprächspausen eines Agenten (siehe Abbildung 5). Eine Gesprächsüberlappung findet statt, wenn der Agent dem Kunden ins Wort fällt. Unnatürliche Gesprächspausen entstehen beispielsweise falls der Agent lange Zeit zum Nachdenken braucht und können die Zufriedenheit des Kundes beeinflussen.
Jedes transkribierte Gespräch kann auf dem Dashboard ausgewählt und angezeigt werden (siehe Abbildung 6). Im Rahmen der Sentimentanalyse weisen wir mit Hilfe von Machine Learning jedem „Gesprächs-Snippet“ ein Sentiment bzw. eine Klasse (positiv, negativ oder neutral) zu. Der Verlauf des Sentiments eines Gesprächs wird in einem Histogramm dargestellt (siehe Abbildung 7).
Weitere geplante Projektschritte
- Einbindung der Kundenhistorie
- Near-Realtime Umsetzung für NBO und NBA
- stärkere Integration mit der Call Center-Software