Über den Entscheidungsbaum zur Prognose

0

Ein Problem, das vielen bekannt sein dürfte: riesige und oft unüberschaubare Datenmengen zu sichten, um daraus Informationen zu generieren, Schlussfolgerungen zu ziehen und am Ende Entscheidungen zu treffen – die nicht selten über die Wettbewerbsfähigkeit am Markt entscheiden.

Während einfache Analysen, etwa die Ermittlung von Produkten, die sich gut oder auch schlecht verkaufen, heute zum Standard-Repertoire im Business-Intelligence (BI)-Umfeld gehören, ist die Vorhersage von Trends, Verhaltensmustern, oder dem Eintreten von Ereignissen nach wie vor eine sehr spezialisierte Aufgabe, die nicht alle Tools beherrschen. Dabei geht es nicht unbedingt um die einfache Fortschreibung, wie zum Beispiel Absatzzahlen aufgrund historischer Werte: dies lässt sich mathematisch sehr einfach über eine Regression abbilden. Die gängigen BI-Werkzeuge sind heute in der Lage, die Regressionsgleichung für dieses Problem mit Standard-Bordmitteln zu ermitteln und auszugeben.

Soll jedoch mehr als ein Parameter in einer Vorhersage-Funktion berücksichtigt werden, dann sind neue Ansätze gefragt. Parameter können beschreibende Attribute für ein „Objekt“ oder auch äußere Einflussfaktoren sein.

Ein Beispiel aus der Praxis

Exemplarisch für die Vorhersage mit mehreren Parametern soll die Entwicklung einer Scoring-Funktion für die automatische Genehmigung eines Kreditantrages aufgezeigt werden. Für einen Kreditantrag sind verschiedene Angaben zu berücksichtigen

  • Alter des Antragstellers
  • Ausbildung oder Abschluss
  • Familienstatus
  • Geschlecht
  • Beruf
  • Einkommen
  • Kredithistorie
  • Gewünschte Kreditsumme

Kreditanträge für größere Summen entscheidet meist ein Bankangestellter; bei einem Online-Shop hingegen, bei dem ein größerer Anteil von Verkäufen über eine Finanzierung von relativ kleinen Beträgen realisiert werden soll, ist eine automatische Entscheidung über die Kreditwürdigkeit notwendig. Für bestimmte Kombinationen der Angaben eines Kreditantrages wird dieser dann genehmigt oder eben abgelehnt.

Bei großen Datenmengen ist das Erkennen relevanter Kombinationen und damit eine Entscheidung über die Kreditwürdigkeit manuell kaum noch zeitnah durchführbar. Es wird also ein Verfahren benötigt, das positive oder negative Kombinationen automatisch erkennt und dann auf neue Kreditanträge anwenden kann.

Ein gängiges Verfahren für eine solche Scoring-Anwendung ist ein Entscheidungsbaum, bei dem auf Basis von verschiedenen Eingabe-Parametern aus historischen Daten formale Regeln abgeleitet werden und damit eine Prognose oder Entscheidung auf Basis von bereits bestehendem Wissen ermöglichen.

Entscheidungsbäume sind Bestandteil vieler Anwendungen im Bereich Data Mining oder Business Analytics. Für die Open-Source-Software „R“  für statistisches Computing stehen unter anderem auch Algorithmen für Entscheidungsbäume zur Verfügung. Hier werden anhand bestimmter Fallunterscheidungen, ausgehend von einem einzelnen Wurzelknoten, Entscheidungspfade aufgebaut. Dabei lässt sich die Entwicklung eines Entscheidungsbaumes durch verschiedene Parameter beeinflussen – und daraus folgend auch die Güte der getroffenen Vorhersagen.

Wie wird die Kreditwürdigkeit eines Antragstellers prognostiziert?

Anhand der BI-Umgebung WebFOCUS  von Information Builders soll mittels eines Beispiels zur Prognose der Kreditwürdigkeit die Entwicklung einer Scoring-Anwendung aufgezeigt werden.

 

 

