Data Mining

Werbung
Data Mining
Kompaktkurs an der Berufsakademie Mannheim
März 2004
Prof. Dr. Werner Dilger
Data Mining
Seite 2
Inhalt
1.
Einführung .................................................................................................................................................................. 3
1.1.
Wozu ist Data Mining gut? .............................................................................................................................. 4
1.2.
Der Data Mining Prozess ................................................................................................................................. 5
1.3.
Kosten-Nutzen-Rechnung am Beispiel einer Direktmailingaktion .................................................................. 6
1.4.
Übersicht über die Methoden des Data Mining ............................................................................................... 9
1.4.1.
Statistische Methoden ................................................................................................................................. 9
1.4.2.
Fallbasiertes Schließen................................................................................................................................ 9
1.4.3.
Entscheidungsbäume................................................................................................................................. 10
1.4.4.
Neuronale Netze ....................................................................................................................................... 10
1.4.5.
Genetische Algorithmen ........................................................................................................................... 12
2.
Entscheidungsbäume ............................................................................................................................................... 29
2.1. Induktives Lernen .................................................................................................................................................. 29
2.2.
Lernen von Entscheidungsbäumen ................................................................................................................ 29
2.2.1.
Entscheidungsbäume als Performanzelemente..................................................................................... 29
2.2.2.
Induktion von Entscheidungsbäumen aus Beispielen .......................................................................... 30
2.2.3.
Abschätzung der Performanz des Lernalgorithmus ............................................................................. 34
2.2.4.
Praktischer Gebrauch des Entscheidungsbaum-Lernens ...................................................................... 35
2.3.
Die Verwendung der Informationstheorie ..................................................................................................... 35
2.3.1.
Das Prinzip des Informationsgewinns .................................................................................................. 36
2.3.2.
Rauschen und Overfitting .................................................................................................................... 37
2.3.3.
Erweiterung der Anwendbarkeit von Entscheidungsbäumen ............................................................... 39
3.
Lineare und Nichtlineare Entscheidungsbäume ...................................................................................................... 41
3.1.
Geometrische Interpretation .......................................................................................................................... 41
3.2.
Lineare Entscheidungsbäume ........................................................................................................................ 43
3.3.
Nichtlineare Entscheidungsbäume ................................................................................................................. 45
4.
Neuronale Netze ...................................................................................................................................................... 49
4.1.
Gehirn und Computer .................................................................................................................................... 49
4.1.1.
Struktur und Arbeitsweise des Gehirns ................................................................................................ 49
4.1.2.
Vergleich zwischen Gehirn und Computer .......................................................................................... 50
4.2.
Neuronale Netze ............................................................................................................................................ 51
4.2.1.
Grundbegriffe ....................................................................................................................................... 51
4.2.2.
Notationen ............................................................................................................................................ 51
4.2.3.
Einfache Rechenelemente .................................................................................................................... 52
4.2.4.
Netzstrukturen ...................................................................................................................................... 54
4.2.5.
Optimale Netzstrukturen ...................................................................................................................... 55
4.3.
Perzeptrone .................................................................................................................................................... 56
4.3.1.
Struktur von Perzeptronen .................................................................................................................... 56
4.3.2.
Repräsentationsfähigkeit von Perzeptronen ......................................................................................... 57
13.3.3.
Erlernen linear separierbarer Funktionen ............................................................................................. 58
4.4.
Mehrschichtige zyklenfreie Netze ................................................................................................................. 59
4.4.1.
Back-Propagation-Lernen .................................................................................................................... 59
4.4.2.
Eigenschaften des Back-Propagation-Lernens ..................................................................................... 62
4.5.
Anwendungen Neuronaler Netze ................................................................................................................... 63
4.5.1.
Englische Aussprache .......................................................................................................................... 63
4.5.2.
Erkennen von Handschrift .................................................................................................................... 64
4.5.3.
Autofahren ........................................................................................................................................... 64
5.
Der prudsys DISCOVERER ................................................................................................................................... 67
5.1.
Einige wichtige Begriffe ................................................................................................................................ 67
5.1.1.
Lern-, Evaluierungs- und Klassifikationsdatenbank ............................................................................ 67
5.1.2.
Merkmalstypen..................................................................................................................................... 67
5.1.3.
Fehlende Werte .................................................................................................................................... 68
5.1.4.
Transformation und Normierung ......................................................................................................... 69
5.2.
Gains-Chart, Lift-Chart, Segment-Fortschrittsanzeige .................................................................................. 70
5.2.1.
Gains-Chart .......................................................................................................................................... 70
5.2.2.
Lift-Chart ............................................................................................................................................. 71
5.2.3.
Die Segment-Fortschrittsanzeige ......................................................................................................... 71
5.3.
Die Baumdarstellung ..................................................................................................................................... 71
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
5.4.
Seite 3
Kostenanalyse ................................................................................................................................................ 72
Literatur
Berry, M.J.A., Linoff, G. (1997), Data Mining Techniques. For Marketing, Sales, and Customer
Support. John Wiley & Sons, Inc., New York.
Hand, D., Mannila, H., Smyth, P. (2001), Principles of Data Mining. MIT Press, Cambridge, Mass.
Prudential Systems Software GmbH (2001), prudsys DISCOVERER 3.0. User Guide, Chemnitz.
Russel, S., Norvig, P. (1995), Artificial Intelligence. A Modern Approach. Prentice Hall, Upper
Saddle River, NJ.
Witten, I.A., Frank, E. (2000) Data Mining. Practical Machine Learning Tools and Techniques with
Java Implementations. Academic Press, San Diego, CA.
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
Seite 4
1. Einführung
1.1.
Wozu ist Data Mining gut?
Die wichtigsten kommerziellen Einsatzgebiete des Data Mining sind die folgenden:
 Direktmarketing
 Direktmailing
 Außendienst
 Kundenprofile




Erstellung von Kundenprofilen
Top-Kunden-Analyse
Neukundengewinnung
Kündigerprävention
 Handel
 Warenkorbanalyse
 eCommerce
 Finanz- und Versicherungswirtschaft
 Risikoanalyse (Credit Scoring)
 Missbrauchsentdeckung (Fraud Detection)
Beim Einsatz von Data Mining zur Optimierung der Direktmailingaktion werden zunächst zwei
vorbereitende Schritte gemacht.
Schritt 1: Profilerstellung
Es wird ein Produktprofil erstellt. Dazu werden Erfahrungen aus früheren Direktmailingaktionen zu
gleichen oder ähnlichen Produkten benötigt, eine so genannte Responsedatenbank. Ist diese nicht
vorhanden (z.B. bei einem ganz neuen Produkt), dann kann eine Testaktion mit einer kleinen
Auflage (z.B. 5000 – 20000) repräsentativer Kunden durchgeführt werden. Bei neuen Produkten
oder bei Direktmarketingaktionen in neuen Märkten wird eine solche Testaktion generell
durchgeführt. Zum einen erhält man damit Informationen darüber, wie ein Produkt beim Kunden
ankommt, zum anderen können die Ergebnisse des Tests als Responsedatenbank verwendet werden.
Schritt 2: Qualifizierung einer Kundendatenbank
Die gesamte Kundendatenbank wird auf Grund der Responsedatenbank in verschiedene Kundensegmente unterteilt. Jedes Segment hat ein bestimmtes Responsepotenzial. Damit erhält jeder Kunde
ebenfalls ein bestimmtes Responsepotenzial und man erhält eine Schätzung über sein
Responseverhalten. Die Kundensegmente werden anschließend nach ihrem Responsepotenzial in
absteigender Reihenfolge angeordnet. Es liegt in der Entscheidung des Leiters der Direktmarketingaktion, bis zu welchem Segment er die Kunden in die Aktion einbeziehen soll. Das
Responsepotenzial ermöglicht eine genaue Berechnung dafür, bis zu welchem Segment die
Marketingaktion kostendeckend ist, wobei man im Interesse einer Gewinnmaximierung üblicherweise nicht bis zu dieser Grenze geht.
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
Seite 5
Die qualifizierte (segmentierte) Kundendatenbank dient nun als Eingabe für das Data Mining
Verfahren. Jeder qualifizierte Datensatz beschreibt einen Kunden, der angeschrieben werden soll.
Der Datensatz sollte aussagekräftige Merkmale enthalten. Typische Merkmale sind:







