Maschinelles Lernen und Datenanalyse

In der Mess- und Prüftechnik

PD Stefan Bosse

Universität Bremen - FB Mathematik und Informatik / AG 0

Universität Siegen - FB Maschinenbau / LMW

1 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen ::

Klassifikation und Regression mit Entscheidungsbäumen

Zielvariablen: Primär Kategorische Variablen; Sekundär Numerische Variablen

Eigenschaftsvariablen: Kategorische und Numerische Variablen

Modell: Gerichteter azyklischer Graph (Baumstruktur)

Training und Algorithmen: C4.5, ID3, C5.0, ICE, CART, RF

Klasse: Überwachtes Lernen

2 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Entscheidungsbäume

Entscheidungsbäume

  • 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

    • Jede Kante hat eine Evaluierungsbedingung ε(x) der Variable des ausgehenden Knotens x

Ein Entscheidungsbaum besteht aus Regeln. Jeder Knoten kann als eine Evaluierungsregel aufgefasst werden.

3 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Entscheidungsbäume

  • Zusammengefasst ausgedrückt:

M(X):XY,X={xi},Y={yj}DT=Nx,Ny,ENx={ni:nixj},Ny={ni:nival(yj)}E={eij:ninj|ϵij} 

4 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Entscheidungsbäume

  • Entscheidungsbäume können neben einem Graphen auch funktional dargestellt werden:

M(X)=⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪xi=v1,xj=v1,val(y)xj=v2,val(y)xj=v3,{..xi=v2,xk=v1,{..xk=v2,{..xk=v3,{..xi=v3,xl=v1,{..xl=v2,{..xl=v3,{..

5 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Entscheidungsbäume

Baumklassen

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, xv, oder xv 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 xV oder auf ein Intervall [a,b] erfolgen! Wird vor allem bei kategorischen Variablen eingesetzt.

6 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Entscheidungsbäume

Baumstruktur

Grundlegende Struktur eines Entscheidungbaumes

7 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Entscheidungsbäume

Vorteile
⊕ Entscheidungsbäume sind einfach aufgebaut und können mit einfachen Algorithmen erzeugt werden.
⊕ Entscheidungsbäume als inferiertes Modell erlauben eine Erklärbarkeit des Modells, also die Antwort auf die Frage wie sich ein y aus einem x ergibt.
⊕ Weiterhin ist eine Ableitung eines inversen Problems möglich, d.h. welche Werte x für gegebenes y sind möglich?
8 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Entscheidungsbäume

Nachteile
⊗ Entscheidungsbäume können schnell spezialisieren, d.h. es fehlt an Generalisierung.
⊗ Theoretisch kann mit einem Entscheidungsbaum jede Trainingsdatentabelle mit einer Trefferquote von 100% abgebildet werden. Der Test mit nicht trainierten Daten ergibt aber Prädiktion in der Größenordnung der Ratewahrscheinlichkeit!
9 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Entscheidungsbäume

Bevor man das Training start, insbesondere bei mehrschrittigen Verfahren, kann es hilfreich sein den Fehler für die "Ratewahrscheinlichkeit" gemäß der im Training benutzten Fehlerfunktion (loss) zu berechnen.

Beispiel Regression:

use math
x=[1,2,3,4,5,6,7,8]
y=[1,2,3,4,5,6,7,8]
y.median = fivenum(y)$median
loss2 = sqrt(mean((y-y.median)^2))
>> 2.29

Solange beim oder nach dem Training der fehler/Verlust nicht nennenswert kleiner (mindestens 1/2, besser 1/10) ist kann ist das Modell nicht brauchbar (bei Regressionsmodellen spricht man auch von der Todeslinie wenn das Modell konstant ungefähr den Median ausgibt).

10 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Training

Training

  • Das Training mit Trainingsdaten Dtrain erzeugt den Baum schrittweise:

    • Es werden geeignete Variablen xX ausgewählt die einen Knoten im Baum erzeugen
    • Jeder hinzugefügte Knoten erzeugt neue Teilbäume (durch Verzweigungen)
    • Die Verzweigungsbedingungen ε (Kanten) werden ebenfalls vom Trainer anhand der Werte der Variable x in Abhängigkeit von der Zielvariablen y gewählt/berechnet.
  • Die Auswahl der Variablen und die Verzweigungsbedingungen können je nach Algorithmus und Baumklasse variieren!

11 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Training

Beispiel

10 Schrittweise Erzeugung des Entscheidungsbaums aus den Eingabedaten (a) erst mit einer Variable (b,c), dann mit zwei (d) unter Beachtung des Klassifikationsfehlers

12 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Training

Jeder Knoten in einem binären Baum stellt eine lineare Separation des Eingabedatenraums dar.

Probleme bei Mehrbereichsbäumen

  • Wenn die Wertemenge val(x) groß ist gibt es entsprechend auch viele Verzweigungen im Baum!
    • Die Größe des Baums wächst an (Speicher)
    • Die Rechenzeit für das Training (Induktion) aber auch die Anwendung (Inferenz, Deduktion) wächst
    • Die Entropie kann als Maß der Varianz der Wertemenge gesehen werden.
13 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Training

Das "NP" Problembeispiel

14 k-stelliger Entscheidungsbaum für kategorische Variablen

14 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Training

Das Titanic Überlebensbeispiel

www.statistik-dresden.de Binärer Entscheidungsbaum (Relation und Auswahl) für numerische und kategorische Variablen: Beantwortung "soziologischen Fragen", und nicht Prädiktion

15 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Training

Beispiel Materialeigenschaften

100 (Links) Entscheidungsbaum für die Vorhersage von Reibungskoeffizienten von Materialien auf der Grundlage von sechs grundlegenden Materialmerkmalen (Rechts) Vergleich der vorhergesagten und experimentellen Reibungskoeffizienten

16 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Training

Trainingsalgorithmen

  • Es gibt verschiedene Trainingsverfahren (für verschiedene Baumklassen):
    • ID3. Der Klassiker (Iterative DiChaudomiser 3, Ross Quinlan, 1975-1986) für kategorische Variablen (k-stelliger Baum)
    • C4.5. Der Klassiker (Ross Quinlan 1988-1993) für numerische (und kategorische) Variablen (Binär- und k-stelliger Baum) als Erweiterung des ID3 Verfahrens.
    • C5.0 Nachfolger von C4.5 mit verbesserten Split und Baumreduzierung
    • INN. Die Eigenkreation (auch ICE, Stefan Bosse, 2016) für numerische unsichere und verrauschte Sensorwerte mit Intervallarithmetik (also im Prinzip Intervallkategorisierung und Kantenbedingungen sind x ∈ [a,b]), basierend auf C4.5 und ID3
    • CART Classification and Regression Tree (kat. und kont. numerische Zielvariablen)
17 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Training

Bewertung

  • Binäre Kreuzentropie bei kategorischen Ausgabevariable(n)

Die Kreuzentropie ist in der Informationstheorie und der mathematischen Statistik ein Maß für die Qualität eines Modells für eine Wahrscheinlichkeitsverteilung. Eine Minimierung der Kreuzentropie in Bezug auf die Modellparameter kommt einer Maximierung der Log-Likelihood-Funktion gleich. Es gilt mit p als Zielwertverteilung von y und q als verteilung der Prädktion yp:

H(p,q)=cp(c)log(q(c))p(c)=count(yy=c)Nq(c)=count(ypyp=c)NcC={U,V,W,..}

18 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Training

Bewertung

  • Logloss, die Abkürzung für logarithmischer Verlust, misst die Genauigkeit eines Klassifikators mit kontinuierlichen Ausgabevariablen, d.h. im Werteintervall [0,1], indem es falsche Klassifizierungen bestraft. Für eine binäre Klassifizierung mit echter Bezeichnung y={0,1} und vorhergesagter Wahrscheinlichkeit p=[0,1] ist der Logloss gegeben durch:

L(y,p)=1NNi=1yilog(pi)(1yi)log(1pi)

19 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Training

Bewertung

  • MSE/RMSE bei numerischen Ausgabevariablen (sowohl diskrete als auch regressive Bäume), hier ist yp der vom Modell vorhergesagte Wert, und y0 der bekannte Ground Truth Wert:

rmse(yp,y0)=1N(ypy0)2

Weitere Informationen und Vertiefung:

https://towardsdatascience.com/understanding-binary-cross-entropy-log-loss-a-visual-explanation-a3ac6025181a

20 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Vergleich ID3 - C4.5

Vergleich ID3 - C4.5

  • Der ID3-Algorithmus wählt das beste Attribut basierend auf dem Konzept der Entropie und dem Informationsgewinn für die Entwicklung des Baumes.
  • Der C4.5-Algorithmus verhält sich ähnlich wie ID3, verbessert jedoch einige ID3-Verhaltensweisen:
    • Möglichkeit, numerische (kont.) Daten zu verarbeiten.
    • Verarbeitung unbekannter (fehlender) Werte
    • Möglichkeit, Attribute mit unterschiedlichen Gewichten zu verwenden.
    • Beschneiden des Baumes nach der Erstellung (Modellkompaktierung).
    • Vorhersage der Fehler
    • Hervorhebung und Extraktion von Teilbäumen
21 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: ID3 Verfahren

ID3 Verfahren

[1] J. R. Quinlan, “Induction of Decision Trees,” in Machine Learning, Kluwer Academic Publishers, Boston, 1986.

Entropie

  • Ausgangspunkt für die Konstruktion des Entscheidungsbaums ist die (Shannon) Entropie einer Spalte X der Datentabelle (mit der Variable x):

E(X)=i=1,kpilog2(pi),pi=count(X=ci)|X|,X={c|cC}

Alle Werte gleich ⇒ Entropie=0; Alle Werte gleichverteilt ⇒ Entropie=-log2|ci|

22 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: ID3 Verfahren

https://towardsdatascience.com/understanding-entropy-the-golden-measurement-of-machine-learning-4ea97c663dc3 Illustration der Bedeutung der Entropie: Entropie hat ihre Wurzeln in der Physik- sie ist ein Maß für Unordnung oder Unvorhersehbarkeit in einem System.

23 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: ID3 Verfahren

Entscheidungsbäume verwenden Entropie für ihre Konstruktion: Um Eingaben so effektiv wie möglich nach einer Reihe von Bedingungen zu einem korrekten Ergebnis (Zielvariable) zu lenken, werden Merkmalteilungen (mit Bedingungen) mit niedrigerer Entropie (höherer Informationsgewinn) höher im Baum platziert.

24 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: ID3 Verfahren

Um die Idee von Bedingungen mit niedriger und hoher Entropie zu veranschaulichen, betrachten wir hypothetische Merkmale mit einer durch Farbe (rot oder blau) markierten Klasse und der durch eine vertikale gestrichelte Linie markierten Teilung.

https://towardsdatascience.com/understanding-entropy-the-golden-measurement-of-machine-learning-4ea97c663dc3 Betrachtet man die Verteilung der Zielvariablen y, dann ergibt sich ein hoher Informationsgewinn bei niedriger Entropie (von y) für eine gute Teilung

25 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: ID3 Verfahren

  • Entscheidungsbäume berechnen die Entropie von Merkmalen und ordnen sie so an, dass die Gesamtentropie des Modells minimiert (und der Informationsgewinn maximiert) wird.

  • Mathematisch bedeutet dies, dass die Bedingung mit der niedrigsten Entropie oben platziert wird, so dass sie dazu beitragen kann, Knoten darunter zu spalten, um die Entropie zu verringern.

  • Informationsgewinn und relative Entropie, die beim Training von Entscheidungsbäumen verwendet werden, sind definiert als der Abstand zwischen zwei Wahrscheinlichkeitsverteilungen p(x) und q(x) (siehe vorherige Abb.).

26 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: ID3 Verfahren

Bedingte Entropie

  • Interessant ist die Werteverteilung einer Eingabevariablen X in Bezug auf die Werte (Partitionen) der Zielvariable Y ⇒ Bedingte Entropie

H(X|Y=y)=i=1,kpilog2(pi),pi=count(X|X=ciY=y)Ny,Xy={c|cCY=y},C={ci|i=1,2,..,k}

  • C ist die Menge aller unterscheidbaren Werte von X!
27 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: ID3 Verfahren

Beispiel

a b y
u u A
v v A
w u B
w v B

E(a)=13log(13)13log(13)13log(23)=1.5E(b)=24log(23)23log(23)=1H(ay=B)=22log(12)22log(12)=0H(by=B)=12log(12)12log(12)=1

28 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: ID3 Verfahren

Informationsgewinn

  • Ausgehend von der bedingten Entropie kann der Informationsgewinn einer Spalte X hinsichtlich der Zielvariablenspalte Y berechnet werden:

G(Y|X)=E(Y)vVal(X)|(Y|X=v)||Y|E(Y|X=v)

  • Der Informationsgewinn, der durch Auswahl des Attributs x und der Spalte X erzielt wird, errechnet sich dann als Differenz der Entropie von Y und der erwarteten/durchschnittlichen Entropie von Y bei Fixierung von x.

Der Informationsgewinn ist auf Y Verteilung bezogen, nicht wie vorher auf X!

29 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Algorithmus

Algorithmus

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 Attributvariable 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.
30 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: C4.5 Verfahren

C4.5 Verfahren

[1] J. R. Quinlan, "C4.5: Programs For Machine Learning". Morgan Kaufmann, 1988.

  • Wie ID3 werden die Daten und Attribute an jedem Knoten des Baums bewertet um das beste Teilungsattribut zu bestimmen.
  • 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.

31 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: C4.5 Verfahren

  • Das Kriterium ist der normalisierte Informationsgewinn:
    • Verhältnis des Informationsgewinns G (Gain) zu einer sog. Teilungsqualität (Split Info SI), die sich aus der Zielvariable Y zum Aufteilen nach den Y Werten der Daten ergibt.
    • Das Attribut mit dem höchsten Verhältnis GR (Gain Ratio) wird ausgewählt, um die Entscheidung für die Teilung zu treffen.

G(Y|X)=E(Y)vVal(X)|Yv||Y|E(Yv)SI(Y)=cVal(Y)|Yc||Y|log2|Yc||Y|GR=G(Y|X)SI(Y)

32 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Teilung von kategorischen und numerischen Variablen

Teilung von kategorischen und numerischen Variablen

  • Bei kategorischen Variablen bestimmen die Werte Val(X) einer Spalte der Datentabelle einer Variablen x die Aufteilung eines Entscheidungbaums (Partitionierung).

  • Bei numerischen Variablen muss ein Wert als Teilungspunkt aus der Werteverteilung bestimmt!

    • Nicht trivial; Welches Kriterium?
    • Intervallkategorisierung und Wertepartitionierung kann helfen!
    • D.h. mit intervallkategorisierten diskrete Werter wird die Spalte X entsprechend der Zielvariable Y partitioniert.
    • Und diese Partitionen werden bewertet und der Teilungspunkt xsplitX bestimmt (z.B. über Mittelwerte der Intervalle)
33 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Teilung von kategorischen und numerischen Variablen

Teilung von numerischen Variablen mit Intervallanalyse

Naiver Ansatz:

  1. Paritionierung der x Variable in Paritionen x|y (also nach y Werten)
  2. Berechnung der statistischen fivenum Verteilunge: {min,q1,meadian,q3,max}
  3. Die Intervalle [min,max] der Paritionen aufsteigen sortieren
  4. Fall A: Zwei Parititionen P1 und P2 besitzen nicht überlappende Intervalle ⇒ Teilungspunkt ist Mittelpunkt (max2-min1)/2
  5. Fall B: Zwei Parititionen P1 und P2 besitzen überlappende Intervalle,aber q31 < q12 ⇒ Teilungspunkt ist Mittelpunkt (q12-q31)/2
  6. Fall C: Zwei Parititionen P1 und P2 besitzen überlappende Intervalle,aber median1 < median2 ⇒ Teilungspunkt ist Mittelpunkt (meadian2-median1)/2
34 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Teilung von kategorischen und numerischen Variablen

Vertiefung

[1] L. Rokach and O. Maimon, Data Mining with Decision Trees - Theory and Applications. World Scientific Publishing, 2015.

35 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Intervallkodierung

Intervallkodierung

Einteilung von kontinuierlichen Werteverteilungen in Intervall und Abbildung auf kategorische (diskrete) Werte

36 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Unvollständige Trainingsdaten

Unvollständige Trainingsdaten

  • 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.

    • Die Behandlung fehlender Attributwerte in den Zeilen der Datentabellen ist schwierig
  • Es gibt keine Universallösung für den Umgang mit ? Werten. Möglichkeiten:

    • Ersetzen des fehlenden Wertes mit einem Standardwert
    • Ersetzen des fehlenden Wertes mit einem probabalistisch über Verteilungshäufigkeiten bestimmten Wert (auch unter Einbeziehung des gesamten Datensamples)
    • Attributvariablen mit fehlenden Werten nicht verwenden
37 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: ICE/INN Intervallkategorisierte Entscheidungsbäume

ICE/INN Intervallkategorisierte Entscheidungsbäume

  • 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 in der Soziologie) sind fehlerbehaftet, d.h. es gibt bei jedem x-Wert ein Unsicherheitsintervall [x-δ,x+δ] → Rauschen, ebenso Teilungsintervalle [x1-δ,x2+δ]

  • Damit können Entscheidungsbäume (anders als Neuronale Netze oder Regressionslerner) nicht umgehen.

    • Wenn die Teilung mit x<50 und x≥50 an einem Knoten mit x erfolgt würde bei Werten um 50 und überlagerten Rauschen ein Entscheidungsproblem entstehen!
38 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: ICE/INN Intervallkategorisierte Entscheidungsbäume

  • Lösung: k-stellige Knoten mit Intervallverzweigungen, also:

M(X)=⎪ ⎪ ⎪ ⎪⎪ ⎪ ⎪ ⎪xi[v1,1εi,v1,2+εi],{xi[v2,1εi,v2,2+εi],{xi[vn,1ε,vn,2+εi],{

Vergleich der verschiedenen Baumarten und Knotenverzweigungen

39 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: ICE/INN Intervallkategorisierte Entscheidungsbäume

  • 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

  • Entropie 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?

    • Überschneidungen bedeuten Ununterscheidbarkeit!
40 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: ICE/INN Intervallkategorisierte Entscheidungsbäume

Inferenz mit NN Suche

  • Jeder Knoten xi hat ausgehende Kanten mit annotierten Intervallen [vj-ε,vj+ε]

  • Bei einem neuen zu testenden Variablenwert v wird einerseits auch ein Intervall [v-ε,v+ε] gebildet und mit den Kantenintervallen verglichen, andererseits wird das nächstliegende Intervall gesucht

41 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Gini-Index/Gini-Unreinheit

Gini-Index/Gini-Unreinheit

Die Gini-Unreinheit (Ginit Impurity GI) ist die Wahrscheinlichkeit, ein zufällig ausgewähltes Element im Datensatz falsch zu klassifizieren, wenn es gemäß der Klassenverteilung im Datensatz zufällig annotiert wurde. GI wird berechnet als:

G=Ci=1p(i)(1p(i))

wobei C die Anzahl der Klassen und p(i) die Wahrscheinlichkeit ist, zufällig ein Element der Klasse i auszuwählen.

Beim Trainieren eines Entscheidungsbaums wird die beste Aufteilung ausgewählt, indem der Gini-Gewinn maximiert wird, der durch Subtraktion der gewichteten Unreinheiten der Zweige von der ursprünglichen Unreinheit berechnet wird.

42 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Gini-Index/Gini-Unreinheit

Gini-Index/Gini-Unreinheit

Wir bestimmen die Qualität der Aufteilung, indem wir die Unreinheit jedes Zweigs mit der Anzahl seiner Elemente gewichten.

43 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Gini-Index/Gini-Unreinheit

Gini-Index/Gini-Unreinheit

Beispiel

Count=100 (A:50,B:50)GiniImp=0.5Rule:x1<10Count=46 (A:8,B:38)GiniImp=0.28Rule:x2<5Count=37 (A:1,B:37)GiniImp=0.97Count=9 (A:7,B:2)GiniImp=0.22Count=54 (A:42,B:12)GiniImp=0.35

Weighted Gini-Impurity (erster Split) = 46/100•0.28 + 54/100•0.35 = 0.32, Split Gain = 0.5 - 0.32

44 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Random Forest Trees

Random Forest Trees

Konzept und Idee: Mehrere schwache Modelle zu einem starken kombinieren.

  • Multiinstanzmodell
    • Es werden m Entscheidungsbäume DT={dt1,..,dtm} getrennt gelernt und erzeugt
    • "Random": Die Aufteilung der Daten in Teilungsvariablen erfolgt randomisiert!
    • Eingabedaten werden zur Inferenz an alle Teilbäume dtiDT gegeben
    • Alle Ausgabevariablen der Teilbäume werden fusioniert
45 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Random Forest Trees

  • Fusion:
    • Mittelwert (bei intervallkodierten oder intervallskalierbaren kat. Zielvariablen durch Dekodierung in numerische Werte)
    • Mehrheitsentscheid
    • Konsensfindung (Verhandlung)
  • Parametersatz:
    • Stelligkeit eines Knotens (Anzahl der ausgehenden Kanten)
    • Anzahl der Teilbäume
    • Partitionierung des Eingaberaums (d.h. ein bestimmter Baum verwendet nur eine Teilmenge der Spalten aus D)
    • Maximale Höhe eines Teilsbaumes
    • Fusionsmodell und Algorithmus
46 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Random Forest Trees

Abhishek Sharma, 2020, www.analyticsvidhya.com Grundprinzip von Multibaumklassifikatoren

47 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Beispiel

Beispiel

Experiment

  • Sensornetzwerk von (3 × 4) Dehnungssensoren
  • Stimulus: Bauteilschwingung
  • Varianz: Bauteilschäden (Defekte)
  • Zielvariable: Schadensklassifikation (9 Positionen)
  • Merkmalsvektor: Downgesampletes zeitaufeglöstes Sensorsignal einer
48 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Beispiel

49 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Beispiel

Ressourcen

50 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Beispiel

Genauigkeit

51 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Regressionsbäume

Regressionsbäume

Classification and Regression Tree CART

Bisher gaben Entscheidungsbäume diskrete kategorische Werte oder intervallkodierte numerische Werte aus. Ausgabewerte die nicht in den Trainingsdaten enthalten waren können auch nicht ausgegeben werden. Es gibt keine Inter- und Extrapolation!

  • Regressionsbäume können zwar auch nur eine diskrete Menge von Werten ausgeben, die aber nicht unmittelbar in den Trainingsdaten enthalten sein müssen (nur numerische Zielvariablen) und aus einer statistischen Analyse stammen

Ein Regressionsbaum ist ein Hybrid aus Regressionsfunktion und Entscheidungsbaum.

Breiman, Friedman, Olshen, and Stone (1984)

52 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Regressionsbäume

Regressionsbäume

  • Ein CART gruppiert einzelne Dateninstanzen und Trainingsbeispiele in Gruppen und berechnet statistische Größen der Zielvariable: Mittelwert, Standardabewichung usw.

  • Jeder Knoten ist hier auch ein Zielknoten der diese statistischen Informationen der Zielvariablen liefert und kann für die Beantwortung einzelner Fragen verwendet werden d.h.,

    • Der Einfluss von Variablen und deren Wertebereiche auf die Zielvariable ist unmittelbar ablesbar,
    • Pfade entlang des Baumes ergeben Variablenkonditionale (also wenn A und dann B dann ...)

Jeder Knoten des Baumes ist die Wurzel eines Teilbaums mit einer statistisch gegebenen Verteilung der Zielvariablewerte

53 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Regressionsbäume

Regressionsbäume

  • Je tiefer ein Knoten sich im Baum befindet, desto geringer sollte die Streuung und Breite der verteilung der Ergebnisvariable sein

Bei kategorischen Zielvariablen wird entropiebasiert der Trainingsdatensatz geteilt und auf Teilbäume abgebildet. Das geht bei kontinuierlichen variablen nicht!

  • Bei Regressionsbäumen wird i.A. der mittlere Teilungsfehler für einen gegebenen Teilungspunkt berechnet und verwendet (i.a. Binärbaum bei nuemrischen Eingabevariablen)

MSE=1nni=1(Yi^Yi)2

wobei Y der vorgebenene Trainingswert ist und Y der berechnete (vorhergesagte) Zielvariabenwert ist.

54 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Regressionsbäume

Regressionsbäume

14 CART mit der Zielvariable y:Raucher? und verschiedenen Eingabevariablen (Attributen): Alter (Monate!), Elternstress (Score 0-5)

55 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Regressionsbäume

Regressionsbäume

Als eine statistische Methode gruppiert CART Individuen in eine Reihe von sich gegenseitig ausschließenden und repräsentativen Gruppen, die auf starke Zusammenhänge zwischen den unabhängigen Variablen basieren. CART ist eine effektive explorative statistische Technik.

Ohne auf einem speziellen statistisches Modell zu basieren, enthält CART keine komplexen mathematischen Gleichungen (die das statistische Modell beschreiben). Die Ergebnisse sind leicht zu interpretieren und zu verstehen.

Vertiefung: https://towardsdatascience.com/cart-classification-and-regression-trees-for-clean-but-powerful-models-cc89e60b7a85 https://medium.com/analytics-vidhya/regression-trees-decision-tree-for-regression-machine-learning-e4d7525d8047

56 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Regressionsbäume

Algorithmus

Ziel: Mit jeder Ebene/Knoten die "Unordnung" (Impurity) der Datenverteilung mit Bezug zu der Zielvariable zu reduzieren

  • Es wird wieder die Entropie ε als Maß für die Unordnung herangezogen (der Zielvariable)

Der Grad der Verringerung der Unordnung, der mit der Partitionierung eines übergeordneten Knotens in zwei untergeordnete Knoten verbunden ist, wird berechnet als [14]:

Δ=ϵ(τ)ϵ(τL)nl1nl1+nl2ϵ(τR)nr1nr1+nr2

wobei ε(τ) die Entropie des Elternknoten ist.

57 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Baumkompaktierung

Baumkompaktierung

  • Viele Baumstrukturen können nach dem Training vereinfacht werden ⇒ Tree Pruning

    • Dabei können auf gleicher Ebene Teilungsknoten und Blätter zusammengafasst werden (Redundanzen)
    • Aber auch Reduktion ganzer Teilbäume ist möglich (Komplexität)
  • Man unterscheidet Pre- und Postkompaktierung

https://www.kdnuggets.com/2022/09/decision-tree-pruning-hows-whys.html

58 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Baumkompaktierung

Pre-Kompaktierung

Eigentlich Verhinderung von überkomplexen Bäumen!

Die Vorbeschneidungstechnik von Entscheidungsbäumen besteht darin, die Hyperparameter vor der Trainingspipeline zu optimieren. Es beinhaltet die Heuristik, die als 'frühes Stoppen' bekannt ist und das Wachstum des Entscheidungsbaums stoppt - und verhindert, dass er seine volle Tiefe erreicht.

Es stoppt den Baumbildungsprozess, um zu vermeiden, dass Blätter mit kleinen Proben produziert werden. Während jeder Phase der Aufteilung des Baums wird der Kreuzvalidierungsfehler überwacht. Wenn der Wert des Fehlers nicht mehr abnimmt, stoppen wir das Wachstum des Entscheidungsbaums.

59 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Baumkompaktierung

Pre-Kompaktierung

Die Hyperparameter, die für ein frühzeitiges Stoppen und Verhindern einer Überanpassung eingestellt werden können, sind:

max_depth, min_samples_leaf und min_samples_split

Dieselben Parameter können auch zum Abstimmen verwendet werden, um ein robustes Modell zu erhalten. Sie sollten jedoch vorsichtig sein, da ein frühzeitiges Anhalten auch zu einer Unteranpassung führen kann.

60 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Baumkompaktierung

Post-Kompaktierung

Post-Pruning bewirkt das Gegenteil von Pre-Pruning und ermöglicht es dem Entscheidungsbaummodell, seine volle Tiefe zu erreichen. Sobald das Modell seine volle Tiefe erreicht hat, werden Äste entfernt, um eine Überanpassung des Modells zu verhindern.

Der Algorithmus partitioniert die Daten weiterhin in kleinere Teilmengen, bis die endgültigen erzeugten Teilmengen in Bezug auf die Ergebnisvariable ähnlich sind. Wenn jedoch ein neuer Datenpunkt eingeführt wird, der sich von den gelernten Daten unterscheidet, wird er möglicherweise nicht gut vorhergesagt.

  • "Cost Complexity Pruning" ist eine gängige parametrisierbare Methode um die Komplexität von Bäumen iterativ zu reduzieren

  • C4.5/ID3 bieten kaum eingebaute Möglichkeiten die Komplexität und Redundanzen zu reduzieren

  • C5.0 bietet Kompaktierung zur Trainingszeit

  • ICE kann Blattknoten zusammenfassen (mit fusionierten Intervallen)

61 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Zusammenfassung

Zusammenfassung

Bäume
Binär
Mehrfach - Diskret
Mehrfach - Bereich
x<εx≥εx=ε1x=ε2x=ε3x=ε4x∈[ε1,ε2]x∈[ε3,ε4]x∈[ε5,ε6]x∈[ε7,ε9]xyyxyyyyxyyyy

Random Forest
T1
T2
T3
x<εx≥εx<εx≥εx<εx≥εxyyxyyxyy
62 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: C5.0 Verfahren

C5.0 Verfahren

Schlüsselkonzepte des C5.0-Algorithmus

  • Das MDL-Konzept (Minimum Description Length) legt nahe, dass Modelle mit der kleinsten Kodierungslänge die Daten mit größerer Wahrscheinlichkeit effektiv erfassen.
  • Konfidenzgrenzen: Um eine Überanpassung (Overfitting) zu vermeiden, werden Konfidenzgrenzen verwendet, um zu beurteilen, ob eine Knotenaufteilung statistisch signifikant ist.
  • Beim Winnowing Verfahren werden weniger wichtige Regeln aus einem Entscheidungsbaum entfernt, um die Gesamtzahl der Regeln zu reduzieren.
  • Baumteilung wieder mit Entropie und Informationsgewinn
63 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: C5.0 Verfahren

C5.0 Verfahren

Pruning

Beim Beschneiden werden überflüssige oder redundante Zweige aus dem Entscheidungsbaum entfernt, um seine Genauigkeit und Generalisierungsfähigkeit zu erhöhen. Wenn ein Entscheidungsbaum genau mit den Trainingsdaten übereinstimmt, aber Schwierigkeiten hat, auf neue Fälle zu verallgemeinern, spricht man von Überanpassung. Durch das Beschneiden werden überflüssige Äste eliminiert, die weniger für die allgemeine Verallgemeinerung als vielmehr für die Anpassung des Trainingssatzes wichtig sind.

Winnowing

Eine Methode namens Winnowing wird verwendet, um verrauschte oder unnötige Merkmale zu finden und zu eliminieren, die die Leistung eines Entscheidungsbaums verschlechtern könnten. Dies beinhaltet die Bewertung des Informationsgewinns jedes Attributs und die Eliminierung derjenigen, die wenig zur gesamten Entropiereduktion beitragen. Um festzustellen, ob der Informationsgewinn eines Attributs statistisch signifikant ist, verwendet der C5-Algorithmus einen Signifikanztest. Der Entscheidungsbaum verliert Attribute, die dieses Kriterium nicht erfüllen.

64 / 65

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul D Klassifikation und Regression mit Entscheidungsbäumen :: Zusammenfassung

Zusammenfassung

  • Entscheidungsbäume sind für primär die Klassifikation von kategorischen und sekundär für numerische Zielvariablen geeignet

  • Mit Ausnahme von CART liefern EB nur Werte der Zielvariablen die im Training enthalten waren

  • Numerische Zielvariablen müssen intervallkodiert werden (mit Ausnahme von CART).

  • ID3/C4.5 Lerner können numerische und kategorische Eingabevariablen (Attribute) verwenden

    • Eine Attributvariable ist ein Teilungspunkt
  • C5.0 ist die Quintessenz

  • Rauschen auf Sensordaten muss durch "Unsicherheitsintervall" und Intervallarithmetik behandelt werden (und bei CART durch Standardabweichung)

  • Vergleich mit anderen Lernverfahren zeigt gute Ergebnisse (je nach Problem)

65 / 65