Textklassifikation mit Microsoft Azure Teil I

Einleitung
Immer mehr Cloudanbieter erweitern ihr Leistungsspektrum um kognitive Dienste wie Spracherkennung, Sprachübersetzung, Entitätserkennung, Language Understanding, etc. In der Nutzung der Dienste steckt für viele Unternehmen ein enormes Potenzial ihre Geschäftsprozesse automatisiert zu optimieren. In dem folgenden Artikel möchte ich ihnen den Einsatz einiger kognitiver Dienste von Microsoft Azure erläutern, um beliebige Texte zu klassifizieren.

Was ist Textklassifizierung?
Textklassifikation ist eine Methode des maschinellen Lernens, das sich mit der Identifizierung der Kerninhalte von beliebigen Dokumenten beschäftigt. Das entsprechende Dokument wird mit einer Trefferwahrscheinlichkeit (Confidence Score) einer Kategorie oder einem Tag zugeordnet. Diese Information kann dann genutzt werden, um beispielsweise Kundenanfragen zu klassifizieren und der entsprechenden Abteilung zuzuweisen.

Wie funktioniert die Textklassifizierung?
Es gibt mehrere Arten der Textklassifikation. Zum einen werden in vielen Unternehmen diese Aufgabe noch manuell durch einen oder mehrere Mitarbeiter durchgeführt. Die Qualität ist sehr hoch, jedoch sind die Personalkosten hierfür sehr teuer. Im Gegensatz dazu steht die automatisierte Methode, bei der maschinelles Lernen eingesetzt wird, um Texte zu klassifizieren.
Der Ansatz der automatischen Textklassifizierung kann in 3 Arten von Systemen gegliedert werden:

  • Regelbasierte Systeme
  • Systeme mit maschinellem Lernen
  • Hybride Systeme

Regelbasierte Systeme
Bei regelbasierten Systemen werden Sprachregeln definiert, die dabei helfen relevante Elemente des Text zu identifizieren. Der Aufwand für die Erstellung der Sprachregeln ist sehr hoch, da man umfassende Kenntnisse der Themen haben muss. Zudem müssen diese Regeln permanent aktuell gehalten werden.

Systeme mit maschinellem Lernen
Das System mit maschinellem Lernen basiert auf früheren Eingaben. Das System lernt anhand von Trainingsdaten, welche Kategorien oder Tags einem Text zugeordnet sind. Hierbei ist nicht nur die Qualität, sondern auch die Quantität der Daten relevant. Wird eine Kategorie mit vielen Beispielen trainiert, bedeutet das nicht zwangsweise einen hohen Confidence Score. Die Trainingsdaten müssen vorher aufbereitet und bereinigt werden. Zudem dürfen die Trainingsdaten sich nicht mit anderen Kategorien maßgeblich überschneiden.

Hybride Systeme
Die hybriden Module benutzen sowohl Sprachregeln als auch Algorithmen des maschinellen Lernens, um beliebige Text zu klassifizieren.

Dienste der Textklassifikation

  • Spracherkennung
    Die Spracherkennung identifiziert die Sprache des Textes und gibt den entsprechenden Ländercode zurück.
  • Erkennung der Absicht
    Die Erkennung der Absicht (Intent) erkennt anhand der Trainingsdaten die Intension des Textes und liefert den Confidence Score zurück. Anhand des Scores muss dann entschieden werden, ob es zur Klassifizierung ausreichend ist. Eine in der Praxis häufig verwendete Schwelle liegt bei 0,85.
  • Entitätserkennung
    Die Entitätserkennung funktioniert analog zur Erkennung der Absicht. Es erkennt im Text häufig verwendete Details wie Name, Adresse, Datum, etc. Es können aber auch selbst definierte Entitäten wie Versicherungsnummer, Kennzeichen, IBAN, etc. erkannt werden. Diese sollten in den Trainingsdaten entsprechend aufbereitet werden.
  • Empfindungsanalyse
    Die Empfindungsanalyse (Sentiment Detection) erkennt die Stimmung eines Textes. Meistens werden die Kategorien positiv, negativ oder neutral mit einem Score ausgegeben. Anhand der Angaben kann dann den Texten eine höhere bzw. niedrigere Priorität zugewiesen werden.
  • Beantworten von Fragen
    Das Beantworten von Fragen ist ein getrennter Dienst in Microsoft Azure. Man hat die Möglichkeit eine Antwort mit mehreren Fragemöglichkeiten zu trainieren. Gibt man eine Frage ein, wird eine entsprechende Antwort ausgespielt. Dieser QnA-Service wird meistens in Chatbots verwendet, um Antworten auf Fragen eines Nutzers zu finden.
  • Übersetzer
    Der Übersetzer erkennt mehr als 100 Sprachen und Dialekte und übersetzt diese.

Anwendungsbereiche
Die Anwendung von automatischen Textklassifizierungsalgorithmen finden in verschiedenen Bereichen statt. Es hängt sehr stark von der Tätigkeit und dem Umfeld der Organisation ab. Textklassifikation bietet aufgrund seiner großen Bandbreite an Funktionen in jeglichen Bereichen Vorteile.

Hier ein paar Beispiele:

  1. Klassifizierung von Supportanfragen
  2. Analyse von Kundenmeinungen
  3. Erkennung von negativen Absichten im Social Media Umfeld

Fazit
Textklassifikation mit maschinellem Lernen bietet in vielen Unternehmen ein enormes Einspar- und Automatisierungspotential. Viele Firmen scheuen diesen Aufwand, obwohl sie über ausreichend Trainingsdaten verfügen und diese auch nutzen könnten, um die Cloud-Dienste zu trainieren. Zudem werden die kognitiven Dienste in der Cloud immer besser und genauer. Hier wäre enormes Potenzial, um das Unternehmen digital voranzubringen.
Können sie sich eine Anwendung auch in ihrem Unternehmen vorstellen? Gerne tauschen wir uns mit ihnen darüber aus.