personen- und haushaltsbezogene Informationen (z.B. Struktur des Haushalts, Lifestyle,
Alter)
Wohngebietscharakteristiken (z.B. Postleitzahlen, Wohngegend, soziales Umfeld)
Interessen (z.B. Auto, Reisen, Tiere, Kultur, Sport)
Informationen über Beschäftigungen (z.B. Beruf, Einkommen)
Konsumvorlieben
Immobilien
Kreditkartentypen
Eine besonders wichtige Angabe ist natürlich, ob der betreffende Kunde auf die vorausgegangene
Direktmailingaktion reagiert hat oder nicht.
Die Kundensegmente in der qualifizierten Kundendatenbank können durch Beziehungen zwischen
den Werten, oder genauer: bestimmter Wertebereiche, mehrerer relevanter Merkmalen beschrieben
werden. Ein Beispiel für ein Segment ist:
Alle Haushalte,
 die aus mehr als 5 Personen bestehen
 deren Jahreseinkommen zwischen 40.000 € und 50.000 € liegt,
 die zwei Autos fahren
 und die ein Eigenheim besitzen.
Diese Beziehung kann man auch formal definieren, dann sieht sie z.B. so aus:
and
and
and
CountPerson > 5
Income  40.000 and Income  50.000
CountCar = 2
houseowner = true
Die Unterteilung der Kundendatenbank in die Segmente erfolgt nicht einfach zufällig, vielmehr
werden die Segmente so bestimmt, dass Responsepotenzial der in einem Segment liegenden
Kunden entweder deutlich höher oder deutlich niedriger ist als das durchschnittliche
Responsepotenzial aller Kunden.
1.2.
Der Data Mining Prozess
Data Mining ist keine einzelne Methode, sondern ein Prozess, der in sechs Phasen verläuft und in
dem verschiedene Methoden zum Einsatz kommen können. Die Grundlage des Prozesses sind die
Daten in einer Datenbank. Die einzelnen Phasen sind
1. Verstehen des Geschäftsproblems
Definition der Aufgabe, vgl. dazu Abschnitt 1.1, Festlegung der Erfolgskriterien.
2. Verstehen der Daten
Überblick über alle zentral oder dezentral vorhandenen Daten, die das Geschäftsproblem betreffen, Klärung des Zugriffs auf die Daten.
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
Seite 6
3. Aufbereitung der Daten
Sichtung und Behandlung fehlerbehafteten oder fehlenden Datenmaterials. Mögliche Schritte
hierfür sind Löschen von Datensätzen mit fehlenden Werten, Ersetzung nicht vorhandener
Merkmalswerte, Identifizierung von Ausreißern mit Hilfe explorativer Untersuchungen, Bestimmung einer für das Geschäftsproblem relevanten Teilmenge der Daten.
4. Modellbildung
Identifizierung eines Kunden- oder Produktsegments, das signifikant andere Eigenschaften als
die Gesamtheit aller Kunden bzw. Produkte hat, z.B. durch Segmentierung der Daten mittels
Data Mining.
5. Bewertung der Ergebnisse
Soll-Ist-Vergleich mit kritischer Bewertung der Resultate des Data Mining, eventuell Hinzunahme weiterer Daten.
6. Individuelle Lösung
Umsetzung der Data Mining Ergebnisse, d.h. Integration in die täglichen Geschäftsabläufe,
eventuell Entwicklung einer individuellen Lösung in Form von Spezialsoftware.
Der Ablauf des Data Mining Prozesses ist in Abbildung 1.1 graphisch dargestellt.
Abbildung 1.1
1.3.
Kosten-Nutzen-Rechnung am Beispiel einer Direktmailingaktion
Wichtige Begriffe beim Direktmailing:
Ausstattungsdichte
Relation zwischen der Gesamtauflage eines Werbemittels, z.B. Katalog oder Mailing, und der
Gesamtzahl aller potentiell zur Verfügung stehenden Haushalte einer Kundendatenbank. Die Ausstattungsdichte beeinflusst die Kosten: Je höher die Ausstattungsdichte, desto höher die Kosten.
Responserate
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
Seite 7
Anteil an Haushalten, die auf eine Mailingaktion positiv reagieren, z.B. Bestellung, Abonnement
oder Ähnliches. Die Responserate beeinflusst auf den zu erwartenden Nettoumsatz und damit auf
den Gewinn.
Kosten-Umsatz-Relation (KUR)
Maß für den prozentualen Werbemittelanteil am Nettoumsatz, wird nach folgender Formel berechnet:
KUR 
100%  Werbekoste n
Nettoumsat z
Bei festem Nettoumsatz ist die KUR ein Maß für den notwendigen Werbemitteleinsatz zur Erzielung dieses Umsatzes. Ist z.B. KUR = 10%, dann können mit 10 € Werbemittel 100 € Nettoumsatz
erzielt werden.
Deckungsbeitrag (DB)
Es werden zwei Formen des Deckungsbeitrags definiert, eine ohne und eine mit Berücksichtigung
der Werbekosten:
DB I = Nettoerlös – variable Kosten
DB II = Nettoerlös – variable Kosten – Werbekosten
Der Zusammenhang zwischen Nettoumsatz, Deckungsbeiträgen und Ausstattungsdichte lässt sich
wie in Abbildung 1.2 graphisch darstellen.
Bestellwert
Nettoumsatz
DB I
Werbekosten
DB II
10% 20%
30%
40%
50%
60%
70%
80%
90% 100%
Ausstattungsdichte
Abbildung 1.2
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
Seite 8
Fragen
1. Welche vorbereitenden Schritte sind für die Optimierung des Data Mining-Einsatzes bei einer
Direktmailing-Aktion erforderlich?
2. Wie werden Segmente in einer qualifizierten Kundendatenbank beschrieben und wie unterteilt
man die Datenbank in Segmente?
3. Wie lassen sich die Ergebnisse einer in Segmente unterteilten Kundendatenbank in einem
Gains-Chart veranschaulichen?
4. Aus welchen Schritten besteht der Data Mining-Prozess?
5. Welcher Schritt des Data Mining-Prozesses ist vermutlich der zeitaufwändigste?
6. Welches sind die wichtigsten Begriffe beim Direktmailing und wie kann man ihr Verhältnis
zueinander grafisch darstellen?
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
Seite 9
2.
Übersicht über die Methoden des Data Mining
2.1.
Statistische Methoden
Wichtige Aufgaben beim Data Mining sind die Korrelationsanalyse, die Hauptkomponentenanalyse, die Regressionsanalyse und das Clustering. Zur Lösung dieser Aufgaben können herkömmliche statistische Methoden, aber auch andere Verfahren, z.B. spezielle Neuronale Netze, eingesetzt
werden.
Bei der Korrelationsanalyse geht es darum, Beziehungen zwischen verschiedenen Daten dadurch zu
finden, dass man die Werte bestimmter Attribute in den Datensätzen vergleicht. Lässt sich bei
einem signifikant großen Teil der Werte eine feste Relation, etwa Gleichheit oder ein funktionaler
Zusammenhang wie x = f(y), feststellen, dann gelten die Daten als korreliert. Bei der Hauptkomponentenanalyse geht es darum, diejenigen Attribute von Datensätzen zu bestimmen, die die Datensätze charakterisieren, d.h. die die wichtigsten zur Beschreibung der Datensätze sind. In der Regel
ist dies nur ein kleiner Teil der Attribute, und es ist dann möglich, sich bei weiteren Untersuchungen der Datensätze auf diese Attribute zu beschränken.
Die Regressionsanalyse untersucht Zeitreihendaten. Sie betrachtet die in der Vergangenheit etwa
bei Reihenmessungen angefallenen Daten und versucht, aus dem zeitlichen Verlauf eines einzelnen
oder mehrerer Werte den nächst folgenden Wert bzw. die nächst folgenden Werte zu prognostizieren. Beim Clustering wird eine Menge von Daten in Teilmengen ähnlicher Daten unterteilt. Es wird
angenommen, dass die Daten durch Datensätze gleicher Struktur beschrieben sind. Dann sind sich
Daten ähnlich, wenn sie in bestimmten ausgesuchten Attributen weitgehend übereinstimmende
Werte haben. Clustering wird also immer relativ zu bestimmten Attributen gemacht.
2.2.
Fallbasiertes Schließen
Die Idee des fallbasierten Schließens ist, Beispiele gelöster Probleme aus einem bestimmten Anwendungsbereich abzuspeichern um sie später zur Lösung neuer, aber ähnlich gearterer Probleme
heranziehen zu können. Dazu müssen die Beispielprobleme zusammen mit ihrer Lösung in einem
geeigneten Format dargestellt werden und in einer speziellen Datenbank, der Fallbasis, abgespeichert werden. Ein Paar, bestehend aus Problembeschreibung und zugehöriger Lösung, heißt Fall.
Liegt ein neues Problem vor, dann muss dieses zunächst in dem vorgegebenen Format dargestellt
werden. Dann können die Problembeschreibungen der in der Fallbasis vorhandenen Fälle durchsucht werden um eine zum neuen Problem möglichst ähnliche Beschreibung zu finden. Dafür
benötigt man ein Ähnlichkeitsmaß für die Problembeschreibungen. Der Fall mit der ähnlichsten
Problembeschreibung wird genommen und seine Lösung als mögliche Lösung des neuen Problems
ausgegeben. Eine Anpassung der gefundenen Lösung an die neuen Gegebenheiten kann u.U.
erforderlich sein.
Problem- und Lösungsbeschreibungen können in beliebigen Formaten definiert werden. Der
einfachste und häufig vorkommende Fall ist, dass die Problembeschreibung aus einer Reihe von
Parameterwerten besteht und die Lösungsbeschreibung ein einzelner Parameterwert ist. Ein Fall ist
dann ein gewöhnlicher Datensatz bestehend aus den Werten einer Reihe von Attributen. Im Fall von
numerischen Werten lässt sich das Ähnlichkeitsmaß als Euklidischer Abstand oder als (eventuell
modifizierte) Manhattan-Distanz zwischen den Datensätzen definieren.
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
2.3.
Seite 10
Entscheidungsbäume
Es sei eine Menge von Datensätzen mit n Attributen gegeben. Jeder Datensatz charakterisiert ein
bestimmtes Objekt und wird als Beispiel bezeichnet. Geometrisch betrachtet kann man ein Beispiel
als Punkt im n-dimensionalen Raum auffassen. Jedes Attribut muss eine kleine Menge diskreter
Werte als Wertebereich haben. Bei Attributen mit kontinuierlichen Wertebereichen muss eine
Diskretisierung vorgenommen werden. Eines der Attribute wird als Zielattribut ausgewählt oder es
wird ein neues Attribut als Zielattribut eingefügt. Das Zielattribut habe m verschiedene diskrete
Werte.
Mittels eines speziellen Algorithmus wird nun ein Entscheidungsbaum konstruiert. Die Konstruktion verläuft in folgenden Schritten:
1. Wähle ein Attribut a (außer dem Zielattribut) aus und entferne a aus der Menge der zur Verfügung stehenden Attribute. a habe die Werte w1, w2, ..., wk.
2. Unterteile die Menge der vorhandenen Beispiele so in k Teilmengen, dass das Attribut a in der
j-ten Teilmenge nur den Wert wj hat.
3. Führe die Schritte 1. und 2. für jede der k Teilmengen und die reduzierte Attributmenge durch.
Dieser rekursive Algorithmus stoppt, wenn alle Attribute aufgebraucht sind oder wenn die Beispielmenge leer wird oder wenn die Beispielmenge homogen wird, d.h. wenn jedes Attribut für alle
Beispiele in der Menge denselben Wert hat.
In der Regel wird von dem Algorithmus eine graphische Struktur aufgebaut, und zwar ein Baum.
Die Knoten des Baums werden von den Beispielmengen gebildet, insbesondere der Wurzelknoten
von der Menge aller am Anfang vorliegenden Beispiele, die Kanten von den Werten des an einem
Knoten ausgesuchten Attributs. Homogene Beispielmengen bilden Blätter im Baum. Die Beschriftung eines Wegs von der Wurzel zu einem Blatt beschreibt, unter welchen Bedingungen, d.h. bei
welchem Wert für das jeweils ausgewählte Attribut, die am Blatt stehende Menge zustande kommt.
Der Entscheidungsbaum kann als Klassifikator verwendet werden, er gibt für jedes neue Beispiel
an, zu welchem Blatt, also zu welcher Teilmenge, es gehört.
2.4.
Neuronale Netze
Ein Neuronales Netz ist ein gerichteter Graph, dessen Knoten, genannt Einheiten, selbstständig
rechnende Einheiten sind. Die Kanten verbinden die Knoten in verschiedenen typischen Formen,
wodurch sich unterschiedliche Typen von Netzen ergeben. Man unterscheidet zwei Hauptklassen
von Neuronalen Netzen, die Feed-forward-Netze und die rekurrenten Netze, danach, ob der zu
Grunde liegende Graph zyklenfrei ist oder nicht. Häufig sind die Knoten in Teilmengen, genannt
Schichten, unterteilt. Die Schichten sind geordnet, etwa als S1, S2, ..., Sn. Kanten werden bei
geschichteten Netzen nur zwischen Knoten aufeinander folgender Schichten gesetzt, d.h. nur
zwischen Si und Si+1 (i = 1, ..., n-1). Abbildung 1.3 zeigt ein geschichtetes Feed-forward-Netz.
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
Seite 11
Eingabeschicht
Ausgabeschicht
. . .
.
.
.
.
.
.
.
. . .
.
.
verborgene Schichten
Abbildung 1.3
Die Einheiten bestehen meist aus zwei Teilen. Jeder Teil wird durch eine Funktion gebildet. Die
beiden Teile, d.h. die beiden Funktionen, sind nacheinander angeordnet, so dass die Ausgabe der
ersten Funktion Eingabe der zweiten ist. Die erste Funktion erhält ihre Eingaben über die Kanten,
die von den vorgeschalteten Einheiten zu ihr führen, und die zweite Funktion überträgt ihre Ausgabe über Kanten an nachgeschaltete Einheiten. Die erste Funktion ist eine Integrationsfunktion, die
aus der Menge der Eingaben einen einzelnen Wert berechnet. Meist wird dazu die Addition benutzt.
Die zweite Funktion, genannt Aktivierungsfunktion, ist meist eine Schwellenwertfunktion. Bei
mehrschichtigen Netzen ist es insbesondere die Sigmoidfunktion wegen der einfachen Differenzierbarkeit. Die Eingänge in eine Einheit, d.h. die eingehenden Kanten, sind gewichtet. Jeder Eingang xi
hat ein eigenes Gewicht wi. Eine typische Einheit ist in Abbildung 1.4 dargestellt.
x1
w1
x2
w2
w3
x3
y
+
w4
x4
w5
x5
Integrationsfunktion
Aktivierungsfunktion
Abbildung 1.4
Ein Neuronales Netz kann trainiert werden, man sagt auch: es kann lernen. Die einfachste Form des
Lernens ist das überwachte Lernen. Man gibt dem Netz eine Reihe von Beispielen in beliebiger
Reihenfolge und wiederholt ein. Für jedes Beispiel ist bekannt, was die gewünschte Ausgabe sein
soll. Stimmt die Ausgabe des Netzes für ein Beispiel mit der gewünschten überein, dann braucht
nichts getan zu werden. Weichen tatsächliche und gewünschte Ausgabe voneinander ab, dann
müssen die Gewichte im Netz so verändert werden, dass sich der Fehler bei der Ausgabe verringert.
Dieser Prozess erfolgt im Idealfall so lange, bis alle Beispiele richtig berechnet werden. Das Netz
ist nun trainiert und repräsentiert eine bestimmte Funktion. Damit ist es in der Lage, neue Beispiele
zu berechnen, d.h. einen mutmaßlichen Funktionswert für diese auszugeben.
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
2.5.
Seite 12
Genetische Algorithmen
Genetische Algorithmen laufen auf Populationen von Genomen ab. Ein Genom ist eine Folge von
Genen. Die Gene sind die elementaren Informationseinheiten genetischer Algorithmen, im einfachsten Fall sind sie (kurze) Bitstrings. Die genetischen Algorithmen erzeugen in einer großen Schleife
immer neue Generationen von Genomen durch Anwendung der Operationen Selektion, Kreuzung
und Mutation. Dabei werden folgende Schritte durchgeführt:
1. Definiere die Genome und eine Fitnessfunktion und erzeuge eine initiale Population von
Genomen.
2. Modifiziere die aktuelle Population durch Anwendung der Operationen Selektion, Kreuzung
und Mutation.
3. Wiederhole Schritt 2 so lange, bis sich die Fitness der Population nicht mehr erhöht.
Das Ziel des Algorithmus ist die Fitness der Genome zu maximieren. Die Fitnessfunktion, die beliebig definiert sein kann, bewertet jedes neu entstandene Genom. Dazu muss das Genom in seinen
zugehörigen Phänotyp umgewandelt werden, auf ihm operiert die Fitnessfunktion. Durch die
Operation Selektion werden bei jedem Durchlauf durch die Schleife des Algorithmus eine
bestimmte Anzahl von Genomen ausgesondert, sie sorgt also dafür, dass die Größe der Population
konstant bleibt. Gleichzeitig werden (in der Regel) die fittesten Genome für die nächsten Operationen ausgewählt. Bei der Operation Kreuzung werden zwei Genome an einer bestimmten Stelle
aufgetrennt und die beiden Bruchstücke über Kreuz zu neuen Genomen kombiniert. Die Operation
Mutation verändert ein oder mehrere zufällig ausgewählte Gene in einem Genom, wodurch
ebenfalls ein neues Genom entsteht. Abbildung 1.5 illustriert die drei Operationen.
2.6.
Assoziationsregeln
Eine Assoziationsregel ist eine einfache Wahrscheinlichkeitsaussage über das gemeinsame
Vorkommen bestimmter Ereignisse oder Muster in einer Datenbasis. Sie sind besonders geeignet
für dünn besetzte Transaktionsdatenmengen und für diese ist ihre Erstellung besonders effizient.
Für die folgende Darstellung wird der Einfachheit halber angenommen, dass alle Variablen binäre
Werte haben. Eine typische Assoziationsregel hat dann die Form
IF A = 1 AND B = 1 THEN C = 1 mit Wahrscheinlichkeit p
A, B und C sind binäre Variable und p eine bedingte Wahrscheinlichkeit für das Ereignis C = 1,
wenn A = 1 und B = 1 gegeben sind, d.h. p = p(C = 1|A = 1, B = 1). Die Wahrscheinlichkeit p wird
Konfidenzwert oder Genauigkeitswert der Regel genannt, die Wahrscheinlichkeit p(A = 1, B = 1, C
= 1) heißt Support-Wert der Regel.
Bei der Bestimmung von Assoziationsregeln sucht man gewöhnlich nach solchen Regeln, deren
Konfidenzwert größer als ein Schwellenwert pc und deren Support-Wert größer als ein Schwellenwert ps ist. Zum Beispiel kann man nach Regeln suchen, deren Support-Wert größer als 0.05 und
deren Konfidenzwert größer als 0.8 ist.
Praktische Anwendung finden die Assoziationsregeln meist in der Warenkorbanalyse. Bei dieser
Data Mining Aufgabe versucht man zu bestimmen, mit welcher Wahrscheinlichkeit bestimmte
Objekte zu einer Menge zusammengestellt werden, konkret: welche Waren typischerweise zusammen gekauft werden und deshalb im selben Warenkorb zu finden sind. Die Zusammengehörigkeit
bestimmter Produkte lässt sich formal mittels einer Datenmatrix mit n Zeilen (entsprechend den
Warenkörben) und p Spalten (entsprechend den kaufbaren Produkten) darstellen. Die Einträge in
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
Seite 13
die Matrix sind binär. Eine solche Matrix ist typischerweise sehr groß (n in der Größenordnung von
Millionen und p in der Größenordnung von Zehntausenden) und sehr dünn besetzt, weil ein
Warenkorb meist nur wenige Produkte enthält. Die Assoziationsregeln finden einfache Muster in
solchen Daten in effizienter Weise.
n-te Generation
Trennstelle
Selektion
(n+1)-te Generation
Kreuzung
Mutation
Abbildung 1. 5
Es gibt verschiedene Algorithmen zur Bestimmung von Assoziationsregeln. Sie lassen sich typischerweise nach folgenden Aspekten beschreiben:
1.
2.
3.
4.
Aufgabe
Struktur
Score-Funktion
Suchmethode
Berufsakademie Mannheim
Beschreibung der Assoziationen zwischen Variablen
Probabilistische Regeln
Schwellenwerte für Konfidenzwert und Support-Wert
Systematische Suche (Breitensuche mit Pruning)
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
Seite 14
5. Datenmanagement
Mehrfaches lineares Durchmustern
Die Score-Funktion ist eine einfache Boolesche Funktion. Eine Regel erhält den Wert 1, wenn ihr
Support-Wert und ihr Konfidenzwert über den jeweiligen Schwellenwerten (s.o.) liegen. Das Ziel
ist, alle Regeln mit dem Score-Wert 1 zu bestimmen.
Ein Problem bei der Bestimmung der Assoziationsregeln ist ihre große Zahl. Sie liegt in der
Größenordnung O(p2p-1), wenn die Variablen binär sind, sie ist also exponentiell. Jedoch lässt sich
die Suchzeit einschränken, wenn man eine Eigenschaft der Assoziationsregeln berücksichtigt. Es
gilt nämlich, dass p(A = 1, B = 1)  ps, wenn p(A = 1)  ps oder p(B = 1)  ps.
Diesen Sachverhalt kann man nutzen, indem man zuerst nach individuellen Ereignissen sucht (z.B.
A = 1), die eine größere Wahrscheinlichkeit als ps haben. Dazu ist nur ein lineares Durchmustern
der Datenbasis erforderlich. Ein Ereignis bzw. eine Menge von Ereignissen heißt häufig, wenn seine
(ihre) Wahrscheinlichkeit größer als ps ist. Alle Paare von häufigen Ereignissen werden als
mögliche häufige Mengen der Größe 2 betrachtet. In dieser Weise kann man immer größere häufige
Mengen erzeugen. Beim Übergang von häufigen Mengen der Größe k – 1 zu Mengen der Größe k
kann man alle Mengen der Größe k entfernen, die eine Teilmenge der Größe k – 1 enthalten, die
ihrerseits nicht häufig auf Ebene k – 1 ist. Dieser Schritt ist möglich auf Grund der Produktregel der
Wahrscheinlichkeitstheorie.
Hat man nun eine Liste möglicher häufiger Mengen der Größe k bestimmt, dann wird für diese
mittels einer linearen Durchmusterung der Datenbasis ermittelt, welche davon wirklich häufig sind.
Danach werden die Mengen zu Mengen der Größe k + 1 kombiniert, es findet wieder ein PruningSchritt statt usw. bis keine häufigen Mengen mehr gebildet werden können. Schließlich ist noch ein
letzter Durchlauf durch die Datenbasis zu machen, bei dem geprüft wird, welche Kombinationen
häufiger Mengen – als Regeln betrachtet – auch die Schwellenwertbedingung für den Konfidenzwert erfüllen und diese werden als Assoziationsregeln ausgegeben.
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
Seite 15
Fragen
1. Nennen Sie einige statistische Methoden im Data Mining! Für welche Zwecke lassen sich die
Methoden einsetzen?
2. Was ist das Prinzip des fallbasierten Schließens und wie wird eine Lösung für einen neuen Fall
bestimmt?
3. Was benötigt ein Verfahren für die Erstellung eines Entscheidungsbaums als Voraussetzungen?
4. In welchen Schritten wird ein Entscheidungsbaum aufgebaut?
5. Wie ist ein mehrschichtiges Feed-forward-Netz aufgebaut?
6. Welche Struktur hat eine Einheit in einem Feed-forward-Netz?
7. Wie kann ein Neuronales Netz lernen?
8. Welche Operationen werden in einem Genetischen Algorithmus verwendet und in welchen
Schritten läuft der Algorithmus ab?
9. Was beschreibt eine Assoziationsregel und welche Form hat sie?
10. Was ist der Support-Wert und der Konfidenzwert einer Assoziationsregel?
11. Nennen Sie typische Aspekte eines Algorithmus zur Bestimmung von Assoziationsregeln!
12. Mit welcher Methode lässt sich bei der Suche nach Assoziationsregeln in einer Datenbank ihre
Zahl beschränken?
13. Wie bestimmt man aus einer häufigen Menge eine Assoziationsregel?
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
Seite 16
3. Entscheidungsbäume
3.1. Induktives Lernen
Die Konstruktion von Entscheidungsbäumen ist eine Form des Maschinellen Lernens, speziell des
induktiven Lernens, noch spezieller des überwachten Lernens. Bei dieser Form des Lernens
bekommt der Lerner eine Menge von Beispielen vorgelegt und soll daraus eine Funktion erlernen.
Die Beispiele haben die Form von Paaren (x, f(x)). x ist die Eingabe und f(x) die Ausgabe der zu
lernenden Funktion. Die reine induktive Inferenz (kurz Induktion) besteht aus der folgenden
Aufgabe: Bestimme auf Grund einer Menge von Beispielen von f eine Funktion h, genannt
Hypothese, die f approximiert.
Im Allgemeinen können viele Hypothesen aus Beispielen generiert werden. Wird einer Hypothese
gegenüber einer anderen der Vorzug gegeben, dann heißt dies ein Bias. Weil es fast immer eine
große Zahl möglicher konsistenter Hypothesen gibt, haben alle Lernalgorithmen einen irgendwie
gearteten Bias.
3.2.
Lernen von Entscheidungsbäumen
3.2.1. Entscheidungsbäume als Performanzelemente
Ein Entscheidungsbaum nimmt als Eingabe ein Objekt oder eine Situation, beschrieben durch eine
Menge von Eigenschaften und erzeugt als Ausgabe eine Ja-/Nein-Entscheidung. Ein innerer Knoten
eines Entscheidungsbaums entspricht einem Test auf den Wert einer der Eigenschaften und die nach
unten von dem Knoten wegführenden Kanten sind mit den möglichen Werten der Eigenschaft
markiert. Ein Blattknoten entspricht einem Booleschen Wert, der als Ergebnis ausgegeben wird,
wenn das Blatt erreicht wird.
Als ein Beispiel wird das Entscheidungsproblem betrachtet, ob man in einem Restaurant auf einen
freien Tisch warten soll, wenn alle Tische besetzt sind. Man möchte also eine Definition für das
Zielprädikat Warten in Form eines Entscheidungsbaums lernen. Zunächst müssen die Eigenschaften oder Attribute festgelegt werden, mit denen die Beispiele beschrieben werden. Die folgenden Attribute werden gewählt:
1.
2.
3.
4.
5.
6.
7.
8.
9.
Alternative: Gibt es in der Nähe ein geeignetes anderes Restaurant?
Bar: Gibt es in dem Restaurant eine komfortable Bar zum Warten?
Fr/Sa: Ist Freitag oder Samstag?
Hungrig: Bin ich hungrig?
Gäste: Wie viele Leute sind im Restaurant (keine, einige oder voll)?
Preis: In welchem Preissegment liegt das Restaurant (€, €€, €€€)?
Regen: Regnet es draußen?
Reservierung: Habe ich reserviert?
Typ: Um welche Art von Restaurant handelt es sich (Französisch, Italienisch, Chinesisch oder
Burger)?
10. Wartezeit: Welche voraussichtliche Wartezeit wird vom Restaurant geschätzt?
Ein Entscheidungsbaum für das Problem könnte z.B. der in Abbildung 3.1 dargestellte sein. Die
Attribute Preis und Typ sind darin nicht benutzt, weil sie angesichts der Datenlage irrelevant sind.
Der Baum kann in eine Menge von Implikationen (8 insgesamt) umgesetzt werden, die den Pfaden
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
Seite 17
von der Wurzel zu den mit Ja markierten Blättern entsprechen. Zum Beispiel ergibt der Pfad über
die Knoten Wartezeit und Hungrig die Implikation
r Gäste(r, Voll)  Wartezeit(r, 10-30)  Hungrig(r, Nein)  Warten(r)
Gäste?
Keine
Einige
Nein
Ja
Voll
Wartezeit?
>60
0-10
30-60
Nein
10-30
Alternative?
Nein
Ja
Reservierung?
Nein
Ja
Bar?
Ja
Nein
Ja
Nein
Ja
Hungrig?
Nein
Ja
Ja
Alternative?
Fr/Sa?
Nein
Nein
Ja
Ja
Nein
Ja
Ja
Ja
Regen?
Nein
Nein
Ja
Ja
Abbildung 3.1
3.2.2. Induktion von Entscheidungsbäumen aus Beispielen
Ein Beispiel wird durch die Werte der Attribute und den Wert des Zielprädikats beschrieben. Der
Wert des Zielprädikats heißt Klassifikation des Beispiels. Ist der Wert wahr für ein Beispiel, so
heißt dieses ein positives Beispiel, andernfalls ein negatives Beispiel. Die gesamte Menge der
Beispiele heißt Trainingsmenge. Tabelle 3.1 enthält die Beispiele für das Restaurant-Beispiel.
Beispiele Alternative
X1
Ja
X2
Ja
X3
Nein
X4
Ja
X5
Ja
X6
Nein
X7
Nein
X8
Nein
X9
Nein
X10
Ja
X11
Nein
X12
Ja
Bar
Nein
Nein
Ja
Nein
Nein
Ja
Ja
Nein
Ja
Ja
Nein
Ja
Fr/Sa Hungrig
Nein
Ja
Nein
Ja
Nein Nein
Ja
Ja
Ja
Nein
Nein
Ja
Nein Nein
Nein
Ja
Ja
Nein
Ja
Ja
Nein Nein
Ja
Ja
Attribute
Gäste Preis Regen Reservierung
Einige €€€ Nein
Ja
Voll
€
Nein Nein
Einige
€
Nein Nein
Voll
€
Nein Nein
Voll
€€€ Nein
Ja
Einige €€
Ja
Ja
Keine
€
Ja
Nein
Einige €€
Ja
Ja
Voll
€
Ja
Nein
Voll
€€€ Nein
Ja
Keine
€
Nein Nein
Voll
€
Nein Nein
Typ
Franz
Chin
Burger
Chin
Franz
Ital
Burger
Chin
Burger
Ital
Chin
Burger
Ziel
Warte- Warten
zeit
0-10
Ja
30-60 Nein
0-10
Ja
10-30
Ja
>60
Nein
0-10
Ja
0-10
Nein
0-10
Ja
>60
Nein
10-30 Nein
0-10
Nein
30-60
Ja
Tabelle 3.1
Bei der Erstellung eines Entscheidungsbaums aus Beispielen kommt es darauf an, ein Muster zu
extrahieren, das eine große Zahl von Fällen in knapper Form beschreibt. Der Entscheidungsbaum
muss vor allem eine knappe, aber informationsreiche Repräsentation von Fällen sein und er sollte
alle Trainingsbeispiele erfassen.
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
Seite 18
Ein Entscheidungsbaum repräsentiert eine einfache Hypothese, wenn er möglichst klein ist. Das
Problem, den kleinsten Entscheidungsbaum zu finden, ist nicht lösbar. Aber man kann versuchen
einen möglichst kleinen zu finden. Zu diesem Zweck geht der DECISION-TREE-LEARNING-Algorithmus so vor, dass er immer das wichtigste Attribut zuerst testet. Damit ist dasjenige Attribut
gemeint, nach dem sich die Beispiele am stärksten unterscheiden. Auf diese Weise wird versucht
eine korrekte Klassifikation mit einer kleinen Menge von Tests zu bekommen, wodurch die Pfade
im Entscheidungsbaum kurz werden und der Baum insgesamt klein wird.
function DECISION-TREE-LEARNING(Beispiele, Attribute, Default) returns einen Baum
inputs: Beispiele
eine Menge von Beispielen
Attribute
eine Menge von Attributen
Default
ein Default-Wert für das Zielprädikat
if Beispiele ist leer then return Default
else if alle Beispiele haben dieselbe Klassifikation then return die Klassifikation
else if Attribute ist leer then return MAJORITY-VALUE(Beispiele)
else
best  CHOOSE-ATTRIBUTE(Attribute, Beispiele)
Baum  ein neuer Entscheidungsbaum mit Wurzeltest best
for each Wert vi von best do
Beispielei  {Elemente von Beispiele mit best = vi}
subtree  DECISION-TREE-LEARNING(Beispielei, Attribute - best,
MAJORITY-VALUE(Beispiele))
füge einen Zweig zu Baum hinzu mit Marke vi und Teilbaum subtree
end
return Baum
Nachdem die erste Aufteilung der Testmenge durch das erste Attribut erfolgt ist, entstehen mehrere
neue Entscheidungsbaum-Lernprobleme mit weniger Beispielen und einem Attribut weniger. Die
Konstruktion des Entscheidungsbaums erfolgt also rekursiv. Vier Fälle sind dabei zu unterscheiden:
1. Wenn die Teilmenge einige positive und einige negative Beispiele enthält, dann wähle das beste
Attribut um sie weiter zu unterteilen.
2. Wenn alle Beispiele in der Teilmenge positiv sind (bzw. alle negativ), dann ist der Zweig des
Baums fertig. Man kann mit Ja (bzw. Nein) antworten.
3. Wenn die Teilmenge leer ist bedeutet dies, dass kein Beispiel mit der durch die bisher benutzten
Attribute beschriebenen Eigenschaften vorliegt. Es wird ein Defaultwert zurückgegeben, der auf
Grund der mehrheitlichen Klassifikation am Vorgängerknoten berechnet wird.
4. Wenn keine Attribute übrig sind aber die Teilmenge nicht leer ist und sowohl positive als auch
negative Beispiel enthält, bedeutet dies, dass diese Beispiele zwar verschiedene Klassifikation
haben, aber die gleichen Eigenschaften, zumindest so weit sie auf Grund der definierten Attribute beschreibbar sind. Dieser Fall tritt ein, wenn einige Daten falsch sind, d.h. wenn sie verrauscht sind, oder wenn die Attribute nicht genügend Information enthalten um die vorliegende
Situation zu beschreiben oder wenn die Domäne nicht deterministisch ist. In diesem Fall trifft
man eine Mehrheitsentscheidung.
Konstruiert man den Entscheidungsbaum für die Beispiele von Tabelle 3.1 nach dieser Vorschrift,
dann erhält man den Entscheidungsbaum von Abbildung 3.2.
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
Seite 19
Gäste?
Keine
Einige
Nein
Voll
Hungrig?
Ja
Ja
Nein
Typ?
Nein
Französisch
Italienisch
Burger
Chinesisch
Nein
Ja
Fr/Sa?
Nein
Nein
Ja
Ja
Ja
Abbildung 3.2
Die Diskrepanz zwischen dem Ausgangsbaum und dem Ergebnisbaum ist sicher auch der kleinen
Anzahl von Beispielen zuzuschreiben. Mit mehr Beispielen dürfte der Unterschied geringer ausfallen. Der Baum von Abbildung 3.2 ist auch keine sehr gute Hypothese, denn z.B. kommt der Fall,
dass ein Restaurant voll und die Wartezeit 0 – 10 Minuten beträgt, gar nicht vor. Im Fall von
Hunger sagt der Baum, dass nicht gewartet werden soll, aber wenn die Wartezeit höchstens 10
Minuten beträgt, wird man in der Regel warten. Diese Beobachtung führt zu der Frage nach der
Korrektheit der Hypothese.
3.2.3. Abschätzung der Performanz des Lernalgorithmus
Die Qualität eines Lernalgorithmus kann danach eingeschätzt werden, wie gut er neue, vorher nicht
betrachtete Beispiele klassifiziert. Dazu muss die Klassifikation dieser Beispiele aber vorab bekannt
sein. Die Menge der Beispiele, die für diesen Zweck verwendet werden, heißt Testmenge. Diese
Menge reserviert man üblicherweise von vornherein für den Test, ansonsten müsste man nach
neuen Beispielen suchen und deren Klassifikation bestimmen. Im Einzelnen geht man in folgenden
Schritten vor:
1. Sammle eine große Menge von Beispielen.
2. Unterteile die Menge in zwei disjunkte Teilmengen, die Trainingsmenge und die Testmenge.
3. Erzeuge mit dem Lernalgorithmus auf der Basis der Trainingsmenge eine Hypothese H.
4. Bestimme den Prozentsatz der Beispiele in der Testmenge, die durch H korrekt klassifiziert
werden.
5. Wiederhole die Schritte 1. bis 4. für verschieden große und zufällig ausgewählte Trainingsmengen.
Durch Anwendung dieser Schritte erhält man eine Menge von Daten, auf Grund derer die durchschnittliche Vorhersagequalität als eine Funktion der Größe der Trainingsmenge angegeben werden
kann. Diese Funktion ergibt in grafischer Form dargestellt die so genannte Lernkurve des Algorithmus auf der betrachteten Domäne. Abbildung 3.3 zeigt den ungefähren Verlauf der Lernkurve für
den Algorithmus DECISION-TREE-LEARNING auf der Restaurant-Domäne.
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
Seite 20
100
90
Korrekt- 80
heit auf
der
70
Testmenge 60
in %
50
40
0
20
40
60
80
100
Größe der Trainingsmenge
Abbildung 3.3
3.2.4. Praktischer Gebrauch des Entscheidungsbaum-Lernens
Gas-Öl-Trenner
BP brachte 1986 ein Expertensystem mit Namen GASOIL zum Einsatz. Sein Zweck war der Entwurf
von Gas-Öl-Trennanlagen für Offshore-Ölplattformen. Die Trennung von Gas und Öl erfordert ein
sehr großes, komplexes und teures Trennsystem, dessen Entwurf eine Anzahl von Attributen
betrifft, u.a. die relativen Anteile von Gas, Öl und Wasser, die Flussrate, den Druck, die Dichte, die
Viskosität und die Temperatur. GASOIL enthielt ungefähr 2500 Regeln. Der Bau eines solchen
Expertensystems von Hand erfordert ungefähr 10 Personen-Jahre. Statt dessen wurde ein Entscheidungsbaum-Lernverfahren auf eine Datenbasis von existierenden Entwürfen angewandt. Damit
wurde das Expertensystem in 100 Personen-Tagen entwickelt. Es soll besser sein als menschliche
Experten und viele Millionen Dollar eingespart haben.
Fliegen lernen im Flugsimulator
Sammut et al. entwickelten 1992 einen automatischen Piloten für eine Cessna. Die Beispieldaten
wurden durch Beobachtung von drei erfahrenen Piloten im Flugsimulator gewonnen. Jeder der
Piloten führte 30 Minuten lang einen vordefinierten Flugplan aus. Jedes Mal wenn ein Pilot eine
Steueraktion durchführte indem er eine Steuervariable setzte, z.B. Schub oder Flügelklappen, wurde
ein Beispiel erzeugt. Insgesamt wurden 90000 Beispiele erzeugt, jedes durch 20 Zustandsvariable
beschrieben und mit der durchgeführten Aktion markiert. Aus den Beispielen wurde mit Hilfe des
C4.5-Algorithmus ein Entscheidungsbaum erzeugt. Der Baum wurde in ein C-Programm umgesetzt
und dieses in die Steuerschleife des Flugsimulators integriert, so dass das Programm das Flugzeug
selbst fliegen konnte.
Die Ergebnisse waren überraschend. Das Programm konnte nicht nur fliegen, sondern sogar besser
fliegen als die menschlichen Lehrer. Der Grund dafür ist, dass beim Lernen gelegentliche Fehler der
einzelnen Menschen durch Verallgemeinerung ausgeglichen wurden. Das deutet an, dass für
schwierige Aufgaben wie das Fliegen von Hubschraubern, die schwere Lasten bei starkem Wind
tragen, mit den Methoden des Maschinellen Lernens Autopiloten entwickelt werden könnten. Bis
jetzt gibt es solche nicht und es gibt auch nur wenige menschliche Piloten dafür.
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
3.3.
Seite 21
Die Verwendung der Informationstheorie
3.3.1. Das Prinzip des Informationsgewinns
Zur Implementierung der CHOOSE-ATTRIBUTE-Funktion benötigt man ein Maß für gute und unnütze
Attribute. Dieses Maß muss seinen größten Wert für perfekte Attribute und seinen kleinsten Wert
für völlig wertlose Attribute haben. Ein solches Maß ist der erwartete Gehalt an Information, der
von einem Attribut geliefert wird. Der Begriff Information ist dabei im Sinne der Shannonschen
Informationstheorie zu verstehen. Eine Information in diesem Sinn ist eine Antwort auf eine Frage.
Wenn man eine auf die Frage schon relativ gut zutreffende Vermutung hat, dann ist die Antwort
weniger informativ als wenn man überhaupt nichts weiß.
In der Informationstheorie wird der Gehalt einer Information in Bits gemessen. Ein Bit Information
genügt um eine Ja/Nein-Frage zu beantworten, über deren Antwort man keinerlei Vorstellung hat,
wie dem Fall einer Münze. Wenn die möglichen Antworten vi auf die Frage die Wahrscheinlichkeiten P(vi) haben, dann ist der Informationsgehalt I der tatsächlichen Antwort definiert durch
n
I ( P(vi ),..., P(vn ))    P(vi ) log 2 P(vi )
i 1
Dies ist der durchschnittliche Informationsgehalt der verschiedenen Antworten (die  log 2 P -Ausdrücke), gewichtet mit den Wahrscheinlichkeiten der Antworten.
Beim Entscheidungsbaum-Lernen ist die zu beantwortende Frage: Was ist die korrekte Klassifikation für ein gegebenes Beispiel? Ein korrekter Entscheidungsbaum liefert die Antwort. Eine Schätzung der Wahrscheinlichkeiten der möglichen Antworten vor dem Test der Attribute ist durch das
Verhältnis der positiven und negativen Beispiele in der Trainingsmenge gegeben. Angenommen,
die Trainingsmenge enthalte p positive und n negative Beispiele. Dann wird der Informationsgehalt
einer korrekten Antwort wie folgt abgeschätzt:
 p
