Masterarbeit, 2020
193 Seiten, Note: 1,0
Abstract
1 Einleitung
1.1 Problemstellung
1.2 Zielsetzung
1.3 Struktur der Arbeit
2 Grundlagen Machine Learning
2.1 Definition und Einordnung
2.2 Arten von Machine Learning
2.3 Datentypen
2.4 Training und Testing
2.4.1 Hold-Out-Verfahren
2.4.2 Kreuzvalidierung
2.5 Evaluation
2.5.1 Konfusionsmatrix
2.5.2 Performance-Metriken
2.5.3 Performance-Kurven
3 Machine Learning-Methoden zur Klassifikation
3.1 k-Nearest-Neighbours
3.2 Naive Bayes-Klassifikator
3.3 Logistische Regression
3.4 Support Vector Machine
3.5 Entscheidungsbaum
3.6 Random Forest
Inhaltsverzeichnis
3.7 Gradient Boosting Machine
3.8 Künstliches Neuronales Netz
4 CRISP-DM
5 Umsetzung eines Vorhersagemodells im Churn Management
5.1 Data Understanding
5.2 Data Preparation
5.2.1 Aufteilung in Trainings- und Testdaten
5.2.2 Feature Transformation
5.2.3 Behandlung des Klassen-Ungleichgewichtes
5.3 Modeling
5.3.1 Wahl der Performance-Metrik
5.3.2 Modellerstellung
5.3.3 Gesamtevaluation
5.3.4 Wichtigkeit der Features
6 Diskussion
7 Schlussbetrachtung
Literatur
Anhang
1 Künstliche Intelligenz, Machine Learning und Deep Learning
2 Fünffache Kreuzvalidierung
3 Konfusionsmatrix für eine binäre Klassifikation
4 ROC-Kurve
5 k-Nearest Neighbour-Klassifikation
6 Logistische Regression
7 Support Vector Machine
8 Entscheidungsbaum
9 Dreischichtiges neuronales Netz
10 Mathematischer Aufbau eines neuronalen Netzes
11 Optimierung eines neuronalen Netzes
12 CRISP-DM
13 Verteilung der abgewanderten Kunden
14 Korrelationsmatrix
15 Box-Plot: Age
16 Dummy Coding
17 Synthetic Minority Oversampling Technique
18 Vergleich der Sampling-Methoden
19 ROC-Kurve - k-Nearest-Neighbours
20 ROC-Kurve - Naive Bayes-Klassifikator
21 ROC-Kurve - Logistische Regression
22 ROC-Kurve - Support Vector Machine
23 ROC-Kurve - Entscheidungsbaum
24 ROC-Kurve - Random Forest
25 ROC-Kurve - Gradient Boosting Machine
26 ROC-Kurve - Künstliches Neuronales Netz
27 Random Forest - Feature Importances
1 Skalenniveaus
2 Datenüberblick
3 Ergebnisse k-Nearest-Neighbours
4 Ergebnisse Naive Bayes-Klassifikator
5 Ergebnisse Logistische Regression
6 Ergebnisse Support Vector Machine
7 Ergebnisse Entscheidungsbaum
8 Ergebnisse Random Forest
9 Ergebnisse Gradient Boosting Machine
10 Ergebnisse Künstliches Neuronales Netz
11 Vergleich der Modellergebnisse
Mit zunehmenden Wettbewerb wird die Kundenbindung zu einer der größten Herausforderungen für Kundendienstleister und insbesondere dem Bankensektor. Die stetige Weiterentwicklung von Machine Learning als Teilgebiet der künstlichen Intelligenz bietet heute die Möglichkeit, ein effektives, datengetriebenes Customer Relationship Management zu implementieren. Die Aufstellung eines Prognosemodells, welches abwanderungsgefährdete Kunden frühzeitig identifizieren kann, ist in diesem Zusammenhang ein vielversprechendes Werkzeug zur Verbesserung des Customer Churn Managements. Im Rahmen dieser Arbeit wird gezeigt, wie moderne Machine Learning-Methoden erfolgreich eingesetzt werden können, um zuverlässige Vorhersagemodelle von Kundenabwanderungen zu modellieren und evaluieren. In einem Praxisteil werden hierbei fiktive Kundendaten einer Bank mit der Open Source-Programmiersprache Python analysiert.
In Zeiten von Globalisierung, Digitalisierung und weltweitem Wettbewerb werden Strategien zur erfolgreichen Kundenbindung für Unternehmen immer wichtiger, um auch zukünftig profitabel zu bleiben. In der Betriebswirtschaftslehre wird dieses Konzept als Customer Relationship Management (CRM) bezeichnet. Das Kundenbeziehungsmanagement beschäftigt sich ausgiebig mit Strategien zur systematischen Aufrechthaltung von bestehenden Geschäftsbeziehungen und der Interaktionen mit potenziellen Neukunden. Das Churn Management wiederum ist ein Bestandteil des Customer Relationship Managements und ist darauf ausgerichtet, abwanderungsgefährdete Kunden rechtzeitig zu identifizieren, um sie von ihrer Kündigungsabsicht abzubringen. Ein erfolgreiches Churn Management führt zu einer höheren Kundenbindungsrate, was sich langfristig gewinnoptimierend auswirkt [33, 47].
Unternehmen geben in der Regel den größeren Teil ihrer CRM-Ressourcen für die Gewinnung neuer Kunden aus[33]. Im Jahr 2019 zahlten Deutsche Banken ihren Neukunden für die Eröffnung eines neuen Girokontos einen Eröffnungsbonus von bis zu 200 Euro[20]. Dieser Ansatz ist unter Umständen unvorteilhaft, da die Gewinnung neuer Kunden bis zu fünfmal so teuer sein kann wie die Intensivierung und Aufrechthaltung bestehender Kundenbeziehungen. In der langen Frist sind es vor allem die Stammkunden, mit denen ein Unternehmen Gewinne erzielt[33].
Das Phänomen der Kundenabwanderung ist eine globale Herausforderung, der sich Unternehmen stellen müssen. Hiervon betroffen sind in erster Linie alle Geschäftsmodelle, die auf ein regelmäßiges Geschäft wie beispielsweise in Form eines Abonnements abzielen. Zu den betroffenen Unternehmen gehören daher vor allem Banken, Versicherungen und Telekommunikationsunternehmen. Die jährliche Abwanderungsquote von Kunden, die eine Kreditkarte beziehen, wird in den USA auf etwa 20 Prozent geschätzt. Die Kundenabwanderungsquote von Telekommunikationsunternehmen in Europa liegt mit geschätzten 20 - 38 Prozent sogar noch höher[3].
Immer mehr Unternehmen erkennen Daten als Treiber der digitalen Wirtschaft und möchten diese nutzen, um wertvolle Geschäftsvorteile zu erlangen. Häufig ist sogar davon die Rede, dass Daten das „neue Öl” seien:
„The world’s most valuable resource is no longer oil, but data.” [17]
Daten über Kunden und ihr Kaufverhalten können heutzutage in strukturierter Form über Bestellungen in Onlineshops aufgezeichnet werden. Dennoch werden in der Unternehmenspraxis noch immer Entscheidungen aus dem Bauchgefühl heraus getroffen, während zur Verfügung stehende Daten ungenutzt bleiben. Im Rahmen dieser Arbeit soll daher gezeigt werden, wie Machine Learning-Ansätze Unternehmen dabei helfen können, fortan datengetriebene Entscheidungen zu treffen. Im Vordergrund steht die Entwicklung eines domänenspezischen Ansatzes für das Customer Churn Management im Bankensektor.
Das Churn Management ist für viele Unternehmen unerlässlich und Machine Learning kann dabei helfen, es wesentlich effizienter zu gestalten. Ein klassifizierendes Prognosemodell liefert Hinweise über diejenigen Kunden, die zukünftig kein Produkt oder keine Dienstleistung mehr beziehen wollen. Das Ziel dieser Arbeit ist demnach das Aufzeigen geeigneter Machine Learning-Methoden, um potenziell abwanderungswillige Kunden frühzeitig zu identifizieren. Mit dem frühzeitigen Wissen, dass ein Kunde sein Bankkonto zukünftig schließen möchte, kann eine Bank proaktiv handeln, um den Kunden von einer Fortführung der Geschäftsbeziehung überzeugen zu können.
In Kapitel 2 erfolgt zunächst eine Einführung in die Grundlagen rund um Machine Learning, die bei der Aufstellung eines Prognosemodells die Basis darstellen. Neben der Eingliederung der wichtigsten Begriffe und aktuellen Trends werden geeignete Trainings- und Teststrategien vorgestellt, die im Zuge einer Customer Churn Analyse angewandt werden können. In Kapitel 3 werden anschließend acht Klassifikations-Algorithmen vorgestellt, die für ein Prognosemodell potenziell zum Einsatz kommen können. In einem Praxisteil (Kapitel 5) werden die zuvor vorgestellten Methoden an einem beispielhaften Bankkunden-Datensatz angewandt und evaluiert. Bevor die Daten jedoch modelliert werden können, benötigt es eine ausführliche Datenexploration und Datenaufbereitung, so dass ein möglichst optimales Ergebniss erzielt werden kann. Die Bearbeitung des Projektes richtet sich dabei nach der Projektmethodologie CRISP-DM. CRISP-DM (Cross Industry Standard Process for Data Mining) bietet ein gutes Rahmenwerk, um Machine Learning- Projekte jeglicher Art zu bearbeiten und wird ebenfalls in Kapitel 4 vorgestellt. In einer Diskussion und Schlussbetrachtung werden vor allem Limitationen thematisiert und die wichtigsten Ergebnisse zusammengefasst.
Im Folgenden werden die wichtigsten Machine Learning-Grundlagen vorgestellt, welche die Basis für das Aufstellen eines Vorhersagemodells darstellen.
Im Zuge der Digitalisierung werden viele Geschäftsfelder und Wirtschaftssektoren von digitalen Trends aus den Bereichen Künstliche Intelligenz, Machine Learning und Deep Learning geprägt. Diese Trends werden häufig als Synonyme verwendet, obwohl sie keinesfalls gleichbedeutend sind[6]. Daher erfolgt zunächst eine Einordnung dieser Trendbegriffe mit Hilfe von Abbildung 1.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 1: Künstliche Intelligenz, Machine Learning und Deep Learning[12]
Der Begriff ’’Künstliche Intelligenz” wird in der Praxis unterschiedlich definiert und interpretiert. Chollet (2018) definiert dieses Fachgebiet als einen "Versuch, normalerweise von Menschen erledigte geistige Aufgaben automatisiert zu lösen” [12]. Künstliche Intelligenz dient in diesem Zusammenhang als übergeordneter Begriff für Systeme und Technologien, die in der Lage sind, Aufgaben durchzuführen, für die normalerweise eine menschliche Intelligenz notwendig gewesen wäre[6]. Das allgemeine Fachgebiet der Künstlichen Intelligenz beinhaltet unter anderem Ansätze aus dem Machine Learning sowie Deep Learning. Aber auch andere Elemente, die keinen lernbasierten Ansatz verfolgen, kommen zum Einsatz[12].
Bei der klassischen Programmierung, die unter anderem auch Bestandteil der künstlichen Intelligenz ist, bekommt ein System Daten und Regeln als Input vorgegeben. Anhand dieser vorgegebenen Regeln kann das Programm anschließend eine Antwort als Output liefern. Beim Machine Learning hingegen werden keine Daten und Regeln als Input vorgegeben, sondern vielmehr Daten sowie die dazugehörigen Antworten. Auf Grundlage dieser bereits bekannten Antworten werden daraufhin Regeln als Output erstellt. Diese Regeln sollen zukünftig auf neue Daten anwendbar sein, um eigenständig Antworten liefern zu können. Somit wird ein Machine Learning-Programm nicht explizit programmiert, sondern trainiert. Das System lernt seine Aufgabenstellung zu lösen, indem relevante Lösungen zu dieser Aufgabe im Vorfeld bereitgestellt werden. In diesen Lösungen werden mit Algorithmen statistische Strukturen gesucht, die es ermöglichen, Regeln als Output zu liefern, um die Aufgabenstellung zukünftig automatisiert lösen zu können. Dank der immer besser werdenden Hardware sowie der steigenden Datenmengen in den letzten Jahren hat sich Machine Learning zum erfolgreichsten und verbreitetsten Teilgebiet der Künstlichen Intelligenz entwickelt[12],
Deep Learning hingegen ist wiederum eine Teildisziplin des Machine Learnings. Laut Chollet (2018) steht das "Deep" hierbei nicht für ein tiefer gehendes Verständ- nis, sondern für "ein mehrstufiges Verfahren, um Repräsentationen von Daten zu erlernen”. Dies geschieht unter der Verwendung von künstlichen neuronalen Netzen. Künstliche neuronale Netze nutzen aufeinanderfolgende Layer - auch Schichten genannt - mit zunehmend sinnvolleren Repräsentationen[12]. Die detaillierte Vorgehensweise wird in Kapitel 3.8 näher erläutert.
Häufig wird Machine Learning ebenfalls mit Data Mining assoziiert[6]. Data Mining ist ein Teilschritt im Rahmen der Knowledge Discovery in Databases (Deutsch: Wissensentdeckung in Datenbanken). Der Knowledge Discovery Process ist ein mehrstufiges Verfahren zur Wissensgenerierung, welches mit der Datengewinnung und Datentransformation beginnt, und das anschließend über eine Datenanalyse zu neuem geniertem Wissen führen soll[19]. Brühl (2019) interpretiert die Verfahren des Machine Learnings daher ebenfalls als Teilgebiet des Data Minings und sieht Data Mining als übergeordneten Begriff für datenbasierte Analyse- und Prognoseverfahren[6].
In der Statistik wird bei der Modellerstellung von unabhängigen und abhängigen Variablen gesprochen. Im Kontext vom Machine Learning herrscht hingegen eine andere verbreitete Terminologie. Unabhängige Variablen (oder Merkmale) werden daher im weiteren Verlauf als Features bezeichnet. Die abhängige Variable (Zielwert) wird Klasse beziehungsweise Label genannt. Ein Klassifizierungsmodell wird mit möglichst vielen Observationen (Objekte, Beobachtungen) trainiert. In diesem Zusammenhang ist jede Observation mit einem eindeutigen Label deklariert. Das Ziel ist es, dieses Label anhand der beschreibenden Features, in seltenen Fällen nur einem Feature, vorherzusagen[21].
Machine Learning kann in drei unterschiedliche Gattungen {Supervised Learning, Unsupervised Learning, Reinforcement Learning) eingeteilt werden, wovon die zwei wichtigsten Arten im Folgenden näher erläutert werden. Beim Supervised Learning (Deutsch: Überwachtes Lernen) ist die korrekte Antwort während des Trainingsprozesses bereits bekannt. Das Modell kann im Idealfall mit diesem Wissen Vorhersagen über zukünftige und unbekannte Daten treffen. Während des Trainingsprozesses werden modellbasierte Prognosen mit den eigentlich korrekten Klassen verglichen, um potenzielle Fehler schrittweise zu beseitigen und damit das Modell zu verbessern. Im Rahmen des Supervised Learnings wird zwischen Klassifizierungsund Regressionsmodellen unterschieden. Eine Klassifizierung hat das Ziel, jeder Observation eine eindeutige, kategoriale Klasse beziehungsweise Label zuzuordnen. Ein Beispiel hierfür wäre die Klassifizierung einer E-Mail als Spam-Nachricht oder Nicht-Spam-Nachricht. Die Regressionsanalyse als zweite Form des überwachten Lernens wird hingegen bei der Vorhersage von stetigen Werten verwendet, wie beispielsweise die zahlenmäßige Prognose eines Umsatzes[39].
Beim Unsupervised Learning (Deutsch: Unüberwachtes Lernen) sind die korrekten Antworten aus der Vergangenheit während der Modellerstellung nicht gegeben. Die Struktur der Daten ist zu Beginn somit unbekannt. Das Ziel ist es, anhand der Inputdaten eine Struktur zu erkunden, verborgene Muster zu finden und nützliche Informationen daraus zu generieren. Die Hauptanwendung des unüberwachten Lernens ist das Clustering. Clustering ist eine explorative Datenanalyseform, mit der Observationen in sinnvolle Untergruppen (Cluster) aufgeteiIt werden sollen. Ein Anwendungsbeispiel des Clustering ist die Segmentierung von Kunden mit ähnlichen Interessen, um auf diese Weise personalisierte und damit gezieltere Werbung versenden zu können. Eine weitere Teildisziplin des Unsupervised Learnings ist die Dimensionsreduktion. Bei einer sehr hohen Anzahl von Features ist es möglich, durch eine Reduktion der Features die wichtigsten Variablen zu extrahieren, um damit eine höhere Generalisierbarkeit zu erreichen oder eine beschränkte Rechenleistung zu umgehen. Diese Methode kann zudem beim Erstellen nützlicher Visualisierungen helfen, wenn hochdimensionale Daten in zweidimensionaler Form dargestellt werden sollen[39].
Das Supervised Learning ist in der Praxis die dominierende Form und findet in fast allen Industriezweigen seine Anwendung. Bei der Vorhersage von Kundenabwanderungen handelt es sich um ein binäres Klassifikationsproblem und ist damit Bestandteil des überwachten Lernens[12], Aus diesem Grund fokussiert sich die folgende Arbeit ausschließlich auf Grundlagen und Methoden, welche im Rahmen eines Klassifizierungsmodells zum Einsatz kommen.
Bei Variablen wird unter vier verschiedenen Skalenniveaus unterschieden. Die Bestimmung des Skalenniveaus im Machine Learning ist ein wichtiger Schritt, da die Skalierung unter Umständen einen Einfluss auf die Modellierung innerhalb eines Algorithmus haben kann[24]. Tabelle 1 gibt einen Überblick über diese vier Typen.
Nominalskalierte Daten haben eine rein qualitative Merkmalsausprägung ohne eine natürliche Ordnung. Inhaltlich ist der Informationsgehalt vom Nominalskalenniveau der geringste, da sich bis auf Vergleiche keine mathematischen Operationen durchführen lassen. Die Werte selbst dienen lediglich als Name oder Kodierung. Ein Beispiel für eine nominale Variable ist die Abwanderung von Kunden. Diese kann als „ja“ und „nein“, oder aber als „1“ und „0“ kodiert werden[21].
Im Gegensatz zu nominalskalierten Daten können ordinalskalierte Daten in eine Reihenfolge gebracht werden. Es handelt sich dennoch um eine qualitative Aus-
Abbildung in dieser Leseprobe nicht enthalten
Tabelle 1 : Skalenniveaus
prägung, da der Abstand zwischen den einzelnen Werten nicht messbar ist. Die Kundenzufriedenheit beispielsweise könnte in der Reihenfolge „niedrig < mittel < hoch“ oder als Skala von eins bis fünf dargestellt werden. Weitere Berechnungen sind jedoch nicht möglich[21],
Intervallskalierte Daten können ebenso in eine Reihenfolge gebracht werden. Der wesentliche Unterschied zu ordinalskalierten Daten ist, dass hierbei ein entsprechender Abstand zwischen zwei Werten gemessen und interpretiert werden kann. Die Differenz zwischen zwei beliebigen sequenziellen Datenpunkten entspricht genau derselben Differenz wie der von zwei beliebigen anderen sequenziellen Datenpunkten. Eine sinnvolle Multiplikation oder Division ist jedoch nicht möglich, da es keinen bedeutenden Nullpunkt gibt. Die Differenz zwischen zwei Datumseinträgen beispielsweise kann sinnvoll in Tagen oder Jahren interpretiert werden. Die Multiplikation eines Datums ergibt hingegen keinen Sinn. Auch das Jahr 0 als Nullpunkt hat sich im Laufe der Zeit immer wieder geändert[21].
Ratioskalierte (oder verhältnisskalierte) Daten haben alle Eigenschaften von nominalskalierten, ordinalskalierten und intervallskalierten Daten. Darüber hinaus verfügen sie einen sinnvollen Nullpunkt, so dass in jedem Fall eine Addition, Subtraktion, Multiplikation sowie Division zwischen beliebigen Datenpunkten möglich ist und dabei gleichzeitig eine sinnvolle Interpretation liefert. Ein Beispiel für ratioskalierte Daten ist die Kontoführungsgebühr gemessen in Euros[21].
Bei einem Klassifikationsproblem wie der Kundenabwanderungsanalyse wird ein Modell auf Basis der gegebenen Features und Labels trainiert. Dieser Prozess wird Trainingsphase genannt. Während dieses Prozesses wird eine spezifische Fehlerrate minimiert, um ein möglichst gutes Ergebnis zu erreichen. Das Ziel ist es, ein Modell mit einer möglichst hohen Prognosefähigkeit zu erstellen. Eine hohe Genauigkeit im Trainingsprozess bedeutet aber nicht zwangsläufig, dass das erstellte Modell auch in der Lage ist, ungesehene Daten korrekt zu prognostizieren. Daher ist es essenziell, ein Modell auf einem separaten Testdatensatz zu validieren[21],
Ein Modell, das eine geringe Fehlerrate im Trainingsprozess hat, aber eine schlechte Prognosegüte in den Testdaten aufweist, leidet unter Overfitting (Deutsch: Überanpassung). Overfitting sollte in jedem Fall vermieden werden. Ein Machine Learning- Modell ohne die Fähigkeit, neue Datensätze möglichst genau vorherzusagen, liefert für den Anwendungsfall keinen Mehrwert. Overfitting tritt vor allem bei geringen Datenmengen, bei fehlerhaften Daten mit „falschen“ Mustern oder bei Daten mit vielen Ausreißern oder Störwerten auf[21].
Im folgenden Abschnitt wird aufgeführt, wie Datensätze aufgeteilt werden können, um ein Overfitting möglichst ausschließen zu können. Das Ziel im Trainingsprozess ist die Erreichung einer möglichst hohen Generalisierbarkeit des Modells, um auch ungesehene Daten korrekt Vorhersagen zu können. Zu den bekanntesten Methoden gehören das Holdout-Verfahren sowie die k-fache Kreuzvalidierung.
Beim Holdout-Verfahren wird ein Datensatz in zwei zufällige disjunkte Teildatensätze aufgeteilt. Der erste Teildatensatz ist der Trainingsdatensatz und wird für die Modellerstellung innerhalb der Trainingsphase verwendet. Auf Basis dieser Trainingsdaten wird das Modell erstellt und die dazugehörigen Parameter optimiert. Der zweite Teildatensatz ist der Testdatensatz, der bei der Modellerstellung explizit außer Acht gelassen wird. Die Testdaten dienen ausschließlich zur Überprüfung der Prognosefähigkeit des Modells auf noch nicht zuvor gesehene Daten. Durch einen Vergleich der prognostizierten Labels des Trainingsmodells mit den tatsächlichen Labels im Testdatensatz wird erst eine Bewertung der Prognosegüte des Modells möglich[21].
Bei der Aufteilung des Datensatzes in Trainings- und Testdaten gehen zum Teil wichtige Informationen im Trainingsprozess verloren. Grundsätzlich gilt, dass je größer der Trainingsdatensatz ist, desto höher ist auch die Wahrscheinlichkeit, dass das Modell an Genauigkeit dazu gewinnt. Nichtsdestotrotz benötigt es eine adäquate Menge an Testdaten, um das Modell zu validieren. Der Vergleich von prognostizierten und tatsächlichen Labels ist essenziell, um eine Generalisierbarkeit zu gewährleisten und ein Overfitting auszuschließen. In der Praxis macht der Trainingsdatensatz den wesentlich größeren Anteil in der Aufteilung aus. Üblicherweise beträgt das Aufteilungsverhältnis von Trainingsdaten zu Testdaten 60:40, 70:30 oder 80:20. Das Aufteilungsverhältnis richtet sich dabei immer nach dem Umfang des Gesamtdatensatzes. Bei sehr großen Datenmengen kann die Aufteilung zum Teil ebenso mit einem Verhältnis von 90:10 oder 99:1 angemessen sein[39].
Darüber hinaus besteht die Möglichkeit, den gesamten Datensatz in drei disjunkte Teildatensätze aufzuteilen. Dieser Fall kommt meistens zum Einsatz, wenn mehrere Modellvarianten getestet werden sollen. Die Modellerstellung findet auf dem ersten Teildatensatz - dem Trainingsdatensatz - statt. Der zweite Teildatensatz besteht bei dieser Methode aus den Validierungsdaten. Mit den Validierungsdaten findet eine erste Prüfung des Modells statt, bei der ebenfalls die Parameter der trainierten Modelle weiter optimiert werden. Nach der Parameteroptimierung im Validierungsdatenset werden die Modelle auf dem dritten Teildatensatz - dem Testdatensatz - getestet und final evaluiert[21].
Bei der simplen Holdout-Methode besteht die Gefahr, dass die Datenaufteilung in zwei disjunkte Teildatensätze nicht repräsentativ genug ist. Es könnte sein, dass das Modell auf Trainingsdaten trainiert wird, in denen nicht alle Informationen enthalten sind. Wenn das unzureichend trainierte Modell anschließend neue Objekte klassifizieren muss, deren Klasse zuvor nie trainiert wurde, ist eine korrekte Klassifizierung auch nicht möglich, weil solch ein Fall möglicherweise nie erlernt wurde[21].
Ein weiterer bekannter Ansatz für eine realistischere Einschätzung der Leistungsfähigkeit von Modellen ist die sogenannte k-fache Kreuzvalidierung. Abbildung 2 zeigt eine beispielhafte Kreuzvalidierung für k = 5.
Im Zuge einer k-fachen Kreuzvalidierung erfolgt die Beurteilung der Prognosefähigkeit mit mehrfach wechselnden Trainings- und Testdaten. Bei dieser Prüfung werden die Ausgangsdaten zunächst in zwei disjunkte Trainings- und Testdaten aufgeteilt.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 2: Fünffache Kreuzvalidierung [44]
Anschließend werden die Trainingsdaten erneut in k disjunkte Teilmengen mit jeweils gleichem Umfang partitioniert. Jede dieser Partitionen dient in insgesamt k Durchgängen einmal als Testdatensatz, während die übrigen k - 1 Stichproben zusammen als Trainingsdaten dienen. Im Falle von Abbildung 2 für k = 5 durchläuft das Modell auf Basis der Trainingsdaten in Summe fünf Trainings- und Testprozesse, in denen auf jeweils vier Partitionen (80 Prozent) trainiert und auf der fünften Partition (20 Prozent) validiert wird. Abschließend erfolgt eine letzte finale Validierung mit den übrigen Testdaten[49].
Die Prognosegüte des Modells berechnet sich aus dem Mittelwert der k-fachen Testphase. Bei der Wahl von k muss berücksichtigt werden, dass die benötigte Rechenleistung mit steigendem k ebenso ansteigt. In der Praxis hat sich aus diversen Tests ergeben, dass eine zehnfache Partitionierung (k = 10) sehr gute Ergebnisse liefert, um die Fehlerschätzung richtig beurteilen zu können. Dies ist kein fixer Wert, der in jedem Fall dem Optimum entspricht, bietet aber zum Start einen guten Anhaltspunkt [4, 21,49].
Einige Studien verwenden zu Evaluationszwecken ein Extrembeispiel der Kreuzvalidierung. Bei der Leave-One-Out Kreuzvalidierung wird eine n-fache Kreuzvalidierung durchgeführt, bei der n der Anzahl der Observationen im Gesamtdatensatz entspricht. In diesem Zusammenhang wird das Modells auf jeweils einer einzigen Observation getestet und auf allen übrigen Daten trainiert. Dieses Verfahren hat den Vorteil, dass das Modell auf der größten Trainingsdatenbasis trainiert wird. Außerdem werden unvorteilhafte Datenaufteilungen vermieden. Der große Nachteil ergibt sich bei der Intensivität der Rechenleistung. Die Leave-One-Out Kreuzvalidierung ist die aufwändigste Form der Kreuzvalidierung und damit bei großen Datenmengen und zeitkritischen Analysen unter Umständen ungeeignet[49].
Kapitel 2.4 hat gezeigt, auf welche Weise ein Machine Learning-Modell trainiert und getestet werden kann, um eine möglichst hohe Prognosegüte zu erreichen und ein Overfitting zu vermeiden. Dafür benötigt es quantifizierbare Metriken, um die Prognosefähigkeit eines Modells überhaupt bewerten zu können. Bevor ein Modell erstellt und optimiert werden kann, muss im Vorfeld zunächst eine passende Performance-Metrik gewählt werden. Der weitere Modellierungsprozess richtet sich dann ausschließlich nach dieser Metrik, die immer weiter optimiert werden soll. Die Verwendung einer spezifischen Kennzahl richtet sich immer nach dem zu behandelnden Sachverhalt. Im Folgenden wird vorgestellt, mit welchen Metriken die Qualität eines Klassifikations-Modells bewertet werden kann und in welchen An- Wendungsfällen sie in Frage kommen[27].
Die wichtigsten Kennzahlen zur Evaluation von Klassifikationen werden mit Hilfe einer Konfusionsmatrix berechnet. Sie enthält die Anzahl der korrekt und falsch klassifizierten Observationen je Klasse. Die Konfusionsmatrix wird ermittelt, indem das erstellte Modell auf Basis der Trainingsdaten die Labels des Testdatensatzes vorherzusagt. Anschließend werden die prognostizierten Klassen mit den tatsächlichen Klassen aus den Testdaten verglichen[27]. In Abbildung 3 ist der Aufbau einer Konfusionsmatrix für ein binäres Klassifikationsmodell zu sehen.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 3: Konfusionsmatrix für eine binäre Klassifikation[27]
In diesem Beispiel enthalten die Zeilen die tatsächlichen Labels, welche in den Spalten mit den prognostizierten Klassen verglichen werden. Daraus ergibt sich die Anzahl der True Positives, False Positives, False Negatives und True Negatives [27]:
- True Positives (TP): entspricht der Anzahl der Observationen, die als Klasse 1 klassifiziert worden sind und tatsächlich zu Klasse 1 gehören.
- False Positives (FP): entspricht der Anzahl der Observationen, die als Klasse 1 klassifiziert worden sind, tatsächlich aber zu Klasse 2 gehören.
- False Negatives (FN): entspricht der Anzahl der Observationen, die als Klasse 2 klassifiziert worden sind, tatsächlich aber zu Klasse 1 gehören.
- True Negatives (TN): entspricht der Anzahl der Observationen, die als Klasse 2 klassifiziert worden sind und tatsächlich zu Klasse 2 gehören.
Basierend auf den Werten aus der Konfusionsmatrix können folgende Kennzahlen ermittelt werden, um Modelle quantitativ bewerten und vergleichen zu können.
TP + TN
Accuracy = Tp + Fp + FN + TN <[2] ·[1] )
Die Accuracy entspricht der Anzahl der korrekt klassifizierten Prognosen im Verhältnis zur gesamten Anzahl aller Prognosen. Sie misst prozentual, wie gut das erstellte Modell beide Klassen Vorhersagen kann. Sie gehört zu den am häufigsten verwendeten Kennzahlen, auch wenn Sie nicht für jeden Anwendungsfalls optimal ist. Die Accuracy kann vor allem dann sinnvoll sein, wenn die gesuchten Labels im Datensatz gleichverteilt sind. Bei stark unverteilten Klassen hingegen kann eine hohe Accuracy täuschen[27],
Angenommen ein Datensatz enthält 100 Observationen und davon gehören fünf Observation zu Klasse 1 und 95 zu Klasse 2. Das Ziel ist es, Klasse 1 richtig zu prognostizieren. Wenn ein Modell in diesem Fall schlichtweg jede Observation als
Klasse 2 klassifizieren würde, hätte es eine Accuracy von 95 Prozent, obwohl das eigentliche Ziel komplett verfehlt worden wäre[27],
Abbildung in dieser Leseprobe nicht enthalten
Die Precision ist das Verhältnis von der als Klasse 1 klassifizierten Observationen zu der gesamten Anzahl als Klasse 1 klassifizierten Objekte. Sie gibt Auskunft darüber, wie viele als eine Klasse klassifizierten Observationen tatsächlich auch dieser Klasse angehören. Bei der Precision geht es darum, wie „präzise“ eine Vorhersage ist. Wenn es für den Anwendungsfall wichtig ist, dass eine prognostizierte Aussage auch tatsächlich der Wirklichkeit entspricht, dann ist die Precision eine adäquate Kennzahl zur Bewertung und Optimierung eines Modells[27],
Abbildung in dieser Leseprobe nicht enthalten
Die Sensitivity - oder auch Recall genannt - berechnet sich aus dem Verhältnis von korrekt klassifizierten Observation der Klasse 1 zu der tatsächlichen Anzahl an Observationen dieser Klasse. Sie gibt Auskunft darüber, wie viel Prozent einer spezifischen Klasse von einem Modell aufgedeckt werden kann, beziehungsweise wie viele Observationen in der aufgestellten Prognose durchgerutscht sind. Die Sensitivity kommt in den Fällen als optimale Kennzahl zum Einsatz, in denen es notwendig ist, eine bestimmte Klasse korrekt vorherzusagen und es gleichzeitig nicht kritisch ist, wenn ein Objekt zu viel zu dieser Klasse zugeordnet worden ist. Sie ist vor allem dann vorteilhaft, wenn das vorherzusagende Label innerhalb eines Datensatzes zu einem prozentual geringen Anteil vertreten ist[27].
Ein Beispiel dazu ist die Diagnose von Krebs, denn der Anteil an Patienten, der tatsächlich an Krebs erkrankt ist, ist prozentual relativ klein. Gleichzeitig muss bei der Diagnose sichergestellt werden, dass keiner dieser erkrankten Personen in einem
Modell „durchrutscht“. Sollte eine klassifizierte Krebsprognose doch keine sein, wäre es in diesem Fall weniger kritisch als eine nicht aufgedeckte Krebsdiagnose [27].
Abbildung in dieser Leseprobe nicht enthalten
Die Specifity ist das Äquivalent zur Sensitivity, jedoch als Gegenstück für Klasse 2. Sie misst das Verhältnis der vorhergesagten Observationen der Klasse 2 zu der eigentlichen Anzahl an Observationen der Klasse 2. Am Beispiel der Krebsdiagnose gibt die Specifity Auskunft darüber, wie viel Prozent der Leute, die nicht an Krebs erkrankt sind, auch tatsächlich keinen Krebs haben[27].
Abbildung in dieser Leseprobe nicht enthalten
Der Fß - Score berücksichtigt in seiner Kalkulation sowohl die Precision als auch die Sensitivity. Precision und Sensitivity sind aufgrund ihrer natürlichen Berechnung negativ korreliert. Eine hohe Sensitivity impliziert automatisch eine niedrige Precision, während eine hohe Precision zu einer geringen Sensitivity führt. Nichtsdestotrotz ist es wünschenswert, für beide Kennzahlen gute Ergebnisse zu erzielen. Dieser Zwiespalt der negativen Korrelation untereinander kann mit Hilfe des Fß - Score optimiert werden, so dass ein möglichst gutes Gesamtergebnis gefunden werden kann. Das ß in der Formel gibt an, mit welcher Gewichtung beide Kennzahlen jeweils in der Berechnung des Fß - Score miteinfließen sollen. Für ß = 1, also dem Fx - Score, wird das harmonische Mittel aus beiden Kennzahlen ermittelt. Um der Precision bei der Berechnung mehr Gewicht zu verleihen, muss ein /3-Wert kleiner 1 gewählt werden. Mehr Gewichtung für die Sensitivity entsteht hingegen für /3-Werte größer 1[27].
Die Analyse der ROC-Kurve (Receiver Operating Characteristics) ist eine weitere gängige Möglichkeit zur Evaluation von binären Klassifikationsmodellen. In einem Plot wird hierbei die True Positive Rate der False Positive Rate gegenübergestellt. Die True Positive Rate entspricht in diesem Zusammenhang der Sensitivity. Die False Positiv Rate hingegen berechnet sich aus 1 - Specifity. In anderen Worten veranschaulicht die ROC-Kurve den Kompromiss zwischen den erwünschten und nicht erwünschten Modellergebnissen: Auf der y-Achse werden die korrekten Klassifizierungen des Modells (True Positive Rate) und auf der x-Achse die unerwünschten Klassifizierungen gegenübergestellt, in denen fälschlicherweise Klasse 1 vorgesagt wurde, obwohl es eigentlich Klasse 2 gewesen wäre (False Positive Rate). Abbildung 4 zeigt ein Beispiel einer ROC-Kurve [4,18].
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 4: ROC-Kurve[18]
Der Verlauf der Kurve wird bestimmt, indem auf der x-Achse die relative Anzahl der falsch-positiv klassifizierten Observationen und auf der y-Achse die relative Anzahl der richtig-positiv klassifizierten Observationen für diverse Schwellenwerte eingetragen werden. Bei jeder Änderung dieser Schwellenwerte lässt sich eine neue Konfusionsmatrix für das untersuchte Modell ermitteln. Aus diesen Konfusionsmatrizen folgen ebenso neue Werte für die True Positive Rate und False Positive Rate, die zusammen betrachtet die ROC-Kurve bilden [4,18].
Da es sich um relative Werte handelt, hat die Kurve ihren Ursprung im Punkt [0,0] und endet im Punkt [1,1]. Die ROC-Kurve eines guten Modells verläuft im Idealfall möglichst nah an der linken, oberen Ecke. Ein perfektes Modell hätte einen Punkt genau in der linken oberen Ecke [0,1]. Dies würde heißen, dass 100 Prozent der Observationen aus Klasse 1 auch als Klasse 1 erkannt worden wären (TruePositivesRate = 1). Gleichzeitig würde das bedeuten, dass kein einziges Objekt fälschlicherweise als Klasse 1 klassifiziert werden würde, obwohl es Klasse 2 gewesen wäre (FalsePositiveRate = 0). Die diagonale Referenzlinie in der Mitte entspricht der Schätzung eines zufälligen Modells [4,18].
Durch die ROC-Kurve alleine kann die Prognosegüte eines Modells noch nicht eindeutig verglichen werden. Für eine Vergleichbarkeit von Modellen muss hierfür der AUC-Score (Area under the ROC curvé) ermittelt werden, der ein Maß für die Qualität des Klassifikationsmodells darstellt. Der AUC entspricht der Fläche unter der ROC-Kurve und kann durch eine geometrische Formel oder durch das Kurvenintegral der ROC-Kurve ermittelt werden. Die ROC-Kurve eines Modells ohne Klassifikationsfähigkeit würde auf der diagonalen Referenzlinie verlaufen und hätte damit einen AUC von 0,5. Ein perfektes Modell erreicht im Gegensatz dazu einen AUC von 1,0 [4, 18].
Kapitel 3 stellt diverse Machine Learning-Algorithmen vor, die bei Klassifikationsproblem herangezogen werden können. Damit eignen sich diese Methoden ebenfalls für die Vorhersage von Kundenabwanderungen, da es sich hierbei um ein binäres Klassifikationsproblem handelt.
Die k-Nearest Neighbour-Klassifikation (kNN) verfolgt den Ansatz, dass einander ähnlich gemessene Werte zur selben Klasse gehören. Das Neighbours im Namen des Algorithmus symbolisieren in diesem Zusammenhang die „ähnlichen Werte“[15]. Mit Hilfe von Abbildung 5 wird die Funktionsweise des kNN-Klassifikators graphisch verdeutlicht.
Abbildung 5 zeigt ein binäres Klassifikationsproblem für die zwei Klassen blauer Kreis und grüne Raute. Die Datenpunkte werden mit den zwei Features xi und x2 beschrieben. Das Ziel ist es, die nächsten k Nachbarn von dem neuen Datenpunkt Punkt 1 zu ermitteln, um dann die Klasse des Punktes bestimmen zu können. Für k = 5 werden im ersten Schritt die fünf nächsten Nachbarn ermittelt. Diejenige Klasse, die unter den fünf nächsten Datenpunkten am häufigsten vertreten ist, wird ebenso die prognostizierte Klasse von Punkt 1. Im Beispiel von Abbildung 5 wird die Klasse blauer Kreis von der Klasse grüne Raute mehrheitlich überstimmt,
Abbildung in dieser Leseprobe nicht enthalten
weshalb die Observation Punkt 1 ebenfalls als Raute klassifiziert wird[15].
Um einen Gleichstand bei der Abstimmung zu vermeiden, sollte eine ungerade Anzahl an k gewählt werden. Im Falle eines Gleichstandes für eine gerade Anzahl von k gewinnt die Klasse, die in Summe die geringste Distanz zum untersuchten Punkt aufweist. Für den Fall, dass die Distanz ebenso dieselbe wäre, wird die Klassenzugehörigkeit bevorzugt, die zuerst in den Trainingsdaten erscheint. Ein optimaler Wert für k muss im Zuge des Trainigsprozesses durch eine Parameteroptimierung ermittelt werden[39].
Zur Bestimmung der Distanz können verschiedene Metriken herangezogen werden. Ein häufig verwendetes Distanzmaß ist die Minkowski-Metrik[15]:
Abbildung in dieser Leseprobe nicht enthalten
Fürp = 1 wird auf diese Weise die Manhatten-Distanz berechnet:
Abbildung in dieser Leseprobe nicht enthalten
Ein Wert für = 2 hingegen entspricht der euklidischen Distanz:
Abbildung in dieser Leseprobe nicht enthalten
Größere Werte für p sind in den meisten Fällen ungewöhnlich. Große Werte für p sorgen dafür, dass die Features, in denen sich die Observationen am meisten unterscheiden, mehr Gewicht erhalten würden[15].
Bei der Berechnung der Distanz sollte immer die Skalierung der einzelnen Features berücksichtigt werden, da es ansonsten zu Verzerrungen kommen kann. Wenn ein Feature beispielsweise in Geldeinheiten gemessen wird, und das andere Feature in Centimetern, dann benötigt es eine Standardisierung oder Normalisierung, sodass beide Features im gleichen Maße zum Abstand beitragen [30, 39]. Die Formel zur Normalisierung lautet:
Abbildung in dieser Leseprobe nicht enthalten
Zu den Stärken des kNN-Klassifikators gehört die Transparenz und Interpretierbar- keit. In Situationen, in denen eine Erklärung des aufgestellten Modells notwendig ist, bietet kNN eine gute Option mit einer ordentlichen Leistung, die gleichzeitig sehr gut interpretiert werden kann. Bei komplizierteren Klassifikationsproblem erreicht der kNN-Algorithmus oftmals nicht die Ergebnisse fortschrittlicherer Methoden wie beispielsweise künstliche neuronale Netze. Nichtsdestotrotz ist es eine gute Basismethode, um einen ersten Einblick zu erlangen. Ein weiterer Nachteil entsteht
beim Trainieren von großen Datenmengen, denn bei der Laufzeit erreicht der kNN- Klassifikator eine schwache Leistung, die durch eine Reduktion der Features verbessert werden kann [15].
Der Naive Bayes-Klassifikator ist eine statistische Klassifikationsmethode, die auf Wahrscheinlichkeiten gestützt ist. Sie berechnet die Wahrscheinlichkeit, dass eine Observationen einer bestimmten Klasse zugehört und entscheidet sich für die wahrscheinlichste Option. Daher wird keine explizite Zuweisung einer Klasse erstellt, sondern viel mehr eine Aussage getroffen, welche Klassenzugehörigkeit die höchste Wahrscheinlichkeit besitzt. Die Wahrscheinlichkeit zukünftiger Ereignisse wird in diesem Fall durch die Bestimmung ihrer früheren Häufigkeit berechnet und basiert auf dem zentralen Theorem von Bayes. Mit dem Satz von Bayes kann die Wahrscheinlichkeit eines Ereignisses C unter einer Bedingungen X berechnet werden[40]:
P(cm = (3.5)
Im Kontext vom Machine Learning kann C als eine Klasse und X als ein Feature dargestellt werden. Angenommen ein Datensatz besteht aus m Klassen, dann wäre C ein Vektor von m Klassen mit C = (Ci, C2,..., Cm). Damit kann die bedingte Wahrscheinlicht von einer spezifischen Klasse unter der Bedingung eines Features X folgenderweise berechnet werden[40]:
Abbildung in dieser Leseprobe nicht enthalten
Ein Machine Learning-Modell besteht in den meisten Fällen allerdings aus mehreren Features, so dass die Features ebenfalls als Vektor x = (xltx2, · · · ,®n) bestehend aus n Features dargestellt werden. Bei der Berechnung einer bedingten Wahrscheinlichkeit für eine Klasse G muss in der Bedingung der gesamte Vektor an Features berücksichtigt werden. Gesucht wird daher P(Ci\xi,x2, ■ ■.,xn), also die Wahrscheinlichkeit für die Klasse G unter der Bedingung aller vorhandenen Features [40].
An dieser Stelle wird explizit angenommen, dass alle Features untereinander keine Abhängigkeiten besitzen, sondern ausschließlich eine Relation zur ihrer Klasse selbst haben. Unter dieser Annahme lässt sich die bedingte Wahrscheinlichkeit folgendermaßen berechnen[40]:
Abbildung in dieser Leseprobe nicht enthalten
Bei der Klassifikation einer neuen Observation müssen alle bedingten Wahrscheinlichkeiten des Klassenvektors C berechnet werden. Die Wahrscheinlichkeit, die am höchsten ist, entscheidet über die Klassifizierung. Damit ergibt sich die finale Gleichung für C^faiveBayes [40]:
Abbildung in dieser Leseprobe nicht enthalten
Die Annahme der unabhängigen Features sorgt für eine erhebliche Vereinfachung bei der Berechnung der Wahrscheinlichkeiten. Diese Annahme ist in einem gewissen Maße „naiv“, da sie in dieser Form unter realen Umständen selten vorzufinden ist. In der Praxis erreicht der Naive Bayes-Klassifikator ungeachtet dessen in vielen Fällen eine überraschend performante Leistung, auch wenn seine Wahrscheinlichkeitsschätzungen unter Umständen ungenau sind[40].
Eine weitere statistische Methode, die im Zuge von Machine Learning häufig ihre Anwendung findet, ist die logistische Regression. Die Basis hierfür liefert die lineare Regression, welche ursprünglich für die Vorhersage von stetigen Werten vorgesehen ist. Anders als bei der linearen Regression bietet die logistische Regression hingegen die Möglichkeit, kategoriale Werte vorherzusagen, um ein binäres Klassifikationsproblem zu lösen. Dies geschieht über einen Transformationschritt, in dem die stetigen Ergebnisse der linearen Regression auf einen Wertebereich zwischen [0,1] transformiert werden. Bei dieser Transformation kommt die Sigmoid- Aktivierungsfunktion zum Einsatz[23]:
Abbildung in dieser Leseprobe nicht enthalten
Die Variable z in der Potenz der e-Funktion stellt die lineare Regression dar, welche stetige Werte liefert:
Abbildung in dieser Leseprobe nicht enthalten
Durch die genannte Sigmoid-Aktivierungsfunktion f(z) wird die gesamte Gleichung 3.9 für alle Werte von X auf einen Wertebereich zwischen [0,1] transformiert. Dies wird deutlich in Abbildung 6.
Gleichung 3.9 liefert allerdings noch keine eindeutige Klassenzugehörigkeit. Sie liefert lediglich eine Wahrscheinlichkeit, dass eine Observation zur Klasse 1 gehört. Gleichung 3.9 kann Werte annehmen zwischen 0,00 (0 Prozent Wahrscheinlichkeit) und 1,00 (100 Prozent Wahrscheinlichkeit). Um die genaue Klassenzugehörigkeit des binären Klassifikationsproblems zu bestimmen, muss ein bestimmter Schwel-
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 6: Logistische Regression[23]
lenwert α vorab definiert werden. Wenn anschließend die berechnete Wahrscheinlichkeit größer oder gleich α ist, dann handelt es sich bei der untersuchten Observation um die Klasse 1. Wenn die Wahrscheinlichkeit kleiner α ist, entscheidet sich das Klassifikationsmodell für Klasse 0. Für α = 0,5 wird die Formel folgenderweisen definiert[23]:
Abbildung in dieser Leseprobe nicht enthalten
Das Modell der logistischen Regression wird optimiert, indem der Verlust einer Verlustfunktion minimiert wird. Der Wert der Verlustfunktion ist im Trainingsprozess hoch, wenn der prognostizierte Wert nicht dem tatsächlichen Wert entspricht - und vice versa. Das Ziel ist eine möglichst geringe Verlustfunktion, weil das Modell dann in der Lage ist, die Observationen in den Trainingsdaten so gut wie möglich zu klassifizieren. Bei der Optimierung der Kostenfunktion entsteht jedoch die Gefahr, dass sich das Modell in seiner Erstellung zu stark an den Trainingsdaten anpasst. In diesem Fall würde es an Overfitting leiden und wäre damit nicht in der Lage, neue, noch ungesehene Daten korrekt zur klassifizieren. Eine Regularisie- rung bietet die Möglichkeit, das Problem des Overfittings zu vermeiden, indem die Komplexität des Modells verringert wird. Zwei Formen der Regularisierung sind die L1-Regularisierung sowie L2-Regularisierung. [23, 39].
Die L2-Regularisierung - auch Ridge Regression genannt - ist eine häufig verwendete Form der Regularisierung, die in vielen Machine Learning-Programmen als Standardmethode hinterlegt ist. Der Grundgedanke hinter der L2-Regularisierung ist die Bestrafung von extremen Parametern und Gewichtungen im Modell, so dass diese keinen allzu großen Einfluss im Training erlangen und damit eine bessere Generalisierung möglich wird. Die L1-Regularisierung - auch Lasso Regression genannt - sorgt darüber hinaus dafür, dass unwichtige Features bei der Modellerstellung vollständig eliminiert werden. Auf diese Weise werden ausschließlich die wichtigsten Features im Zuge der Modellierung zur Vorhersage von neuen Observationen verwendet. Beide Formen der Regularisierung verringern die Komplexität und haben beide das Ziel, das Auftreten von potenziellem Overfitting möglichst zu vermeiden. Welche Form der Regularisierung die besseren Ergebnisse erzielt, muss im Zuge der Modellerstellung getestet werden [23, 39].
Eine Support Vector Machine bietet eine weitere Möglichkeit des maschinellen Lernens zur Klassifikation von Objekten. Das Ziel bei der Klassifikation mit Hilfe einer Support Vector Machine ist das Finden einer Hyperebene, die die Datenpunkte eindeutig separiert. Mit Hilfe einer klaren Separation ist es anschließend möglich, zukünftige Datenpunkte ebenfalls einer bestimmten Klasse zuzuordnen[43]. Das Prinzip der Hyperebene wird in Abbildung 7 verdeutlicht.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 7: Support Vector Machine[43]
In einem Raum mit n Dimensionen stellt die Hyperebene einen n- l-dimensionalen Subraum dar, der die Datenpunkte räumlich trennt. Abbildung 7 verdeutlicht das Beispiel anhand eines zweidimensionalen Raums, sodass die Hyperebene eine einfache Gerade entspricht. Visuell gesehen wäre die Hyperebene in einem dreidimensionalen Würfel dementsprechend eine zweidimensionale Fläche in Form eines flachen Quadrats.
In Abbildung 7 ist es möglich, die zwei Klassen blauer Kreis und grüne Raute eindeutig zu separieren. In solch einem Fall wäre es möglich, unendlich viele Hyperebenen zu bestimmen, indem diese minimal seitlich verschoben oder gedreht werden und trotzdem keinen der Datenpunkte berühren würde. Das Ziel ist es daher, die Hyperebene zu finden, welche den maximalen Abstand zu den Supportvektoren hat. Supportvektoren sind in diesem Zusammenhang die Datenpunkte, die sich in unmittelbarer Nähe zur potenziellen Hyperebene befinden und damit die kürzeste Distanz zur Hyperebene aufweisen. Dementsprechend sind es vor allem die Supportvektoren, die über das Klassifikationsmodell entscheiden. Sollte es zu einer Änderung eines einzigen Datenpunktes kommen, könnte dies gleichzeitig bedeuten, dass die Hyperebene ebenfalls eine komplett neue Position zugewiesen bekommt[43].
Die optimale Hyperebene wird bestimmt, indem zunächst die senkrechte Distanz w der Supportvektoren hin zur Separationslinie berechnet wird. Die bestmögliche Position der Hyperebene ist an der Stelle, an der der Abstand zu den Supportvektoren maximal ist. Durch diesen Vorgang entsteht links und rechts zur Hyperebene eine möglichst große und leere Fläche, in der keine Observation aus den Trainingsdaten liegt. Sollte es zukünftige Observationen geben, die sich wesentlich von den Trainingsobservationen unterscheiden, gibt es auf diese Weise einen Spielraum für mögliche Abweichungen. Auf diese Weise ist die Wahrscheinlichkeit zur korrekten Klassifikation von abweichenden Datenpunkten am höchsten[43].
Abbildung 7 zeigt einen Optimalfall, der in der Praxis nicht immer vorliegt, denn Trainingsobjekte lassen sich nicht in jedem Fall mit einer linearen Geraden ohne jeglichen Abweichungen trennen. Support Vector Machines sind jedoch in der Lage, mit Hilfe eines Kernels nichtlineare Separationen zu erzeugen. Ein Kernel ist eine Funktion, die niederdimensionale Daten in höherdimensionale Daten abbildet. Die Verwendung eines Kernels mit einem Grad größer als eins bietet damit flexiblere Entscheidungsgrenzen der Hyperebene. Der Grad einer Hyperebenen mit Hilfe eines Kernels kann beliebig groß sein, wodurch sich auch sehr ähnliche Klassen im Trainingsprozess nahezu perfekt trennen lassen. Bei einer zu perfekten Anpassung der Separationslinie entsteht jedoch die Gefahr eines starken Overfittings und damit einer schlechten Generalisierungsfähigkeit des Modells[43].
Wenn sich die beiden Klassen aufgrund von Ausreißern nicht eindeutig linear trennen lassen, gibt es neben des Kernel-Tricks eine weitere Möglichkeit zur Sepa- ration ähnlicher Klassen. Das Aufstellen einer Soft Margin ermöglicht es Support Vector Machines, eine bestimmte Anzahl von Fehlern zuzulassen und damit ein paar Observationen im Trainingsprozess bewusst falsch zu klassifizieren. Dabei wird ein Kompromiss gesucht zwischen der Maximierung der Distanz zur Hyperebene und der Minimierung der Fehlklassifizierung. Durch das bewusste Zulassen von Fehlklassifikationen im Trainingsprozess wird erreicht, dass eine aufgestellte Hyperebene nicht durch ein paar Ausreißer-Datenpunkten beeinflusst wird, die das Modell verfälschen würden. Die Bestimmung eines Parameters, der das Ausmaß der erlaubten Fehler definiert, kann daher die Qualität einer Support Vector Machine wesentlich verbessern. Durch diese erlaubte Toleranz lässt sich in vielen Fällen ein Overfitting vermeiden und damit eine höhere Generalisierbarkeit erreichen. Die optimale Wahl des Regularisierungsparameters muss im Trainingsprozess getestet werden[43].
Mit Hilfe des Entscheidungsbaumverfahrens wird eine umgekehrte Baumstruktur erzeugt, die es ermöglicht, neuen Informationsobjekten nach Durchlaufen dieser Struktur eine eindeutige Klasse zuzuordnen. Entscheidungsbäume im Rahmen des maschinellen Lernens sind gut nachvollziehbar, da es möglich ist, sie mit Knoten, Kanten und Blättern zu visualisieren[41].
Ein Entscheidungsbaum startet oben mit einem Wurzelknoten, der ein bestimmtes Attribut repräsentiert. Attribute beziehungsweise Knoten im Entscheidungsbaum sind in diesem Zusammenhang Features, die Schritt für Schritt für eine Entscheidungsregel herangezogen werden. Knoten im Entscheidungsbaum werden durch Kanten verbunden. Eine Kante repräsentiert eine Merkmalsausprägung innerhalb eines Features [41].
Das Entscheidungsbaumverfahren verfolgt das Ziel, die Trainingsdaten solange nach den Merkmalsausprägungen der Features in disjunkte Teilmengen aufzuteilen, bis jede dieser Teilmenge nur noch Observationen von einer eindeutigen Klasse enthält. Der letzte Knoten eines Entscheidungsbaums wird als Blattknoten bezeichnet. Nach Durchlaufen eines Entscheidungsbaums besitzen die Observationen im Blattknoten im Extremfall alle die selben Merkmalsausprägungen und ebenfalls dieselbe Klasse, so dass keine weitere Verzweigung mehr stattfinden kann[41]. Abbildung 8 zeigt einen exemplarischen Entscheidungsbaum, der einen abwanderungsgefährdeten Kunden klassifiziert.
Abbildung in dieser Leseprobe nicht enthalten
Bei der Klassifizierung einer neuen Observation wird zunächst das Feature des Wurzelknotens untersucht. In Abbildung 8 entspricht das dem Feature Aktivkunde mit den Merkmalsausprägungen Ja und Nein. Ein Kunde, der kein Aktivkunde ist, erreicht über die linke Kante mit der Merkmalsausprägung Nein den Blattknoten Abwanderung. In diesem Fall würde eine zukünftige Observation ohne Aktivkundenstatus eindeutig als potenzieller abwanderungsgefährdeter Kunde klassifiziert werden. Bei einem Aktivkunden hingegen wird im zweiten Schritt das Feature Kreditrahmen untersucht. Aktivkunden mit einem Kreditrahmen von höchstens 3.000 Euro wären im Beispiel von Abbildung 8 ebenfalls abwanderungsgefährdet. Aktivkunden mit einem Kreditrahmen von mehr als 3.000 Euro hingegen wären in diesem Modell nicht abwanderungsgefährdet. Features können im Entscheidungsbaummodell ein nominales oder ordinales Skalenniveau besitzen. Das Feature Kreditrahmen besteht jedoch aus stetigen Werten, so dass dieses zunächst in eine fest vorgegebene Menge von diskreten Werten transformiert werden muss[41],
Mit steigender Anzahl an Features steigt ebenso die Anzahl an möglichen Entscheidungsbäumen, die daraus generiert werden können. Daher ist es für das Analyseergebnis von entscheidender Bedeutung, eine möglichst optimale Reihenfolge der Features zur Aufspaltung eines Knoten heranzuziehen. Ein optimales Ergebnis wird erreicht, wenn Schritt für Schritt das Feature gewählt wird, das den höchsten Informationsgehalt besitzt. Das Feature des Wurzelknotens besitzt daher den höchsten Informationsgehalt, während das zweite Feature den zweithöchsten Informationsgehalt enthält. Der Informationsgehalt eines Features ist umso höher, desto deutlicher die Verteilung der Klasse ist. Hierbei gilt: Je deutlicher die Verteilung einer Klasse innerhalb eines Knotens, desto „reiner“ der Knoten und desto höher der Informationsgehalt des betrachteten Knotens. Die „Reinheit“ eines Knotens wird häufig mit der Entropie oder dem Gini-Index berechnet[41]:
Abbildung in dieser Leseprobe nicht enthalten
Das Ziel ist die Identifikation desjenigen Features, das eine möglichst hohe Reinheit besitzt, um es anschließend in mindestens zwei oder mehrere Teilmengen aufzuteilen, bis ein finaler Blattknoten erreicht wird. Welches Reinheitsmaß die besten Ergebnisse liefert, muss im Zuge des Trainings- und Testprozesses validiert werden. Ein Entscheidungsbaum könnte in der Theorie soweit heruntergebrochen werden, bis jedes vorhandene Feature und dessen Merkmalsausprägungen aufgeteilt worden sind. Auf diese Weise wäre es im Extremfall möglich, im Trainingsprozess 100 Prozent der Trainingsobjekte richtig zu klassifizieren. Ein Modell, das 100 Prozent der Trainingsdaten korrekt klassifiziert, würde jedoch an starkem Overfitting leiden und hätte damit eine schlechte Leistung bei ungesehenen Daten[41].
Zur Sicherstellung der Generalisierbarkeit muss das Modell sowohl auf den Trainingsdaten als auch auf den Testdaten eine möglichst hohe Genauigkeit erreichen. Damit ein Entscheidungsbaum sich nicht zu stark an den Trainingsdaten anpasst, benötigt es ein entsprechendes Abbruchkriterium, welches bestimmt, in welchem Schritt das Verfahren endet und wann der Endknoten erreicht wird. Dieses Verfahren heißt Pruning (Deutsch: stutzen, kürzen). Die erste Möglichkeit des Pruning- Verfahrens ist das Post-Pruning, bei dem ein Entscheidungsbaum nach seiner vollständigen Generierung im Nachgang gekürzt wird. Hierbei werden diverse Blattknoten, welche am Ende nur wenige Objekte enthalten, nachträglich herausgestrichen. Diese Objekte werden im Zuge dessen dem übergeordneten Knoten zugeordnet[41] -
Die zweite Pruning-Möglichkeit besteht während der Modellerstellung, bei der der Entscheidungsbaum aufhört zu wachsen, nachdem ein vorab definierter Abbruchzeitpunkt erreicht wird. Ein gängiges Abbruchkriterium ist eine maximal erlaubte Tiefe, die ein Entscheidungsbaum erreichen darf. Diese Methode sorgt dafür, dass in Summe weniger Features zur Klassifikation herangezogen werden, nämlich nur die Features mit dem höchsten Informationsgehalt. Ein weiterer Abbruchzeitpunkt könnte erreicht sein, wenn der Nutzen einer weiteren Aufteilung eines Knotens statistisch so gering ist, dass es keinen echten Mehrwert für das Modell mehr hätte. In diesem Fall wird ein bestimmter Schwellenwert für den Informationsgehalt definiert, der bei einer weiteren Aufteilung mindestens erreicht werden muss. Wenn dieser Schwellenwert nicht erreicht wird, so wird der untersuchte Knoten ein finaler Blattknoten[41].
Beide Pruning-Verfahren führen dazu, dass Blattknoten unter Umständen Observationen aus verschiedenen Klassen beinhalten. In diesen Fällen muss entschiedenen werden, wie ein Modell mit einem gemischten Blattknoten umgeht. Die gängige Methode ist die Zuteilung derjenigen Klasse, die mit der größten absoluten Häufigkeit vertreten ist. Beide Pruning-Verfahren führen üblicherweise zu einer geringeren Genauigkeit in den Trainingsdaten. Nichtsdestotrotz steigert es die Generalisierungsfähigkeit, so dass unbekannte Daten besser klassifiziert werden können, indem sich das Modell lediglich auf die wichtigsten Features konzentriert, ohne sich zu stark an den Trainingsobjekten anzupassen[41].
Der größte Vorteil von Entscheidungsbäumen besteht in der Verständlichkeit und Interpretierbarkeit. Anders als bei Black-Box-Modellen wie einem künstlichen neuronalen Netz können Entscheidungsbäume bis zu einem gewissen Grad visuell dargestellt und nachvollzogen werden. Zudem ist das Verfahren nicht nur für binäre Klassifikationsproblemen geeignet, sondern kann ebenfalls mit mehr als zwei Klassen umgehen. Der Nachteil von Entscheidungsbäumen ist die Tendenz zum Overfitting. Dieser Mechanismus kann allerdings mit Pruning-Techniken eingedämmt werden, um eine möglichst hohe Generalisierungsfähigkeit zu gewährleisten. Zudem können Entscheidungsbäume unter Umständen instabil sein. Wenn es zu kleinen Änderungen in den Daten kommt, könnte ein völlig anderer Baum generiert werden. Dieses Problem kann mit erweiterten Entscheidungsbaumverfahren wie einem Random Forest (siehe Kapitel 4.6) gemildert werden[41].
Der Random Forest ist ein Klassifikationsverfahren, welches zur Kategorie des Em- semble Learnings (Deutsch: Zusammenstellung, Bündel) gehört. Anders als beim einfachen Entscheidungsbaumverfahren werden hierbei zahlreiche Entscheidungsbäume erstellt, die in Summe das Klassifikationsmodell bilden. Die Intention des Verfahrens ist der bessere Umgang mit dem Problem des Overfittings, welches mit einem einzigen Entscheidungsbaum in vielen Fällen einhergeht[5]. Die Funktionsweise des Random Forest Algorithmus wird im Folgenden näher erläutert[34]:
1. Im ersten Schritt muss entschieden werden, aus wie vielen „Bäumen“ der „Wald“ bestehen soll. Diese Variable wird ntree genannt.
2. Im zweiten Schritt werden insgesamt ntree Bootstrap-Samples aus der Datenmenge gezogen. Bootstrapping ist eine statistische Methode, bei der viele kleine, gleichgroße Teilstichproben wiederholt aus einem größeren Original- Sample gezogen werden. Angenommen die Trainingsdaten beinhalten insgesamt M Features, so werden mittels Bootstrapping jeweils kleinere Stichproben gezogen, die lediglich m Features enthalten, wobei m < M gilt. Die Anzahl der herangezogenen Features innerhalb der Bootstrap-Samples ist damit geringer als in den vollständigen Trainingsdaten. Dieser Vorgang wird solange wiederholt, bis insgesamt ntree Bootstrap-Samples gezogen worden sind.
3. Anschließend werden auf Basis der Bootstrap-Samples insgesamt ntree individuelle Entscheidungsbäume erstellt. Diese Entscheidungsbäume werden jeweils auf Basis der m gezogenen Features generiert. In jedem individuellen Entscheidungsbaum wird die jeweils beste Knotenaufteilung bestimmt, die sich je nach gezogenen Features innerhalb der Bootstrap-Samples unterscheidet. Im Extremfall würden ntree unterschiedliche Entscheidungsbäume entstehen.
4. Nach der Modellierung der ntree Entscheidungsbäume kann eine neue Observation klassifiziert werden. Zur Klassifikation einer neuen Observation wird für jeden generierten Entscheidungsbaum individuell die Klasse ermittelt. Die endgültige Ausgabe des Random Forest bestimmt sich aus der absoluten Mehrheit aller niree Entscheidungsbaumklassifizierungen.
Der Random Forest ist ein effektives Werkzeug im Rahmen des Supervised Learnings, welches seine Stärke durch das Aufstellen vieler unkorrelierter Entscheidungsbäume erreicht. An dieser Stelle wirkt das Gesetz der großen Zahlen, das dafür sorgt, dass sich der Generalisierungsfehler mit steigender Anzahl von Entscheidungsbäumen minimiert[5]. Der gesamte Prozess von Schritt 1 bis Schritt 4 wird als Bagging bezeichnet. Bagging ist in diesem Zusammenhang eine Abkürzung für Bootstrap and Aggregating [34].
Aufgrund seiner hohen Generalisierungsfähigkeit gehört der Random Forest in der Praxis oftmals zu den performantesten Algorithmen und kann in vielen Anwendungsfällen mit deutlich komplexeren Alternativen mithalten. Der Random Forest hat eine effiziente Laufleistung auf großen Datenbanken und ist zudem in der Lage, mit einer sehr großen Anzahl an Features umzugehen. Diese Eigenschaft kann dazu genutzt werden, die Dimensionen eines riesigen Datensatzes zu reduzieren, indem die wichtigsten Features mit Hilfe des Random Forest ermittelt werden (siehe Kapitel 5.3.4). Kumar & Ravi (2008) konnten in ihrer Kundenabwanderungsanalyse unter Verwendung des Random Forest die besten Ergebnisse erzielen [5, 31].
Gradient Boosting Machines gehören ebenso wie die Random Forest-Klassifikation zum Ensemble Learning. Eine Ensemble-Klassifikation ist die Sammlung von vielen einzelnen Vorhersagemodellen, die am Ende zusammen ein finales Modell bilden. Der Grundgedanke des Ensemble Learnings ist, dass viele unterschiedliche Prognosemodelle zusammen bessere Vorhersagen treffen können als ein einziges Modell es allein könnte [5, 11,37].
Die Techniken des Ensemble Learnings können aufgeteilt werden in Boosting und Bagging. Bagging ist die Form des Lernens, die beim Random Forest zum Einsatz kommt. Hierbei werden viele verschiedene Bootstrap-Samples gezogen, auf Basis dessen individuelle und unabhängige Entscheidungsbäume generiert werden. Das Endergebnis einer Klassifikation entsteht, wenn die unabhängigen Entscheidungsbäume zusammen aggregiert werden, indem der Durchschnitt beziehungsweise die absolute Mehrheit der Teilergebnisse ermittelt wird[37].
Der wesentliche Unterschied von Boosting zu Bagging ist, dass die Prädiktoren nicht unabhängig, sondern sequenziell erstellt werden. Boosting verfolgt den Ansatz, dass die nachfolgenden Entscheidungsbäume aus den Fehlern der vorhergehenden Entscheidungsbäume lernen und sich daher sequenziell von Runde zu Runde weiter verbessern. Während der Random Forest parallele Modelle erstellt, geniert Boosting ein einziges finales Vorhersagemodell, welches sequenziell lernt und alleinig über die Vorhersageentscheidung entscheidet. Die sequenzielle Erstellung von Vorhersagemodellen kann auf Basis von vielen verschiedenen Machine Learning-Algorithmen erfolgen und reicht von der Regression bis hin zur Klassifikation. Bei Gradient Boosting Machines kommen in erster Linie Entscheidungsbäume zum Einsatz, die durch Anpassungen nach und nach weiter modifiziert werden, bis schlussendlich ein finaler Entscheidungsbaum entsteht [11,37].
In dem Fall von Bagging ist die Wahrscheinlichkeit, dass eine Observation in einem Bootstrap-Sample vorkommt, in jeder Runde jeweils gleich groß. Beim Boosting hingegen werden einzelne Observationen gewichtet, sodass einige Observationen bewusst öfters modelliert werden. Die Gewichtung der Observationen erfolgt, indem die Güte des Modells aus der vorangegangenen Runde evaluiert wird. Falsch klassifizierte Observationen bekommen in Folge dessen eine höhere Gewichtung, da diese in der betrachteten Boosting-Runde am schwersten zu klassifizieren waren. Aus diesem Grund resultieren ungleiche Wahrscheinlichkeiten, dass eine Observation zum Trainieren des Modells in einer nächsten Runde erneut vorkommt. Die Folgenden Schritte erläutern die genaue Vorgehensweise des Gradient Boosting Algorithmus [11,22] :
1. Im ersten Schritt muss entschieden werden, wie viele aufeinanderfolgende Boosting-Runden erfolgen, bis ein finaler Entscheidungsbaum entsteht. Diese Variable wird nrmmd genannt.
2. In der ersten Boosting Runde wird der erste Entscheidungsbaum Tree! erstellt, bei dem die Wahrscheinlichkeiten für das Auftreten jeder Observation im Training gleich groß sind.
3. Nachdem Treei erstellt wurde, wird dessen Prognosegüte evaluiert. Auf Basis dieser Evaluation werden anschließend die Gewichtungen der Observationen angepasst. Observationen, die in Runde 1 falsch klassifiziert wurden, bekommen eine höhere Gewichtung, damit sie in Zukunft noch öfter trainiert werden können. Korrekt klassifizierte Observationen erhalten im Gegenzug dazu eine geringe Gewichtung, da diese bereits richtig eingeschätzt wurden.
4. In der nächsten Boosting-Runde 2 wird Tree2 mit den gewichteten Trainingsdaten erstellt. Hierbei ist die Wahrscheinlichkeit größer, dass vor allem die problematischen Observationen trainiert werden, die in der vorherigen Runde falsch klassifiziert worden sind.
[...]
Der GRIN Verlag hat sich seit 1998 auf die Veröffentlichung akademischer eBooks und Bücher spezialisiert. Der GRIN Verlag steht damit als erstes Unternehmen für User Generated Quality Content. Die Verlagsseiten GRIN.com, Hausarbeiten.de und Diplomarbeiten24 bieten für Hochschullehrer, Absolventen und Studenten die ideale Plattform, wissenschaftliche Texte wie Hausarbeiten, Referate, Bachelorarbeiten, Masterarbeiten, Diplomarbeiten, Dissertationen und wissenschaftliche Aufsätze einem breiten Publikum zu präsentieren.
Kostenfreie Veröffentlichung: Hausarbeit, Bachelorarbeit, Diplomarbeit, Dissertation, Masterarbeit, Interpretation oder Referat jetzt veröffentlichen!
Kommentare