SlideShare ist ein Scribd-Unternehmen logo
1 von 14
Downloaden Sie, um offline zu lesen
Schnellerer Servicedesk-Support durch
automatische Textklassifikation
Dr. Kathrin Björkelund
Hochschule Karlsruhe, 3. März 2016
Problemstellung
2
Betreff: Anmeldung am PC schlägt fehl
Beschreibung: Max Mustermann kann sich nicht am PC
anmelden. Fehlermeldung: Stammsatz fehlt.
Auswirkung: Arbeitsplatz
Dringlichkeit: Arbeiten eingeschränkt mögl.
Vorgangsart: Störung
Level 1
Level 2
User
Modellierung: Dimensionen und Klassen
3
Auswirkung
Vorgangsart
Dringlichkeit
• Arbeitsplatz 98.08 %
• Abteilung 1.73 %
• Hauptabteilung 0.20 %
• Service-Request 45.42 %
• Störung 35.47 %
• Administration 10.76 %
• Beschaffungsanfrage 3.58 %
• Arbeiten möglich 90.39 %
• Arbeiten eingeschränkt möglich 6.16 %
• Arbeiten stark eingeschränkt 3.45 %
• Monitoring 3.06 %
• Hardwarestörung 1.67 %
• Bedienungsfehler 0.02 %
• ...
Exkurs: Baseline
• Wie gut ist ein extrem simples Modell?
• Mehrheits-Baseline sagt immer häufigste Klasse vorher
• Falls Trainingsdaten repräsentativ:
• Auswirkung=Arbeitsplatz: 98 % Genauigkeit
• Dringlichkeit=Arbeiten möglich: 90.39 %
• Vorgangsart=Service-Request: 45.42 %
4
Modellierung: Features
• Wörter („bag of words“) aus Betreff und Beschreibung
• Wortkombinationen (Bigramme)
• Filtern von Stoppwörtern, Daten, Emailadressen, ...
• Stemming
5
Beispiel: Featurevektor
6
Betreff: Anmeldung am PC schlägt fehl
Beschreibung: Max Mustermann kann sich nicht am
PC anmelden. Fehlermeldung: Stammsatz fehlt.
betreff:anmeldung betreff:pc betreff:schlägt betreff:fehl
betreff:anmeldung&betreff:pc betreff:pc&betreff:schlag
betreff:schlag&betreff:fehl
beschreibung:max beschreibung:mustermann beschreibung:kann
beschreibung:pc beschreibung:anmelden beschreibung:fehlermeldung
beschreibung:stammsatz beschreibung:fehlt
beschreibung:max&beschreibung:mustermann
beschreibung:mustermann&beschreibung:kann ...
Betrefffeatures
Beschreibungsfeatures
Feature-Bigramme
Feature-Unigramme
Feature-Bigramme
Feature-Unigramme
Modellierung: Algorithmen
• Naive Bayes:
•
• MLE
• Lineare SVM: sep. Hyperplane
7
ˆy = arg max
k2{1,...,K}
p(Ck)
Y
i
p(xi|Ck)
Evaluation: Datensätze
• Aufteilung der Daten:
• Trainingsdaten: Lerngrundlage (56k Tickets)
• Entwicklungsdaten: Parametertuning ( 2k Tickets)
• Testdaten: Finale Evaluation ( 2k Tickets)
• Zufällige vs. zeitliche Aufteilung
8
03.2014 03.2015
Evaluation: Metriken
• Accuracy: 100 * #TP / #Testinstanzen
• Precision: 100 * #TP / (#TP + #FP)
• Recall: 100 * #TP / (#TP + #FN)
9
TN
TPFP FN
Blau: tatsächlich Klasse c
Orange: Klasse c vorhergesagt
Evaluation: Ergebnisse
• DE besser als EN
• Trainingsdatenmenge
• SVM besser als Naive Bayes
• Abhängigkeit der Features
• Stemming/Normalisierung hilft für DE nicht
• Annahme: kodiert relevante Information
10
Evaluation: Ergebnisse
11
Baseline SVM
Vorgangsart
49.18 85.90
Auswirkung
98.36 98.36
Dringlichkeit
92.35 93.22
Integration in Produktivsystem
• Einbindung in Ticketsystem
• als Webservice
• momentan Übernahme per Click
• Caching des Modells
• Liblinear-Bibliothek dateibasiert
• ursprünglich ohne Modell-Caching
12
SMS
Problemstellung
13
Betreff: Anmeldung am PC schlägt fehl
Beschreibung: Max Mustermann kann sich nicht am PC
anmelden. Fehlermeldung: Stammsatz fehlt.
Level 1
Level 2
User
Auswirkung: Arbeitsplatz
Dringlichkeit: Arbeiten eingeschränkt mögl.
Vorgangsart: Störung
Vielen Dank!
Dr. Kathrin Björkelund
Data Management & Analytics
inovex GmbH
Karlsruher Straße 71
75179 Pforzheim
+49 (0)173 3181-085
kathrin.bjoerkelund@inovex.de