n 
p
p
n
n
  
I 
,
log 2

log 2
pn
pn pn
pn
 pn pn
Der Test eines einzelnen Attributs gibt im Allgemeinen nicht so viel Information, aber immerhin
einen Teil davon. Das Maß an Information, das ein Attribut liefert, wird daran gemessen, wie viel
Information nach dem Attributtest für eine korrekte Antwort noch benötigt wird. Jedes Attribut A
unterteilt die Trainingsmenge E in die Teilmengen E1, ..., Ev, entsprechend ihren Werten für A,
wobei angenommen ist, dass A v verschiedene Werte haben kann. Jede Teilmenge Ei enthält pi
positive und ni negative Beispiele. Wenn man also auf dem i-ten Zweig des Baums fortfährt,
benötigt man zusätzlich I ( pi ( pi  ni ) , ni ( pi  ni )) Bits an Information um die Frage zu beantworten. Ein zufällig ausgewähltes Beispiel hat mit der Wahrscheinlichkeit ( pi  ni ) ( p  n) den iten Wert des Attributs, deshalb benötigt man im Durchschnitt nach dem Test des Attributs A
v
Rest ( A)  
i 1
pi  ni  pi
ni
 I 
,
p  n  pi  ni pi  ni



Bits an Information um das Beispiel zu klassifizieren. Der Informationsgewinn aus dem Attributtest ist definiert durch die Differenz zwischen dem ursprünglichen Informationsbedarf und dem
neuen Informationsbedarf:
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
Seite 22
 p
