Entscheidungsbäume Teil 1 (Kap. 3)

Werbung
Maschinelles Lernen
Entscheidungsbäume Teil 1
(Mitchell Kap. 3)
Beispiel
Nationalitäten:
Beispiel
Behandlung bei Artikulationsstörungen
Beispiel
Tage, um Sport zu treiben
Motivation
• Versuche Abfolge von Tests oder
Bedingungen zu automatisieren
• Für Aufgaben, denen irgendwie
abstrahierbare Regeln zugrunde liegen
• Zur Repräsentation komplexer
Abhängigkeiten
• Disjunktion von Konjunktionen
Eigenschaften
• Probleme erlauben Attribut-WertDarstellung
• Zielfunktion muß diskret sein
• Disjunktive Beschreibung
• Fehlerhafte Trainingsdaten möglich
• Unvollständige Trainingsdaten möglich
• Typischerweise Klassifikationsprobleme
Typische Anwendungen
• Medizinische Diagnosen
• Analyse des Kreditrisikos
• Raumbelegungspläne etc.
Naive Beschreibung
• Interne Knoten = Überprüfen eines
Attributs
• Verzweigung nach Anzahl der möglichen
Werte
• Blätter: Ergebnis = Klassifikation
• Pfad durch den Baum =
Entscheidungsprozess, für jedes Objekt
gibt es genau einen Pfad von der Wurzel
zu einem Blatt
Baum
• Definition: <K,bK X K> ist ein Baum mit
Knoten K und Kanten b gdw.
– Es gibt genau ein w  K, so dass kK: <k,w> b
(w heißt Wurzel)
– Es gibt B  K mit : bB(kK: <b,k>b) (B sind
die Blätter)
– Für kK mit k ≠ w und k B: ki,kl K: <ki,k> b und
<k,kl> b (das sind zusammen mit w die internen
Knoten)
– Für jeden Pfad <w= ki0,ki1, ki2, ki3,..., kin> (0≤r<n:
<kir,kir+1> b) gilt:  kir, kis: kir ≠ kis (keine Zyklen!)
Entscheidungsbaum
• Sei zusätzlich
– A = {a1, a2, a3,..., aj} Menge von Attributen mit
möglichen Attributwerten V = {va11, va12, ...,vaj1, ..., vajn}
– C = {c1, c2, c3,..., cm} Menge von Zielkonzepten
• Ein Entscheidungsbaum ist ein Baum, bei dem
– jeder interne Knoten mit einem Attribut gelabelt ist (k
= <k,ai>) und
– jede Kante mit einem entsprechenden Attributwert (b
= < <km,ai>,vair,<kn,al>> und vair ist möglicher Wert von
ai) ,
– jedes Blatt ist mit einer Klasse c gelabelt (k = <k,ci>)
Zwischenfragen
• Welche Tiefe hat ein Entscheidungsbaum?
– Minimal? Maximal?
• Wieviele Knoten hat ein
Entscheidungsbaum maximal?
• Gibt es Zielfunktionen, die nicht als
Entscheidungsbaum dargestellt werden
können?
Grundidee zur Konstruktion
• Prinzip von ID3 (Quinlan 1986)
• Top-down Suche (greedy) durch die
Menge aller möglichen
Entscheidungsbäume
• Problem: welches Attribut soll als
erstes/nächstes überprüft werden?
– Dasjenige, das die beste Einschränkung
bringt!
Top-down Induktion von
Entscheidungsbäumen (ID3)
• Hauptschleife:
– Wähle bestes Entscheidungsattribut ai als Label für
nächsten Knoten k
– Generiere für jeden möglichen Wert vl von ai
Tochterknoten kn von k und Kanten, die mit vl gelabelt
sind
– Verteile alle Trainingsbeispiele auf die Blätter
– Wenn sich eine korrekte Aufteilung aller
Trainingsbeispiele ergibt, labele die Blätter mit C,
andernfalls führe Schleife für jeden neuen Knoten aus
Auswahl der Attribute
• Wann ist ein Attribut nützlich?
– Wenn es wenige Objekte, aber die eindeutig
klassifiziert?
– Wenn es die Inputmenge möglichst
gleichmäßig splittet?
• Betrachte Maße aus der InformationsTheorie: „Information Gain“
Entropie
• Entropie ≈ Maß für die Homogenität oder
Reinheit einer Menge
• Entropie = Anzahl der Bits, die für die
Kodierung bestimmter Information minimal
benötigt wird
Entropie
• Sei:
– T Menge von Trainingsdaten
– p+ sei der Anteil der positiven Beispiele in T
– p- sei der Anteil der negativen Beispiele in T
– Entropie(T) = -p+ log2(p+) – p-log2p– im allgemeinen Fall:
• Entropie(T) = ∑cC –pclog2(pc)
– Annahme: 0*log2(0) = 0
Entropie: Beispiele
• Angenommen alle Beispiele sind positiv:
Entropie: Beispiele
• T1: alle Beispiele sind positiv:
– p+ = 1 und p- = 0
– Entropie(T1) = -1(log21) – 0(log20) = 0
• T1: alle Beispiele sind negativ:
Entropie: Beispiele
• T1: alle Beispiele sind positiv:
– p+ = 1 und p- = 0
– Entropie(T1) = -1(log21) – 0(log20) = 0
• T2: alle Beispiele sind negativ:
– p+ = 0 und p- = 1
– Entropie(T2) = -0(log20) – 1(log21) = 0
• T3: die Hälfte ist positiv und die Hälfte ist
negativ:
– p+ = 0.5 und p- = 0.5
Entropie: Beispiele
• T1: alle Beispiele sind positiv:
– p+ = 1 und p- = 0
– Entropie(T1) = -1(log21) – 0(log20) = 0
• T2: alle Beispiele sind negativ:
– p+ = 0 und p- = 1
– Entropie(T2) = -0(log20) – 1(log21) = 0
• T3: die Hälfte ist positiv und die Hälfte ist negativ:
– p+ = 0.5 und p- = 0.5
– Entropie(T3) = -0.5(log20.5) – 0.5(log20.5) = -log2(0.5) = 1
• T4: ¼ ist positiv, der Rest ist negativ
– p+ = 0.25 und p- = 0.75
Entropie: Beispiele
• T1: alle Beispiele sind positiv:
– p+ = 1 und p- = 0
– Entropie(T1) = -1(log21) – 0(log20) = 0
• T2: alle Beispiele sind negativ:
– p+ = 0 und p- = 1
– Entropie(T2) = -0(log20) – 1(log21) = 0
• T3: die Hälfte ist positiv und die Hälfte ist negativ:
– p+ = 0.5 und p- = 0.5
– Entropie(T3) = -0.5(log20.5) – 0.5(log20.5) = -log2(0.5) = 1
• T4: ¼ ist positiv, der Rest ist negativ
– p+ = 0.25 und p- = 0.75
– Entropie(T4) = -0.25(log20.25) – 0.75(log20.75) = 0.811...
Entropie
• Werteverteilung
Information Gain
• Idee: betrachte den Unterschied in der
Entropie von T, wenn nach einem Attribut
ai sortiert wird:
• GAIN(T,ai):
– Entropie(T) - ∑v von ai(|Tv|/|T| * Entropie(Tv))
• Das beste Attribut für einen Knoten ist
dasjenige, das den höchsten Information
Gain erzielt!
Konstruktion
Beispiel
Beispiel
Beispiel
Grundannahmen
• Welche Grundannahmen wurden
gemacht?
Grundannahmen
• Welche Grundannahmen wurden
gemacht?
– Bzgl. Hypothesenraum: keine!
Grundannahmen
• Welche Grundannahmen wurden
gemacht?
– Bzgl. Hypothesenraum: keine!
– Bzgl. Struktur des entstehenden Baums?
Grundannahmen
• Welche Grundannahmen wurden
gemacht?
– Bzgl. Hypothesenraum: keine!
– Bzgl. Struktur des entstehenden Baums?
• Präferenz für möglichst flache Bäume
• Präferenz für Bäume, bei denen die spezifischsten
Attribute möglichst nahe bei der Wurzel
angesiedelt sind
• Warum möglichst flache Bäume?
Zusammenfassung
• Hypothesenraum unbeschränkt, d.h. Zielfunktion
ist mit Sicherheit im Hypothesenraum enthalten
• Lediglich Präferenz bei der Konstruktion des
Baumes
• Betrachtet immer gesamte Trainingsmenge
– Toleranz gegenüber fehlerhaften Beispielen möglich
(akzeptiere auch Knoten als Blätter, die nicht
ausschließlich die Zielmenge enthalten)
• Keine Beschreibung der gesamten
Lösungsmenge
• Keine Gewähr, dass der minimale Baum
gefunden wird, nur lokal minimal!
Aufgaben
• Berechnen Sie bitte Entropie und
Information Gain für folgendes Beispiel.
Was sollte also sinnvoller Weise als TopKnoten gewählt werden?
Aufgaben
• Lösen Sie bitte Aufgabe 3.1 und 3.2 aus
dem Buch von Mitchell (S. 77/78)
• Erstellen Sie bitte für das Beispiel von
letzter Woche einen Entscheidungsbaum
nach dem vorgestellten Basis-Algorithmus
Aufgaben (Mitchell)
•
(3.1.) Geben Sie Entscheidungsbäume an, die die
folgenden booleschen Funktionen repräsentieren:
1.
2.
3.
4.
•
A and non B
A or (B and C)
A xor B
(A and B) or (C and D)
(3.2) Trainingsbeispiel: nächste Seite
1.
2.
Was ist die Entropie des Trainingsbeispiels im Hinblick auf
die Zielfunktion?
Was ist der Information Gain von a2 für diese
Trainingsbeispiele?
Trainingsbeispiel 3.2
Instanz
Klassifikation
a1
a2
1
+
T
T
2
+
T
T
3
-
T
F
4
+
F
F
5
-
F
T
6
-
F
T
Herunterladen