Weitere ähnliche Inhalte

Mehr von inovex GmbH

Interpretable Machine Learning
Interpretable Machine LearningInterpretable Machine Learning
Interpretable Machine Learninginovex GmbH
 
Jenkins X – CI/CD in wolkigen Umgebungen
Jenkins X – CI/CD in wolkigen UmgebungenJenkins X – CI/CD in wolkigen Umgebungen
Jenkins X – CI/CD in wolkigen Umgebungeninovex GmbH
 
AI auf Edge-Geraeten
AI auf Edge-GeraetenAI auf Edge-Geraeten
AI auf Edge-Geraeteninovex GmbH
 
Prometheus on Kubernetes
Prometheus on KubernetesPrometheus on Kubernetes
Prometheus on Kubernetesinovex GmbH
 
Deep Learning for Recommender Systems
Deep Learning for Recommender SystemsDeep Learning for Recommender Systems
Deep Learning for Recommender Systemsinovex GmbH
 
Representation Learning von Zeitreihen
Representation Learning von ZeitreihenRepresentation Learning von Zeitreihen
Representation Learning von Zeitreiheninovex GmbH
 
Talk to me – Chatbots und digitale Assistenten
Talk to me – Chatbots und digitale AssistentenTalk to me – Chatbots und digitale Assistenten
Talk to me – Chatbots und digitale Assistenteninovex GmbH
 
Künstlich intelligent?
Künstlich intelligent?Künstlich intelligent?
Künstlich intelligent?inovex GmbH
 
Das Android Open Source Project
Das Android Open Source ProjectDas Android Open Source Project
Das Android Open Source Projectinovex GmbH
 
Machine Learning Interpretability
Machine Learning InterpretabilityMachine Learning Interpretability
Machine Learning Interpretabilityinovex GmbH
 
Performance evaluation of GANs in a semisupervised OCR use case
Performance evaluation of GANs in a semisupervised OCR use casePerformance evaluation of GANs in a semisupervised OCR use case
Performance evaluation of GANs in a semisupervised OCR use caseinovex GmbH
 
People & Products – Lessons learned from the daily IT madness
People & Products – Lessons learned from the daily IT madnessPeople & Products – Lessons learned from the daily IT madness
People & Products – Lessons learned from the daily IT madnessinovex GmbH
 
Infrastructure as (real) Code – Manage your K8s resources with Pulumi
Infrastructure as (real) Code – Manage your K8s resources with PulumiInfrastructure as (real) Code – Manage your K8s resources with Pulumi
Infrastructure as (real) Code – Manage your K8s resources with Pulumiinovex GmbH
 
Remote First – Der Arbeitsplatz in der Cloud
Remote First – Der Arbeitsplatz in der CloudRemote First – Der Arbeitsplatz in der Cloud
Remote First – Der Arbeitsplatz in der Cloudinovex GmbH
 
Data Science und Machine Learning im Kubernetes-Ökosystem
Data Science und Machine Learning im Kubernetes-ÖkosystemData Science und Machine Learning im Kubernetes-Ökosystem
Data Science und Machine Learning im Kubernetes-Ökosysteminovex GmbH
 
TTD Tatort-driven Development
TTD Tatort-driven DevelopmentTTD Tatort-driven Development
TTD Tatort-driven Developmentinovex GmbH
 
Down the event-driven road: Experiences of integrating streaming into analyti...
Down the event-driven road: Experiences of integrating streaming into analyti...Down the event-driven road: Experiences of integrating streaming into analyti...
Down the event-driven road: Experiences of integrating streaming into analyti...inovex GmbH
 
