PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
In der Mess- und Prüftechnik
PD Stefan Bosse
Universität Bremen - FB Mathematik und Informatik
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
Zielvariablen: Kategorische Variablen
Eigenschaftsvariablen: Kategorische und Numerische Variablen
Modell: Gerichteter azyklischer Graph (Baumstruktur)
Training und Algorithmen: C4.5, ID3, INN
Klasse: Überwachtes Lernen
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
Ein Entscheidungsbaum ist ein gerichteter azyklischer Graph bestehend aus einer Menge von Knoten N die mit den Eingabevariablen x verknüpft sind und Kanten E die die Knoten verbinden
Die Endknoten sind Blätter und enthalten Werte der Zielvariablen y(daher kann y nur eine kategorische Variable sein, oder eine intervallkategorisierte)
Die Kanten bestimmen die Evaluierung des Entscheidungsbaum beginnend von dem Wurzelknoten bis zu einem Blattknoten
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
M(X):X→Y,X={xi},Y={yj}DT=⟨Nx,Ny,E⟩Nx={ni:ni↔xj},Ny={ni:ni↔val(yj)}E={eij:ni↦nj|ϵij}
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
M(X)=⎧⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎨⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎩xi=v1,⎧⎪⎨⎪⎩xj=v1,val(yi)xj=v2,val(yi)xj=v3,{..xi=v2,⎧⎪⎨⎪⎩xk=v1,{..xk=v2,{..xk=v3,{..xi=v3,⎧⎪⎨⎪⎩xl=v1,{..xl=v2,{..xl=v3,{..
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
Man unterscheidet:
Binäre Bäume. Jeder Knoten hat genau (oder maximal) zwei ausgehende Kanten (Verzweigungen). Der Test der Variable x kann daher nur x < v, x > v, x ≥ v, oder x ≤ v sein! Wird vor allem bei numerischen Variablen eingesetzt.
Bereichs- und Mehrfachbäume. Jeder Knoten hat 1..k ausgehende Kanten (Knotengrad k). Der Test der Variable x kann auf einen bestimmten Wert x ∈ V oder auf ein Intervall [a,b] erfolgen! Wird vor allem bei kategorischen Variablen eingesetzt.
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
Grundlegende Struktur eines Entscheidungbaumes
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
Das Training mit Trainingsdaten Dtrain erzeugt den Baum schrittweise:
Die Auswahl der Variablen und die Verzweigungsbedingungen können je nach Algorithmus und Baumklasse variieren!
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
10 Schrittweise Erzeugung des Entscheidungsbaums aus den Eingabedaten (a) erst mit einer Variable (b,c), dann mit zwei (d) unter Beachtung des Klassifikationsfehlers
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
Jeder Knoten in einem binären Baum stellt eine lineare Separation des Eingabedatenraums dar.
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
14 k-stelliger Entscheidungsbaum für kategorische Variablen
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
15 (Links) Entscheidungsbaum für die Vorhersage von Reibungskoeffizienten von Materialien auf der Grundlage von sechs grundlegenden Materialmerkmalen (Rechts) Vergleich der vorhergesagten und experimentellen Reibungskoeffizienten
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
[1] J. R. Quinlan, “Induction of Decision Trees,” in Machine Learning, Kluwer Academic Publishers, Boston, 1986.
E(X)=−∑i=1,kpilog2(pi),pi=count(ci,X)N,X={c|c∈C}
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
G(Y|X)=E(Y)−∑v∈Val(X)|Yv||Y|E(Yv)
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
0. Starte mit leeren Baum, allen Eingansattributen X, der Zielvariablen Y, und der vollständigen Datentabelle D(X,Y).1. Berechne den Informationsgewinn für jede Attributevariable x ∈ X.2. Wenn nicht alle Zeilen zum selben Zielvariablenwert gehören, wird der Datensatz D in Teilmengen D'xbest,v1, D'xbest,v2, usw. aufgeteilt für das Attribut xbest ∈ X mit dem größten Informationsgewinn.3. Es wird ein Knoten mit der Attributevariable xbest erstellt.4. Wenn alle Zeilen zur selben Klasse gehören, wird ein Blattknoten mit dem Wert der Zielvariable erstellt.5. Wiederholung von 1-4 für die verbleibenden Attribute X'=X / xbest, allen Teilbäumen (Verzweigungen von aktuellen Knoten) mit jeweiligen D', bis alle Attribute verwendet wurden, oder der Entscheidungsbaum alle Blattknoten enthält.
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
[1] J. R. Quinlan, "C4.5: Programs For Machine Learning". Morgan Kaufmann, 1988.
Aber C4.5 verwendet die Methode der "gain ratio impurity", um das Teilungsattribut zu bewerten (Quinlan, 1993).
Entscheidungsbäume werden in C4.5 mithilfe eines Satzes von Trainingsdaten oder Datensätzen wie in ID3 erstellt.
An jedem Knoten des Baums wählt C4.5 ein Attribut der Daten aus, das seinen Satz von Samples am effektivsten in Teilmengen aufteilt, die in der einen oder anderen Klasse verteilt sind.
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
G(Y|X)=E(Y)−∑v∈Val(X)|Yv||Y|E(Yv)SI(Y)=∑c∈Val(Y)−|Yc||Y|log2|Yc||Y|GR=G(Y|X)SI(Y)
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
Bei kategorischen Variablen bestimmen die Werte Val(X) einer Spalte der Datentabelle einer Variablen x die Aufteilung eines Entscheidungbaums (Partitionierung).
Bei nuemrischen Variablen muss ein Wert als Teilungspunkt aus der Werteverteilung bestimmt!
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
Vertiefung
L. Rokach and O. Maimon, Data Mining with Decision Trees - Theory and Applications. World Scientific Publishing, 2015.
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
Einteilung von kontinuierlichen Werteverteilungen in Intervall und Abbildung auf kategorische (diskrete) Werte
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
Es kommt vor allem in der Soziologie aber auch in der Mess- und Prüftechnik vor, dass nicht alle Werte der Attributvariablen X für alle Trainingssätze bekannt sind.
Es gibt keine Universallösung für den Umgang mit ? Werten. Möglichkeiten:
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
Bisherige Entscheidungsbäume (C4.5/ID3) wurden entweder mit einer diskreten Anzahl von kategorischen Werten verzweigt oder mittels binärer Relationen!
Aber Sensoren (sowohl in der Mess-und Prüftechnik als auch ind er Soziologie) sind fehlerbehaftet, d.h. es gibt bei jedem x-Wert ein Unsicherheitsintervall [x-δ,x+δ] → Rauschen
Damit können Entscheidngsbäume (anders als Neuronale Netze oder Regressionslerner) nicht umgehen.
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
M(X)=⎧⎪ ⎪ ⎪ ⎪⎨⎪ ⎪ ⎪ ⎪⎩xi∈[v1−εi,v1+εi],{⋯xi∈[v1−εi,v1+εi],{⋯⋯xi∈[vn−ε,vn+εi],{⋯
Vergleich der verschiedenen Baumarten und Knotenverzweigungen
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
Bei der Konstruktion des Entscheidungsbaums werden wieder nach Informationsgewinn bzw. Gewinnverhältnis Attributvariablen und Spalten der Datentabelle ausgewählt.
Die numerischen Werte werden sowohl beim Training als auch bei der Inferenz durch Intervalle ersetzt → Ersetzung von diskreter mit Intervallarithmetik
Entropien usw. werden durch kategorisierte Intervalle bestimmt
Das große Problem: Für jede Variable muss ein ε abgeschätzt werden → Statistisches Modell erforderlich.
Und was bedeuten jetzt überschneidende Intervalle?
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
Jeder Knoten xi hat ausgehende Kanten mit annotierten Intervallen [vj-ε,vj+ε]
Bei einem neuen zu testenden Variablenwert v wird einseits auch ein Intervall [v-ε,v+ε] gebildet und mit den Kantenintervallen verglichen, andererseits wird das nächstliegende Intervall gesucht
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
Abhishek Sharma, 2020, www.analyticsvidhya.com Grundprinzip von Multibaumklassifikatoren
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
PD Stefan Bosse - Maschinelles Lernen und Datenanalyse - Modul D: Klassifikation mit Entscheidungsbäumen
Entscheidungsbäume sind für die Klassifikation von kategorischen Zielvariablen geeignet
Numerische Zielvariablen müssen intervallkodiert werden.
ID3/C4.5 Lerner können numerische und kategorische Eingabevariablen (Attribute) verwenden
Rauschen auf Sensordaten muss durch "Unsicherheitsintervall" und Intervallarithmetik behandelt werden
Vergleich mit anderen Lernverfahren zeigt gute Ergebnisse (je nach Problem)