Der umzusetzende Prozess unterteilt sich dabei in zwei wesentliche Aspekte: die Erstellung eines Entscheidungsbaumes auf Basis historischer Daten sowie die Anwendung des Entscheidungsbaumes im operativen Datenfluss. Die notwendigen Datensätze für das Training werden durch eine Abfrage der BI-Plattform definiert, diese enthält die notwendigen Eingabeparameter, die Kreditwürdigkeit und gegebenenfalls einen eindeutigen Schlüssel (ID). Mittels eines Samplings wird der Datensatz für die Generierung eines Entscheidungsbaumes eingeschränkt. Ist über die Variation von Parametern für den Entscheidungsbaum keine ausreichende Güte erzielbar, kann unter Umständen über eine Variation des Samplings eine Verbesserung möglich sein.

Nach dem Sampling wird mit Hilfe von „R“ der eigentliche Prozess zur Erstellung eines Entscheidungsbaumes initiiert. Um die Qualität zu steigern beziehungsweise die mögliche Fehlerrate zu senken, wird die volle „R“-Integration innerhalb der BI-Plattform genutzt, die verschiedene „R“-Verfahren abstrahiert und anwenderfreundlich präsentiert. Dazu gehören unter anderem die Definition der Daten für das Training, detaillierte statistische Informationen über die Trainingsdaten sowie die Auswertung der Trainingsergebnisse zur Bewertung der Güte des gewählten Verfahrens. Eine direkte Interaktion mit der Konsole von „R“ für eine Analyse oder Vorhersage ist nicht notwendig.

Nun kann der Entscheidungsbaum erstellt werden. Je nach gewählten Parametern werden mehr oder weniger komplexe Entscheidungsbäume erstellt. Schon der erste Versuch hat eine Güte von rund 93 Prozent, also einen globalen Fehler von rund 7 Prozent. Anhand der Grafik des Entscheidungsbaumes können die Regeln der Kreditvergabe abgelesen werden.

Im vorliegenden Beispiel wird ein Kreditantrag bereits ab einem Einkommen von 33.000 US-Dollar positiv beschieden – in 85 Prozent aller Fälle. Auch für Einkommen unter 33.000 Dollar gibt es Kombinationen verschiedener Kriterien, die ebenfalls zu einem positiven Entscheid führen können.

Nachdem ein Entscheidungsbaum generiert wurde, der den Ansprüchen an die Güte der Prognose zur Kreditwürdigkeit genügt, wird er als Modell exportiert. Hier wird die Variante als Quelltext in C gewählt; zusätzlich wird das eigentliche Projekt für die spätere Wiederverwendung gespeichert. Um den Entscheidungsbaum im operativen Betrieb für Berichte in WebFOCUS oder zur Selektion von Daten im ETL-Werkzeug Data Migrator verwenden zu können, wird der Quelltext kompiliert und, daraus resultierend, der Entscheidungsbaum als eine Bibliothek den entsprechenden Werkzeugen zur Verfügung gestellt.

Um eine erste Beurteilung über die Güte des Entscheidungsbaumes zu erhalten, wird das Ergebnis mit dem Trainingswert verglichen. Während die Masse der Datensätze zeigt, dass die Prognose des Entscheidungsbaums korrekt ist, so kann auch bei einigen wenigen Datensätzen eine abweichende Prognose festgestellt werden. Dies war aber auch nach der Gütebewertung im R-Wizard zu erwarten.

Wird die Scoring-Funktion auf Basis eines „Random Forest“-Algorithmus erstellt, bei dem mehrere unterschiedliche Entscheidungsbäume nach dem einfachen Mehrheitsprinzip über ein Scoring entscheiden, steigt die Güte des Scorings auf rund 97 Prozent.

