Call Center Optimierung durch Speech to Text und Advanced Analytics

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:

Call to Speech

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:

  1. Audiodatei des aufgenommenen Call Center-Gesprächs wird an das Hadoop Cluster in der Amazon Cloud geschickt.
  2. Das Speech-To-Text Modul wird angestoßen und transkribiert die neu eingetroffene Audiodatei.
  3. Sentiment-Analyse und Topic-Discovery mit Apache Spark werden aufgrund des neuen Gesprächprotokolls ausgeführt.
  4. 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 1 und 2 sind Beispielergebnisse der Topic-Discovery dargestellt.  Die Word Cloud in Abbildung 1 zeigt die wichtigsten Wörter aller gefundenen Topics (Cluster), während die Word Cloud in Abbildung 2 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 3) und die Anzahl an unnatürlichen Gesprächspausen eines Agenten (siehe Abbildung 4). 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 5). 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 6).

Word Cloud aller gefundenen Topics
Abbildung 1: Word Clouder aller gefundenen Topics.
Word Cloud eines Topics
Abbildung 2: Word Cloud eines Topics

abschnitt

Durchschnittliche Gesprächsüberlappung verursacht durch die Agents.
Abbildung 3: Durchschnittliche Gesprächsüberlappung verursacht durch die Agents.

abschnitt

Anzahl unnatürlicher Gesprächspausen der Agents.
Abbildung 4: Anzahl unnatürlicher Gesprächspausen der Agents.

abschnitt

Auszug eines Gesprächsprotokolls mit zugehörigen Sentiments.
Abbildung 5: Auszug eines Gesprächsprotokolls mit zugehörigen Sentiments.

abschnitt

Entwicklung des Sentiments innerhalb eines Gesprächs.
Abbildung 6: Entwicklung des Sentiments innerhalb eines Gesprächs

abschnitt

Weitere geplante Projektschritte

  • Einbindung der Kundenhistorie
  • Near-Realtime Umsetzung für NBO und NBA
  • stärkere Integration mit der Call Center-Software