n 
  Re st ( A)
Gain( A)  I 
,
 pn pn
Die Heuristik, die in der CHOOSE-ATTRIBUTE-Funktion benutzt wird, ist das Attribut mit dem größten Informationsgewinn zu wählen.
3.3.2. Rauschen und Overfitting
Wenn es bei einem Lernproblem eine große Menge möglicher Hypothesen gibt, besteht die Gefahr,
dass man beim Lernen bedeutungslose Regelmäßigkeiten in den Daten entdeckt. Dieses Problem
heißt Overfitting. Es ist ein sehr allgemeines Phänomen und kann in allen möglichen Lernverfahren vorkommen, nicht nur bei Entscheidungsbäumen.
Eine einfache Technik zur Vermeidung des Overfitting ist das Pruning. Durch das Pruning wird
verhindert, dass Attribute für die Aufteilung einer Menge verwendet werden, die nicht wirklich
relevant sind, selbst wenn die Beispiele an diesem Knoten nicht uniform klassifiziert sind. Die
Frage ist, wie irrelevante Attribute entdeckt werden. Der Informationsgewinn bietet dafür eine
Möglichkeit. Angenommen man teilt eine Menge von Beispielen mit einem irrelevanten Attribut
auf. Die entstehenden Teilmengen haben dann in der Regel etwa dieselbe Verteilung von positiven
und negativen Beispielen wie die ursprüngliche Menge. Dann ist der Informationsgewinn annähernd Null. Damit stellt sich umgekehrt die Frage, ab welchem Informationsgewinn es sich lohnt,
ein Attribut zur Aufteilung der Beispielmenge zu verwenden.
Mit dieser Frage beschäftigen sich statistische Signifikanztests. Ein Signifikanztest beginnt mit der
Annahme, es gebe in den vorliegenden Beispielen kein zugrunde liegendes Muster (so genannte
Nullhypothese). Dann werden die Daten analysiert um festzustellen, wie weit sie vom vollständigen Fehlen eines Musters abweichen. Wenn der Grad der Abweichung statistisch unwahrscheinlich
ist, dann besteht beträchtliche Evidenz für das Vorliegen eines signifikanten Musters in den Daten.
Im Fall der Entscheidungsbäume ist die Nullhypothese, dass das gerade betrachtete Attribut irrelevant ist und damit der Informationsgewinn für eine unendlich große Menge von Beispielen Null.
Nun muss die Wahrscheinlichkeit dafür berechnet werden, dass unter Annahme der Nullhypothese
eine Beispielmenge der Größe v die beobachtete Abweichung von der erwarteten Verteilung der
positiven und negativen Beispiele zeigt. Die Abweichung kann man messen, indem man die tatsächlichen Anzahlen positiver und negativer Beispiele in jeder Teilmenge, also pi und ni, mit den
erwarteten Zahlen p̂ i und n̂i vergleicht, wobei man vollständige Irrelevanz voraussetzt:
pˆ i  p 
p i  ni
pn
nˆ i  n 
p i  ni
pn
Ein Maß für die Gesamtabweichung ist definiert durch
( pi  pˆ i ) 2 (ni  nˆ i ) 2
D