React mit TypeScript – eine glückliche Ehe
React mit TypeScript – eine glückliche EheReact mit TypeScript – eine glückliche Ehe
React mit TypeScript – eine glückliche Eheinovex GmbH
 

Mehr von inovex GmbH (20)

Interpretable Machine Learning
Interpretable Machine LearningInterpretable Machine Learning
Interpretable Machine Learning
 
Jenkins X – CI/CD in wolkigen Umgebungen
Jenkins X – CI/CD in wolkigen UmgebungenJenkins X – CI/CD in wolkigen Umgebungen
Jenkins X – CI/CD in wolkigen Umgebungen
 
AI auf Edge-Geraeten
AI auf Edge-GeraetenAI auf Edge-Geraeten
AI auf Edge-Geraeten
 
Prometheus on Kubernetes
Prometheus on KubernetesPrometheus on Kubernetes
Prometheus on Kubernetes
 
Deep Learning for Recommender Systems
Deep Learning for Recommender SystemsDeep Learning for Recommender Systems
Deep Learning for Recommender Systems
 
Azure IoT Edge
Azure IoT EdgeAzure IoT Edge
Azure IoT Edge
 
Representation Learning von Zeitreihen
Representation Learning von ZeitreihenRepresentation Learning von Zeitreihen
Representation Learning von Zeitreihen
 
Talk to me – Chatbots und digitale Assistenten
Talk to me – Chatbots und digitale AssistentenTalk to me – Chatbots und digitale Assistenten
Talk to me – Chatbots und digitale Assistenten
 
Künstlich intelligent?
Künstlich intelligent?Künstlich intelligent?
Künstlich intelligent?
 
Dev + Ops = Go
Dev + Ops = GoDev + Ops = Go
Dev + Ops = Go
 
Das Android Open Source Project
Das Android Open Source ProjectDas Android Open Source Project
Das Android Open Source Project
 
Machine Learning Interpretability
Machine Learning InterpretabilityMachine Learning Interpretability
Machine Learning Interpretability
 
Performance evaluation of GANs in a semisupervised OCR use case
Performance evaluation of GANs in a semisupervised OCR use casePerformance evaluation of GANs in a semisupervised OCR use case
Performance evaluation of GANs in a semisupervised OCR use case
 
People & Products – Lessons learned from the daily IT madness
People & Products – Lessons learned from the daily IT madnessPeople & Products – Lessons learned from the daily IT madness
People & Products – Lessons learned from the daily IT madness
 
Infrastructure as (real) Code – Manage your K8s resources with Pulumi
Infrastructure as (real) Code – Manage your K8s resources with PulumiInfrastructure as (real) Code – Manage your K8s resources with Pulumi
Infrastructure as (real) Code – Manage your K8s resources with Pulumi
 
Remote First – Der Arbeitsplatz in der Cloud
Remote First – Der Arbeitsplatz in der CloudRemote First – Der Arbeitsplatz in der Cloud
Remote First – Der Arbeitsplatz in der Cloud
 
Data Science und Machine Learning im Kubernetes-Ökosystem
Data Science und Machine Learning im Kubernetes-ÖkosystemData Science und Machine Learning im Kubernetes-Ökosystem
Data Science und Machine Learning im Kubernetes-Ökosystem
 
TTD Tatort-driven Development
TTD Tatort-driven DevelopmentTTD Tatort-driven Development
TTD Tatort-driven Development
 
Down the event-driven road: Experiences of integrating streaming into analyti...
Down the event-driven road: Experiences of integrating streaming into analyti...Down the event-driven road: Experiences of integrating streaming into analyti...
Down the event-driven road: Experiences of integrating streaming into analyti...
 
React mit TypeScript – eine glückliche Ehe
React mit TypeScript – eine glückliche EheReact mit TypeScript – eine glückliche Ehe
React mit TypeScript – eine glückliche Ehe
 

