Maschinelles Lernen & ID3
Seminar KI
Prof. Dr. Katharina Morik
Mandana Asfa
Maschinelles Lernen & ID3
Einführung
Was ist lernen?
Maschinelles Lernen
ID3 Algorithmus
Aufbau der Entscheidungsbäume
Vorstellung des ID3
Entropie
Beispiele
Einschränkungen
Einführung
Was ist lernen?
Michalski(1986):
- Lernen ist das Konstruieren oder Verändern von Repräsentationen von Erfahrungen.
Scott(1983):
- Lernen ist ein Prozess, bei dem ein System eine abrufbare Repräsentation von
vergangenen Interaktionen mit seiner Umwelt aufbaut.
Maschinelles Lernen
Die einzelnen Ziele für das maschinelle Lernen :
Prinzipien menschlichen Lernens sollen mithilfe von operationalen Modellen untersucht werden.
Insbesondere der Induktive Schluss soll operationalisiert werden, aber auch die Verwendung anderer Schlussfolgerungen (Deduktion und Abduktion) zum Lernen soll untersucht werden.
Maschinelles Lernen
Die Phänomenbereiche
Aggregation (Kategorisierung )
Charakterisierung
Klassifikation
Kategorisierung Charakterisierung Klassifikation
Maschinelles Lernen
Induktion
Abduktion
Deduktion
Maschinelles Lernen
Induktion:
Von zwei oder mehreren wahren Einzelaussagen wird auf eine Regel geschlossen.
Aussage1: Peter ist Mensch
Aussage 2: Karin ist Mensch
Aussage 3: Peter ist sterblich
Aussage 4: Karin ist sterblich
Alle Menschen sind sterblich (Regel).
Maschinelles Lernen
Deduktion
Aus Ursache und Regel wird auf eine Wirkung geschlossen.
Ursache: Peter ist Mensch
Regel: Alle Menschen sind sterblich
Peter ist sterblich (Wirkung)
Maschinelles Lernen
Abduktion
Von einer Regel und einer Wirkung wird auf eine Ursache geschlossen.
Regel: Alle Menschen sind sterblich.
Wirkung: Peter ist sterblich.
Peter ist Mensch (Ursache).
Mashinelles lernen
Angewendete Lernverfahren:
Top-Down Lernverfahren
Induktive Lernverfahren
ID3
Conceptual clustering
Bottom-Up Lernverfahren
Versions-Space Lernverfahren
Aufbau der Entscheidungsbäume
Datenklassifikation
wichtiges Ziel bei KDD
das Finden gemeinsamer Eigenschaften einer Menge von Objekten und die
Einteilung der Objekte in verschiedene Klassen aufgrund eines
Klassifikationsmodells.
Aufbau der Entscheidungsbäume
Zur Erzeugung des Klassifikationsmodells wird
eine Trainingsmenge von Objekten benutzt, deren Klassenzugehörigkeit bekannt ist
Klassifikationsmodell wird benutzt, um neue, unbekannte Objekte zu Klassifizieren
Zur Klassifikation existieren viele Methoden, z.B.
statistische Verfahren oder neuronale Netze
Aufbau der Entscheidungsbäume
repräsentiert eine Hypothese
Jeder Innere Knoten enthält ein Attribut
von jedem inneren Knoten gehen Pfade mit Werten zu weiteren Knoten
Blätter enthalten die Klasse mit zugehörenden klassifizierenden Objekt
Klassifikation eines unbekannten Objekts erfolgt durch Ablaufen des Baumes
repräsentieren eine DNF
Entscheidungsbaum
Beispiel
Outlook
Sunny Humidity
Overcast
Yes Normal
High
Rain
Wind
Strong Weak
Entscheidungsbaum
[ Outlook= sunny, Humidity= High, Wind=Strong]
Playtennis = No
DNF lautet:
( Outlook= sunny & Humidity = Normal) V ( Outlook = overcast )
V ( Outlook= Rain & Wind= Weak)
ID3 Algorithmus
Entwickler: J.Ross Quinlan(1986)
Auf dem Information Gain basiert
Sehr einfacher Algorithmus
Verarbeitung nominalen Attribute
Kein Prunning
Hill-Climbing search
Ziel des ID3 Algorithmus
Konstruktion eines Entscheidungsbaumes, der als möglichst guter Klassifikator für
Testobjekte dient.
„Top-Down „- Konstruktion
An jedem Knoten wird entschieden, welches Attribut am besten passt
Erzeugung von Kindknoten für jeden möglichen Attributwert
Entropie
Problem
Welches Attribut klassifiziert die Trainingsdaten am besten?
Entropie:
die durchschnittliche Menge an Information einer Antwort
Entropie
Entropie ist ein Maß für den Informationsgehalt einer Aussage
Entropie ist ein Maß für die Unreinheit oder Unordnung in einer Menge
Je großer die Entropie, umso großer ist der enthaltene Informationsgehalt
Entropie
Entropie = 0: Alle Elemente der Menge gehören zur selben Klasse
Wir möchten das Attribut auswählen, welches die Entropie am stärksten reduziert
Entropie
Sei S eine Menge von Beispielen und A ein Attribut:
Partitionierung von S unter Benutzung von Attribut A.
Auswahl des besten Attributs:
Berechne InfoGain(S, A) für eine Menge S und jedes Attribut A. Das Attribut mit dem größten Wert ist das gesuchte.
ID3 Algorithmus
ID3 (examples, target_attr, attributes)
Begin
Create root node
if (examples = +) return root(+)
if (examples = -) return root(-)
if (attributes = empty) return root
Begin
ID3 Algorithmus
attr(root) = A
for all vi of A do
Add_subtree(root, vi )
examplesvi = (examples|vi )
if (examplesvi = empty)
Add_Leaf()
else
ID3(examplesvi , target_attr, attributes - A) End
Return root End
Beispiel
Beispiel
Values(wind)= Weak, Strong S=[9+,5-]
Sweak[6+,2-]
Sstrong[3+,3-]
Gain(S, Wind)= Entropy(S)-Sv / S Entropy(Sv) = Entropy(S)- (8/14)Entropy(Sweak) -(6/14)Entropy(SStrong)
= 0.940 – (8/14)0.811 – (6/14)1.00 = 0.048
Beispiel
Gain(S,Outlook)=0.246
Outlook
sunny Overcast Rain
{D1,D2,…,D14}
[9+,5-]
{D1,D2,D8,D9,D11}
[2+,3-] {D3,D7,D12,D13}
[4+,0-] {D4,D5,D10,D14}
[3+,2-]
? Yes ?
Beispiel
Ssunny= {D1,D2,D8,D9,D11}
Gain (Ssunny, Humidity)=.970 – (3/5)0.0 – (2/5)0.0=.970
Gain(Ssunny, Temperature)=.970 – (2/5)0.0 – (2/5)1.0 –
(1/5)0.0=.57
Gain(Ssunny, Wind)=.970 – (2/5)1.0 – (3/5).918=.19
Einschränkungen des ID3 Algorithmus
Attribute können nur wenige diskrete Werte annehmen
Nur 2 Verschiedene Klassifikationen (Die boolean Werte)
Generierte Bäume für Experten des Fachgebiets oft unverständlich und schwer durchschaubar
Entscheidung in jeder Stufe nur Anhand eines Attributes
Es gibt keine Backtracking bei ID3-Algorithmus
Zusammenfassung
Anwendungsgebiet:
Überall dort,wo Klassifikation von Daten notwendig ist.
Beispiel: Medizin, Wettervorhersage,Schach
Klassifikation ist durch Entscheidungsbäume
möglich,Ziel:Erzeugung der einfachen korrekten kleinen Bäume mit effizienten Algorithmus(:ID3)
ID3 ist für kleineren Bäumen bevorzugt.
Repräsentation des Wissens oft auch für Experten nicht durchschaubar
Literaturliste
Vorlesung KI /Prof.Dr.Mörik(1997)
Maschine Learning / Tom M.Mitchell(1997)
C4.5 Programms for Machine Learning /J.Ross Quinlan(1992)
Viele Seiten mit Hilfe von Google gefunden:
http--www2.informatik.uni-erlangen.de-Lehre-WS98_99- induktion.htm