pˆ i
nˆ i
i 1
v
Unter der Nullhypothese ist der Wert von D entsprechend der 2-Verteilung mit v – 1 Freiheitsgraden verteilt. Mit Hilfe von 2-Tabellen oder statistischer Software kann dann berechnet werden mit
welcher Wahrscheinlichkeit ein Attribut wirklich irrelevant ist.
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
Seite 23
Pruning hat auch Vorteile, wenn Daten verrauscht sind. Bei stark verrauschten Daten liefern Bäume
mit Pruning bessere Ergebnisse als solche ohne Pruning. Bäume mit Pruning sind meist wesentlich
kompakter und deshalb auch besser zu verstehen.
3.3.3. Erweiterung der Anwendbarkeit von Entscheidungsbäumen
Um den Einsatzbereich des Entscheidungsbaum-Lernens zu erweitern muss man Maßnahmen ergreifen um fehlende Daten zu ergänzen und um Attribute mit besonderen Eigenschaften verwendbar
zu machen.

Fehlende Daten In vielen Anwendungsbereichen sind nicht alle Attributwerte für jedes Beispiel
bekannt. Das kann daran liegen, dass sie nicht erfasst wurden oder dass es zu aufwändig ist sie
zu ermitteln. Hier sind zwei Probleme zu lösen: 1. Wie modifiziert man die Konstruktion des
Entscheidungsbaums, insbesondere die Definition des Informationsgewinns, wenn bei einigen
Beispielen Attributwerte fehlen? 2. Wie klassifiziert man ein neues Beispiel mit einem bestehenden Entscheidungsbaum, wenn eines der Testattribute nicht anwendbar ist?