Schnellerer Servicedesk-Support durch automatische Textklassifikation

  • 1. Schnellerer Servicedesk-Support durch automatische Textklassifikation Dr. Kathrin Björkelund Hochschule Karlsruhe, 3. März 2016
  • 2. Problemstellung 2 Betreff: Anmeldung am PC schlägt fehl Beschreibung: Max Mustermann kann sich nicht am PC anmelden. Fehlermeldung: Stammsatz fehlt. Auswirkung: Arbeitsplatz Dringlichkeit: Arbeiten eingeschränkt mögl. Vorgangsart: Störung Level 1 Level 2 User
  • 3. Modellierung: Dimensionen und Klassen 3 Auswirkung Vorgangsart Dringlichkeit • Arbeitsplatz 98.08 % • Abteilung 1.73 % • Hauptabteilung 0.20 % • Service-Request 45.42 % • Störung 35.47 % • Administration 10.76 % • Beschaffungsanfrage 3.58 % • Arbeiten möglich 90.39 % • Arbeiten eingeschränkt möglich 6.16 % • Arbeiten stark eingeschränkt 3.45 % • Monitoring 3.06 % • Hardwarestörung 1.67 % • Bedienungsfehler 0.02 % • ...
  • 4. Exkurs: Baseline • Wie gut ist ein extrem simples Modell? • Mehrheits-Baseline sagt immer häufigste Klasse vorher • Falls Trainingsdaten repräsentativ: • Auswirkung=Arbeitsplatz: 98 % Genauigkeit • Dringlichkeit=Arbeiten möglich: 90.39 % • Vorgangsart=Service-Request: 45.42 % 4
  • 5. Modellierung: Features • Wörter („bag of words“) aus Betreff und Beschreibung • Wortkombinationen (Bigramme) • Filtern von Stoppwörtern, Daten, Emailadressen, ... • Stemming 5
  • 6. Beispiel: Featurevektor 6 Betreff: Anmeldung am PC schlägt fehl Beschreibung: Max Mustermann kann sich nicht am PC anmelden. Fehlermeldung: Stammsatz fehlt. betreff:anmeldung betreff:pc betreff:schlägt betreff:fehl betreff:anmeldung&betreff:pc betreff:pc&betreff:schlag betreff:schlag&betreff:fehl beschreibung:max beschreibung:mustermann beschreibung:kann beschreibung:pc beschreibung:anmelden beschreibung:fehlermeldung beschreibung:stammsatz beschreibung:fehlt beschreibung:max&beschreibung:mustermann beschreibung:mustermann&beschreibung:kann ... Betrefffeatures Beschreibungsfeatures Feature-Bigramme Feature-Unigramme Feature-Bigramme Feature-Unigramme
  • 7. Modellierung: Algorithmen • Naive Bayes: • • MLE • Lineare SVM: sep. Hyperplane 7 ˆy = arg max k2{1,...,K} p(Ck) Y i p(xi|Ck)
  • 8. Evaluation: Datensätze • Aufteilung der Daten: • Trainingsdaten: Lerngrundlage (56k Tickets) • Entwicklungsdaten: Parametertuning ( 2k Tickets) • Testdaten: Finale Evaluation ( 2k Tickets) • Zufällige vs. zeitliche Aufteilung 8 03.2014 03.2015
  • 9. Evaluation: Metriken • Accuracy: 100 * #TP / #Testinstanzen • Precision: 100 * #TP / (#TP + #FP) • Recall: 100 * #TP / (#TP + #FN) 9 TN TPFP FN Blau: tatsächlich Klasse c Orange: Klasse c vorhergesagt
  • 10. Evaluation: Ergebnisse • DE besser als EN • Trainingsdatenmenge • SVM besser als Naive Bayes • Abhängigkeit der Features • Stemming/Normalisierung hilft für DE nicht • Annahme: kodiert relevante Information 10
  • 11. Evaluation: Ergebnisse 11 Baseline SVM Vorgangsart 49.18 85.90 Auswirkung 98.36 98.36 Dringlichkeit 92.35 93.22
  • 12. Integration in Produktivsystem • Einbindung in Ticketsystem • als Webservice • momentan Übernahme per Click • Caching des Modells • Liblinear-Bibliothek dateibasiert • ursprünglich ohne Modell-Caching 12
  • 13. SMS Problemstellung 13 Betreff: Anmeldung am PC schlägt fehl Beschreibung: Max Mustermann kann sich nicht am PC anmelden. Fehlermeldung: Stammsatz fehlt. Level 1 Level 2 User Auswirkung: Arbeitsplatz Dringlichkeit: Arbeiten eingeschränkt mögl. Vorgangsart: Störung
  • 14. Vielen Dank! Dr. Kathrin Björkelund Data Management & Analytics inovex GmbH Karlsruher Straße 71 75179 Pforzheim +49 (0)173 3181-085 kathrin.bjoerkelund@inovex.de