In jedem Fall ist aber zu vermeiden, dass ein Entscheidungsbaum durch falsche Wahl der Parameter zu komplex wird. Es besteht die Gefahr, dass der Baum zwar ein optimales Ergebnis für die Trainingsdaten liefert, aber bei unbekannten Daten versagt und schlechtere Ergebnisse liefert als ein vergleichsweise einfacher Entscheidungsbaum. In diesem Fall spricht man von Overfitting.

Prognose schon während der Datenbewirtschaftung

Ein weiteres Anwendungsgebiet für die zuvor erstellte Prognosefunktion ist die Nutzung innerhalb eines Datenstroms, zumeist in einem ETL-Prozess, bei dem schon während der Datenbewirtschaftung in Echtzeit oder echtzeitnah eine Prognose für ein bestimmtes Anwendungsszenario getroffen werden kann. Entsprechend auffällige Ergebnisse werden zur weiteren Bearbeitung an einen Mitarbeiter weitergegeben, der dann die weitere Bearbeitung übernimmt und gegebenenfalls Folgeaktionen auslösen kann, etwa das Übersteuern von automatisierten Entscheidungen zur Kreditvergabe in Grenzfällen. Eine Rückkopplung aus dem operativen Betrieb und damit verbunden ein wiederholtes Training der Prognosefunktion sichert eine gleichbleibend hohe Qualität auch unter sich ändernden Bedingungen.

Ein Entscheidungsbaum ist nur der Anfang

Mit dem freien Softwarepaket „R“ steht ein sehr leistungsfähiges und umfangreiches Paket zur Verfügung, das auch umfangreiche Lösungen für das Gebiet der „Predictive Analytics“ bietet. Mit Hilfe eines Wizard wie „RStat“ von Information Builders kann die Nutzung von R erheblich vereinfacht werden, trotzdem benötigt man ein Detailwissen über die zu verwendenden Verfahren und ihre Vor- und Nachteile. Nicht jedes Problem kann mit jedem beliebigen Verfahren gelöst werden. Während ein Entscheidungsbaum, wie in diesem Beispiel, ein recht guter Anfang ist, so kann er bei komplexeren Problemen nicht mehr ausreichend sein und komplexere Verfahren notwendig machen. Der größte Nutzen ergibt sich, wenn man die mit Hilfe von R entwickelte Funktion zur Prognose in ETL-Prozesse einbinden und somit im operativen Betrieb nutzen kann. Über die Rückkopplung der Prognoseergebnisse in die Erstellung des Entscheidungsbaumes schließt sich der Kreislauf.

Was exemplarisch an einer Scoring-Funktion für die Kreditvergabe gezeigt wurde, kann auch in anderen Bereichen angewendet werden, etwa in der Luftfahrtindustrie bei der Vorhersage von möglichen Verspätungen bei Flügen, oder der Wahrscheinlichkeit des Nicht-Erscheinens von Passagieren und damit die Steigerung der Auslastung durch gezieltes Überbuchen. Die Anwendung eines Prognoseverfahrens auf Sensordaten kann im Echtzeitbetrieb auf mögliche Fehlerquellen in naher Zukunft schließen lassen, proaktiv ein Wartungsereignis auslösen und dadurch die Auslastung von Maschinen durch geringere Standzeiten steigern.

Die Prognose mit R ist nicht auf Entscheidungsbäume begrenzt, es können auch statistische Verfahren wie Regressionsanalysen oder neuronale Netze genutzt werden. Es ist auch eine Kombination aus mehreren Verfahren denkbar, um die Güte der Prognose zu steigern. Wichtig ist, dass eine Integration von R in BI-Umgebungen auch den Einsatz von selbst entwickelten R Skripten ermöglicht, um bestehende und erprobte Verfahren zu nutzen.

Autor: Dirk Beerbohm ist Technical Account Manager bei Information Builders in Eschborn. Er beschäftigt sich seit rund 18 Jahren mit unterschiedlichen Themengebieten im Bereich Business Intelligence.

(jm)

RSS Feed

Neuen Kommentar schreiben

Entdecken Sie die Printmagazine des WIN-Verlags