Attribute mit vielen Werten Ist die Zahl der Werte eines Attributs sehr hoch, dann kann der
Extremfall eintreten, dass das Attribut für jedes Beispiel einen eigenen Wert hat und damit
lauter einelementige Mengen entstehen. Der Informationsgewinn hätte dann für dieses Attribut
den höchsten Wert. Trotzdem wäre das Attribut irrelevant oder nutzlos. Um solche Attribute zu
behandeln kann man den Gain Ratio verwenden.
Ein Beispiel für ein solches extremes Attribut im Restaurant-Beispiel wäre der Name des
Restaurants. Er liefert, zumindest innerhalb eines bestimmten geografischen Bereichs, lauter einelementige Teilmengen.

Attribute mit kontinuierlichen Werten Manche Attribute haben kontinuierliche Wertebereiche, z.B. Attribute wie Größe oder Gewicht. Um sie für das Entscheidungsbaum-Lernen verwendbar zu machen diskretisiert man üblicherweise die Wertebereiche. Das wird meistens von
Hand gemacht. Eine bessere Methode ist, die Attribute im Rahmen des Lernprozesses vorab zu
behandeln um herauszufinden, welche Unterteilung des Wertebereichs die nützlichste Information für die Zwecke der Klassifikation liefert.
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Data Mining
Seite 24
Fragen
1. Was ist beim induktiven Lernen die Eingabe und was wird gelernt?
2. Was ist bei einem Entscheidungsbaum die Ein- und die Ausgabe und womit sind die Knoten
und Kanten des Baums beschriftet?
3. Was ist die Trainingsmenge für das Erzeugen eines Entscheidungsbaums?
4. Wie ist ein Beispiel für die Eingabe in einen Entscheidungsbaum aufgebaut?
5. Welche Eigenschaften sollte ein „guter“ Entscheidungsbaum haben?
6. Skizzieren Sie die Vorgehensweise des Decision-Tree-Learning-Algorithmus!
7. Was kann man tun, wenn bei der Entscheidungsbaumkonstruktion die Menge der Beispiele leer
wird und was, wenn die Menge der Attribute leer wird?
8. Wie kann man die Qualität (Performanz) eines Entscheidungsbaums oder allgemein einer
Hypothese abschätzen?
9. Was ist ein Maß für gute oder nützliche Attribute bei der Entscheidungsbaumkonstruktion?
10. Wie berechnet man den Informationsgehalt einer Antwort auf eine Frage?
11. Wie lässt sich der Informationsgewinn aus einem Attributtest berechnen?
12. Was ist Overfitting und wie kann man es vermeiden?
13. Wie kann man Entscheidungsbäume konstruieren, wenn die Attribute der Beispiele
kontinuierliche Wertebereiche haben?
Berufsakademie Mannheim
Februar 2002
Prof. Dr. Werner Dilger
Herunterladen