Übung 3.8 zu Einführung in Maschinelles Lernen (PD Stefan Bosse)

Klassifikation mit Entscheidungsbäumen und ID3/C4.5 Algorithmen

Klassifikation mit Entscheidungsbäumen und ID3/C4.5 Algorithmen
Daten
Kategorische Daten
Titanic Unglück - Passgierdaten
Vorbermerkung
Ein ID3 Klassifikator
Datenteilung
Ein C4.5 Klassifikator
Datenteilung
Aufgaben

Daten

Kategorische Daten

Titanic Unglück - Passgierdaten

DATA: Variable State.dataTI01 Type: {pclass, survived, name, sex, age, sibsp, parch, ticket, fare, cabin, embarked, boat, body, home.dest} []

X: { class,name,sex,age,sibsp,parch,ticket,fare,cabin,embarked,boat,body }
Y: { survival }

"This is a classic dataset used in many data mining tutorials and demos -- 
perfect for getting started with exploratory analysis and building binary 
classification models to predict survival."

Data covers passengers only, not crew.
Features

    survival - Survival (0 = No; 1 = Yes)
    class - Passenger Class (1 = 1st; 2 = 2nd; 3 = 3rd)
    name - Name
    sex - Sex
    age - Age
    sibsp - Number of Siblings/Spouses Aboard
    parch - Number of Parents/Children Aboard
    ticket - Ticket Number
    fare - Passenger Fare
    cabin - Cabin
    embarked - Port of Embarkation (C = Cherbourg; Q = Queenstown; S = Southampton)
    boat - Lifeboat (if survived)
    body - Body number (if did not survive and body was recovered)

Instances: 1309 (one instance per passenger)
X,Y=Klasse={N,P}

 ▸ 
 ✗ 
 ≡ 

Vorbermerkung

Ein ID3 Klassifikator

Nachfolgend wird gezeigt wie auf einfachen kategorischen Daten ein einfacher Klassifikator algorithmisch durch Tarining erzeugt werden kann.

Beispiel Datentabelle

 ▸ 
 ✗ 
 ≡ 

Beispiel Klassifikator ID3 mit Training

 ▸ 
 ✗ 
 ≡ 

Test Klassifikator ID3

 ▸ 
 ✗ 
 ≡ 

ID3 Modell: Die Baumstruktur

 ▸ 
 ✗ 

Datenteilung

Beispiel Klassifikator ID3 mit Datenteilung

 ▸ 
 ✗ 
 ≡ 

Ein C4.5 Klassifikator

Achtung: C4.5 kann numerische und kategorische Eingabewerte verwenden. Die Ausgabe ist kategorisch, aber es gibt auch den symbolischen Wert 'unknown' bei der Inferenz!


Beispiel Klassifikator ID3 mit Training

 ▸ 
 ✗ 
 ≡ 

Test Klassifikator C4.5

 ▸ 
 ✗ 
 ≡ 

C4.5 Modell: Die Baumstruktur

 ▸ 
 ✗ 

Datenteilung

Beispiel Klassifikator C45 mit Datenteilung

 ▸ 
 ✗ 
 ≡ 

Aufgaben

Punkte:1./22./23./24./2
Die Daten

 ▸ 
 ✗ 
 ≡ 

Aufgabe.

Benutze D=this.data.

  1. Teile den Datensatz in Trainings- und Testdaten. Wähle eine geeignete Verteilung. Wiedehole die Parititionierung ggfs. wenn 2./3./4. keine guten Ergebnisse liefern.
  2. Mit dem C45 Algorithmus soll ein Modell trainiert werde. Bestimme die Trainingszeit (mit der time() Funktion, gibt Zeit in ms zurück).
  3. Test Ergebnisse und bestimmte die Fehlerrate für die Trainings- und Testdaten
  4. Wähle geeignete Features (reduzierter Satz) aus um die bestmögliche Klassifikation zu erzielen (also Fehler Trainign und Test)

Datenteilung

 ▸ 
 ✗ 
 ≡ 

C45 Modell und Training

 ▸ 
 ✗ 
 ≡ 

C45 Test

 ▸ 
 ✗ 
 ≡ 

C4.5 Modell: Die Baumstruktur von this.modelX

 ▸ 
 ✗ 




Hilfe



Einreichung (Assignment #08-82958)



Prüfen



Bewerten (Lehrer)




Created by the NoteBook Compiler Ver. 1.8.11 (c) Dr. Stefan Bosse (Thu Jan 14 2021 16:15:35 GMT+0100 (CET))