Data Mining WS 05/06 Prof. Dr. N. Fuhr

Werbung
Data Mining WS 05/06 Prof. Dr. N. Fuhr
Zusammenfassung von Simon Scheidegg
Die Gliederung richtet sich nach den Beispielfragen von Prof. Dr. N. Fuhr. Als Quellen
wurden die Folien aus der Vorlesung und die deutsche Übersetzung des Buchs „Data
Mining – Pratical Machine Learning Tools and Techniques with Java Implementations“
verwendet.
Disclaimer: Ich übernehme keine Garantie für die Richtigkeit des Textes...
Zur Prüfung: Es herrschte ein sehr angenehmes Klima. Man konnte bei
„Listenauswendiglernerei“ auch gerne mal sagen „das kann ich jetzt aber nicht alles
auswendig“. Es kam sinngemäß die Antwort „müssen Sie auch nicht“. Man sollte den Stoff
verstanden haben und die Beispielfragen gut beantworten können. Ein Anfangsthema
durfte ich mir nicht auswählen, was mir aber sogar lieber war, denn so musste ich „nur“
auf Fragen antworten ;-)
Einführende Fragen: Erzählen sie 3-5 Minuten etwas zu folgendem Thema.
Was sind die wesentlichen Problemstellungen des Data Mining (Klassifikation,
Assoziationsregeln, Numerische Vorhersagen, Clustering)? (Kapitel1)
DM ist die Gewinnung impliziter, bislang unbekannter und potentiell nützlicher
Informationen aus Daten. Dabei bezeichnen Daten die aufgezeichneten Fakten.
Beim DM geht es oft darum Wissen zu sammeln und nicht nur Vorhersagen zu
treffen.
Starke Muster vorhandener Daten lassen sich oft verallgemeinern und für
Vorhersagen neuer Daten nutzen. Eine Verallgemeinerung ist notwendig, damit die
ermittelte Konzeptbeschreibung nicht an die Testdaten überangepasst ist.
In Data Mining-Anwendungen herrschen vier grundsätzlich verschiedene Arten des
Lernens vor. Beim klassifizierenden Lernen nimmt ein Lernverfahren eine Menge
klassifizierter Beispiele entgegen, aus denen es lernen soll, unbekannte Beispiele
zu klassifizieren. Beim assoziierenden Lernen werden alle Assoziationen zwischen
den Attributen berücksichtigt, nicht nur diejenigen, die einen bestimmten
Klassenwert vorhersagen. Beim Clustering werden Gruppen von
zusammengehörigen Beispielen gesucht. Bei der numerischen Vorhersage ist das
vorhersagte Ergebnis keine diskrete Klasse, sondern eine numerische Größe.
Unabhängig davon, welche Art des Lernens angewandt wird, bezeichnen wir das,
was gelernt werden soll, als das Konzept, und die Ausgabe, die ein Lernverfahren
erzeugt, als Konzeptbeschreibung. (S. 42)
Es geht im Wesentlichen um Lernen aus Beispielen.
Eingabe-Aufbereitung für DM? (Kapitel 2)
Normalerweise ist der größte Aufwand bei einem Data Mining-Verfahren die
Aufbereitung der Eingaben für eine Untersuchung. Die Daten kommen zum Teil
aus unterschiedlichen Abteilungen und unterliegen anderen Konventionen. Hier
besteht die Idee einer unternehmensweiten Datenbankintegration, dem Data
Warehousing. Das Data Warehouse stellt einen einzigen, konsistenten
Zugriffspunkt für Unternehmens – oder Organisationsdaten bereit.
1/17
Data Mining WS 05/06 Prof. Dr. N. Fuhr
Zusammenfassung von Simon Scheidegg
Oft werden zusätzliche Daten benötigt. Diese Daten werden als Overlay-Daten
bezeichnet. (S. 52)
Die Eingabe für ein Data Mining-Verfahren ist eine Instanzenmenge (vereinfacht;
im Buch werden komplexere Beispiele nicht behandelt) und wird im Allgemeinen als
Tabelle dargestellt. Jede Instanz ist ein einzelnes, unabhängiges Beispiel für das
zu erlernende Konzept (S. 45) Sie wird durch eine feste, vordefinierte Menge von
Merkmalen beschrieben, seinen Attributen (Nominal-, Ordinal-, Intervall-,
Verhältnis-Skala). Es kann sinnvoll sein, dass ein Experte durch geschickte
Attributauswahl, redundante und damit abhängige Attribute eliminiert (S. 91, S,
252)
Die meisten Verfahren berücksichtigen fehlende Werte nicht, daher sollte „fehlt“ als
spezieller Wert codiert werden.
Wenn verrauschte Attribute ein Problem sind, ist es kein guter Gedanke , das
Training auf einer sauberen Menge durchzuführen, wenn die Leistung auf einer
unreinen Datenmenge gestestet wird. Lernverfahren können lernen, mit
verrauschten Attributen umzugehen. (S. 270)
Einzelne Ausreißer können aber von einem Experten erkannt und aus der
Beispielmenge entfernt/korrigiert werden!
Wissensdarstellung für die Ausgabe beim DM? (Kapitel 3)
Entscheidungstabellen: Wie die Eingabe; evtl. können Attribute weggelassen
werden, die für die Entscheidung irrelevant sind. (S. 61)
Entscheidungsbäume: „Teile und herrsche“-Ansatz produziert Baum. Unbekannte
Instanz durchläuft den Baum von der Wurzel bis zu einem Blatt. Jeder Knoten
testet Attribute (jeweils mindestens ein Attribut, es können aber auch mehrere
gleichzeitig getestet werden) der Instanz.. Blätter weisen den Instanzen Klassen,
Mengen von Klassen oder Wahrscheinlichkeitsverteilungen zu.
Klassifikationsregeln: Regel besteht aus einer Vorbedingung und einer Folgerung.
Die Vorb. enthält Reihe von Tests, die logisch miteinander verknüpft sind. Ist die
Vorb. erfüllt, so weist die Regel Klasse, Menge von Klassen oder
Wahrscheinlichkeitsverteilungen zu. Einzelne Regeln werden oft mit ODER
verküpft, was zu Konflikten führen kann, wenn für eine Instanz unterschiedliche
Folgerungen möglich sind. Dieses Problem tritt nicht bei einer Entscheidungsliste,
die sequentiell abgearbeitet wird, auf. (S. 63)
Assoziationsregeln: ... können jedes Attribut und jede Attributkombination
vorhersagen. Das Problem besteht darin, dass es wesentlich mehr Assoziations
-als Klassifikationsregeln gibt: Ausgabe muss beschränkt werden, um nur die
stärksten Assoziationen auszugeben; nur die Regeln mit der größten Unterstützung
und der höchsten Konfidenz/Genauigkeit. (S. 67)
Regeln mit Ausnahmen: default...excpet if...then... ist logisch äquivalent zu
if...then...else... . Regeln können inkrementell erweitert werden (neue Daten,
Hintergrundwissen); Menschen denken oft in Ausnahmen. Ausnahmen behandeln
2/17
Data Mining WS 05/06 Prof. Dr. N. Fuhr
Zusammenfassung von Simon Scheidegg
Spezialfälle. (S. 69)
Relationale Regeln: Vergleich zwischen Attributwerten einer Instanz. Das erzeugt
aber größeren Aufwand. Eine einfach Lösung besteht darin, neue Attribute zu
erzeugen (z.B. binäres Attribut für die Relation „<“). (S. 72)
Erweiterungen: Regeln mit Variablen/Funktionen, induktive logische
Programmierung
Bäume für numerische Vorhersagen: Regression ist der Prozess zur Berechnung
eines Ausdrucks, der eine numerische Größe vorhersagt. Es gibt zwei Typen.
Erstens den Regressionsbaum: er ist ein Entscheidungsbaum, bei dem jedes Blatt
eine numerische Größe vorhersagt. Der Vorhersagewert ist der Mittelwert aller
Trainingsinstanzen, die dieses Blatt erreicht. Zweitens den Modellbaum: er ist ein
Entscheidungsbaum mit linearen Regressionsmodellen in den Blattknoten. (S. 74)
Instanzbasierte Repräsentation: Die Instanzen selbst repräsentieren das Wissen.
Methoden: nächster Nachbar, k-nächste Nachbarn.
Die Abstandsmetrik: Normalisierung, Gewichtung, Euklidische Distanz; Bei
nominalen Attributen z.B.: Distanz = 0 oder 1. (S. 76)
Repräsentation von Clustern: Einfache 2-D Repräsentation, Venn-Diagramm,
Probabilistische Zuordnung, Dendrogramm (Abbildung 3.8, S. 80)
Kapitel 4
Gewinnung von Entscheidungsbäumen
1R: lernt einen einstufigen Entscheidungsbaum, d.h. alle Regeln testen das gleiche
Attribut.
Jedes Attribut erzeugt eine andere Regelmenge - eine Regel für jeden Wert des
Attributs. Die Prozedur ist ganz einfach: man wertet die Fehlerrate für die
Regelmengen jedes Attributs aus und wählt die beste aus.
Missing wird wie jeder andere Attributwert behandelt. Numerische Attribute werden
mit Hilfe eines einfachen Diskretisierungsverfahrens in nominale Attribute
umgewandelt. Um Overfitting zu reduzieren: Mindestanzahl von Beispielen in der
Mehrheitsklasse jeder Partition (S. 84)
ID3: Top-down Generierung von Entscheidungsbäumen. Es handelt sich um einen
rekursiven teile-und-herrsche Ansatz:
1. Wahl eines Attributs im Wurzelknoten; Ein Zweig je möglichem Attributwert
2. Instanzen in Teilmengen aufteilen, eine für jeden Zweig
3. Schritte eins und zwei wiederholen; stoppen wenn alle Instanzen zur selben
Klasse gehören
Kriterien für die Informationsauswahl: Informationsgewinn oder Gewinnverhältnis.
Noch besser Gewinnverhältnis mit Standardkorrektur: Nur Attribute
berücksichtigen, deren Informationsgewinn größer als der Durchschnitt ist. (S. 95)
info([2,3,4]) = entropy(2/9, 3/9, 4/9) = -(2/9)log(2/9)– (3/9)log(3/9) – 4/9)log(4/9)
Konstruktion von Regeln
3/17
Data Mining WS 05/06 Prof. Dr. N. Fuhr
Zusammenfassung von Simon Scheidegg
Statistische Modellierung/Naiver Bayes: Es werden alle Attribute benutzt. Es wird
angenommen, dass alle Attribute gleich wichtig und voneinander unabhängig sind,
wenn die Klasse vorgegeben ist. Redundante Attribute sollten somit zuvor von
einem Experten eliminiert werden.
Neue Instanz mit unbekannter Klasse. Berechnung der Wahrscheinlichkeiten für
jede Klasse. Größtes Ergebnis wählen.(S. 88)
Abdeckungs-Algorithmen: Es handelt sich um trenne-und-herrsche-Algorithmen. In
jedem Schritt wird eine sinnvolle Regel erstellt und die dadurch abgedeckten
Instanzen müssen nicht weiter betrachtet werden (trenne). Anschließend Regeln für
die restlichen Instanzen erzeugen (herrschen) bis keine Instanzen mehr vorhanden
sind.
PRISM ist ein solcher Abdeckungs-Algorithmus. Er ergänzt Regeln solange, bis sie
perfekt sind. Erstes Kriterium bei der Wahl neuer Bedingungen ist die
Konzentration (richtige Vorhersagen/abgedeckte Regeln). Bei gleicher
Konzentration entscheidet die größere Abdeckung. Es wird für jede Klasse eine
Regelmenge generiert, wobei die Instanzmenge für jede Klasse neue initialisiert
wird. (S. 104)
Erzeugen von Assoziationsregeln
Assoziationsregeln können beliebige Attribute und Attributkombinationen
vorhersagen. Das Problem besteht darin, dass die Anzahl der möglichen
Assoziationen sehr groß ist. Daher muss sich die Ausgabe auf die
aussagekräftigsten Assoziationen beschränken. Wir suchen also nach Regeln mit
einer großen Unterstützung (Anzahl Instanzen, die korrekt vorhergesagt werden)
und einer hohen Konfidenz (Anzahl korrekter Vorhersagen, im Verhältnis zu allen
Instanzen, auf die die Regel anwendbar ist).
Der vorgestellte Algorithmus umfasst zwei Phasen: Zuerst werden
Gegenstandsmengen (oder Itemsets) mit der geforderten Mindestabdeckung
erzeugt, danach werden aus jeder Gegenstandsmenge die Regeln mit der
geforderten Mindestgenauigkeit herausgefiltert.
In der ersten Phase werden zu erst die Ein-Gegenstand-Mengen mit der
angegebenen Mindestabdeckung erzeugt und daraus potentielle Zwei-GegenstandMengen usw. Damit ein k-Itemset die nötige Unterstützung hat, müssen auch alle
Teilmengen die nötige Unterstützung haben (durch eine zusätzliche mit UND
verknüpfte Bedingung, wird die Unterstützung wenn überhaupt kleiner, aber
niemals größer).
Die zweite Phase des Verfahrens nimmt sich jede Gegenstandsmenge vor und
erzeugt Regeln daraus, wobei sichergestellt wird, dass die Regeln die geforderte
Mindestgenauigkeit aufweisen. Es werden (n+1)-Schluss-Regeln aus vorhandenen
n-Schluss-Regeln gebildet... (S. 112)
Instanzbasiertes Lernen
Zu einer neuen Instanz werden die dazu ähnlichsten in den Trainingsinstanzen
gesucht. Die Ähnlichkeit wird anhand der Distanzfuntkion ermittelt. Bei mehreren
Attributen ist evtl. Normalisierung erforderlich; Gewichtung?; Nominale Attribute
(Z.B.: 1 bei verschiedenen Werten, 0 bei Gleichheit); Fehlende Werte: maximale
Distanz; Rauschen: Mehrheitsvotum über die k nächsten Nachbarn. (S. 123)
4/17
Data Mining WS 05/06 Prof. Dr. N. Fuhr
Zusammenfassung von Simon Scheidegg
Numerische Vorhersage
Die Standardtechnik zur numerischen Vorhersage ist die lineare Regression.
Ergebnis ist eine Linearkombination von Attributwerten. Die Gewichte werden aus
den Trainingsdaten berechnet, so dass die Summe der Quadrate der Differenzen
über alle Trainingsinstanzen minimiert wird. Das Verfahren kann nicht angewendet
werden, wenn nichtlineare Zusammenhänge in den Daten existieren. Es kann dann
aber als Teil komplexerer Verfahren eingesetzt werden (z.B. Modellbäume).(S. 120)
Clustering
Clustering-Methoden werden eingesetzt, wenn es nicht darum geht, eine Klasse
vorherzusagen, sondern die Instanzen in natürliche Gruppen einzuteilen. Man
könnte annehmen, dass dies nur ein Spezialfall des klassifizierenden Lernens sei,
bei dem „Gruppe“ ein diskretes Attribut ist. Dies ist jedoch nicht der Fall, denn der
große Unterschied liegt darin, dass beim Clustering die Trainingsdaten nicht
klassifiziert sind, also kein Attribut vorhanden ist, dass deren
Gruppenzugehörigkeiten ausdrückt!
Der Erfolg des Clustering wird häufig danach gemessen, wie nützlich es dem
menschlichen Benutzer erscheint. Dem Clustering kein ein zweiter Schritt
klassifizierenden Lernens folgen, der Regeln erzeugt, die eine leicht verständliche
Beschreibung bieten, wie neue Instanzen in die Cluster eingeordnet werden. (S. 43,
S. 229)
Evaluierung von DM-Verfahren (Kapitel 5)
Testen, wie gut die Vorhersagen des Gelernten sind. Fehler auf den Trainingsdaten
sind dafür ein schlechter Indikator. Deswegen ist Überanpassung auch ein
Problem.
Resubtitutionsfehler bezeichnet die Fehlerrate auf den Trainingsdaten. Diese ist
extrem optimistisch.
Wenn ausreichend Beispiele vorhanden sind, kann man die Daten in eine
Trainings- und eine Testmenge aufteilen. Hierbei kommt oft Stratifikation zum
Einsatz, d.h. in beiden Mengen ist jeweils die gleiche Klasse verhältnismäßig
gleichstark vertreten. Man kann auch mit drei disjunkten Mengen arbeiten:
Trainingsdaten, Validierungsdaten (Parameteroptimierung) und Testdaten.
Nach der Evaluierung können alle Daten zum Lernen des endgültigen Klassifikators
genutzt werden. Je mehr Trainingsdaten, desto besser der Klassifikator. Je
umfangreicher die Testdaten, desto genauer die Schätzung der Fehlerrate.
Andere Aspekte: Wahl des Qualitätsmaßes (Anzahl korrekter Klassifikationen,
Genauigkeit der Wahrscheinlichkeitsschätzungen, Fehler in numerischen
Vorhersagen) und Kosten für verschiedene Arten von Fehlern
5/17
Data Mining WS 05/06 Prof. Dr. N. Fuhr
Zusammenfassung von Simon Scheidegg
Evaluierung:
Wie kann man von der Erfolgsrate auf einer Teststichprobe auf die Qualität bei
zukünftigen Anwendungen schließen (Vertrauensintervall)?
Die wahre Erfolgsrate befindet sich innerhalb eines bestimmten Intervalls mit einer
bestimmten Wahrscheinlichkeit. Das Intervall nennt man auch Vertrauensintervall.
Je größer die Testmenge ist, desto kleiner wird das Vertrauensintervall bei gleicher
Wahrscheinlichkeit.
Die Standardabweichung sinkt bei steigender Anzahl N.(S. 131)
Welche Methoden gibt es, um eine begrenzte Datenmenge optimal für Trainings- und
Teststichproben zu nutzen? (Kreuzvalidierung, leave one out, bootstrap)
Bei der Kreuzvalidierung legt man eine bestimmte Anzahl von Partitionen fest. Es
wird jeweils eine Partition für das Testen und die restlichen für das Training
verwendet. Jede Partition wird einmal für das Testen verwendet. Am Ende werden
die Fehlerschätzungen gemittelt, um die Gesamtfehlerschätzung zu erhalten. Die
zufällige Variation bei der Auswahl der Partitionen führt zu unterschiedliche
Ergebnissen-> zehn zehnfache Kreuzvalidierungen.
Leave-One-Out hält jeweils eine Instanz zum Testen fest, die restlichen Instanzen
werden für das Training benutzt. Es wird nach der korrekten Vorhersage für die
ausgelassene Instanz beurteilt, also 1 für Erfolg und 0 für Misserfolg; Nutzt die
Daten optimal aus; Keine zufällige Stichprobenwahl (mathematisch gesehen
korrekte Aussage, aber DM-technisch betrachtet haben die meisten Lernverfahren
eine Ausgabe, die abhängig von der Reihenfolge in der Eingabetabelle ist); Aber
großer Rechenaufwand und es wird eine nicht-stratifizierte Stichprobe garantiert.
0.632-Bootstrap zieht n Instanzen aus einer Beispielmenge der Größe n mit
Ersetzen. Die Wahrscheinlichkeit, dass eine Instanz nicht gezogen wird beträgt
0.368. Alle Instanzen, die nicht gezogen wurden, bilden die Testmenge. Die
Fehlereinschätzung aus den Testdaten ist sehr pessimistisch (trainiert wurde auf
nur ~63% aller Instanzen). Daher wird die Fehlerquote mit dem optimistischen
Resubititionsfehler verrechnet, wobei der Resubtitutionsfehler ein geringeres
Gewicht bekommt. Der Vorgang wird mehrfach wiederholt und der Mittelwert der
Fehlerrate berechnet.
Wahrscheinlich handelt es sich um die beste Methode, um die Qualität bei sehr
kleinen Datenmengen zu schätzen. Aber es gibt auch Probleme, so ist z.B. der
Resubtitionsfehler bei instanzbasiertem Lernen 0%.
Wie kann man DM-Verfahren bzgl. ihrer Qualität vergleichen?
Welches von zwei Lernverfahren besser ist, kann man z.B. testen, indem man mit
beiden eine zehn zehnfachen KV durchführt und das Ergebnis vergleicht. Jedoch
ist anschließend nicht bekannt, ob die unterschiedlichen Ergebnisse statistisch
signifikant sind.
Wir bilden die Differenz der beiden Ergebnisse und testen, ob diese innerhalb der
Vertrauensgrenzen für die Student-Verteilung mit neun (weil Mittelwerte von 10 KV)
Freihatsgraden liegt. Je größer das Signifikanzniveau ist, desto größer ist das
6/17
Data Mining WS 05/06 Prof. Dr. N. Fuhr
Zusammenfassung von Simon Scheidegg
Vertrauensintervall. Liegt die Differenz außerhalb des Vertrauensintervalls, so wird
eine statistische Signifikanz gefolgert. (S. 138)
Ein gutes Modell ist ein einfaches Modell, das eine hohe Genauigkeit auf den
vorhandenen Daten erzielt (Axiom). Das Prinzip der MDL (Minimum Description
Length) geht davon aus, dass die beste Theorie diejenige ist, die die Daten am
stärksten komprimiert.
Welche anderen Qualitätskriterien für Klassifikationsverfahren gibt es, und wie kann man
diese messen? (Vorhersage von Wahrsch., Kosten)
Bei der Vorhersage von Wahrscheinlichkeiten gibt es die Quadratische
Verlustfunktion und die Informatorische Verlustfunktion. Die Quadratische
Verlustfunktion berechnet sich mit Sum ((pj – aj)²), wobei alle a's gleich 0 sind außer
die tatsächliche Klasse gleich 1 und die p's sind die vorausgesagten
Wahrscheinlichkeiten. Es werden also alle vorausgesagten Wahrscheinlichkeiten
berücksichtigt. Bei der Informatorischen Verlustfunktion wird nur die eingetretene
Klasse berücksichtigt (-log2 pi). (S. 142) Problem mit unendlich: Schätzer.
Sollen Kosten berücksichtigt werden, weil die Kosten von falschen Positiven
ungleich der Kosten von falschen Negativen ist, so gibt es verschiedene
Vorgehensweisen.
Bei einem Steigerungsdiagramm werden die Instanzen de Testmenge zunächst
nach der vorhergesagten Wahrscheinlichkeit (für den Fall positiv) absteigend
sortiert. Dann wird zu jeder Instanz eingetragen, ob sie tatsächlich positiv ist. Trägt
man das Ergebnis in ein Diagramm ein (x-Achse Stichprobengröße, y-Achse
Anzahl Erfolgsfälle), erhält man einen Graphen ähnlich einer Wurzelfunktion (nach
Glättung).
ROC-Kurven sind ähnlich zu Steigerungsdiagrammen. In der y-Achse steht der
Prozentsatz echter Positiver der Testmenge und auf der x-Achse wird der
Prozentsatz falscher Positiver eingetragen. Durch Kreuzvalidierung erhält man eine
glatte Kurve. Erzeugt man ROC-Kurven für zwei Verfahren, kann man eine gute
Visualisierung ihrer Kostenunterschiede bei unterschiedlich großen Stichproben
erhalten. D.h. z.B. dass man bei kleinen Mengen eine Methode A und bei größeren
Mengen eine Methode B wählen würde. (S.146)
Um Lernkosten zu berücksichtigen, können künstlich neue Instanzen in der
Trainingsmenge erzeugt werden. Angenommen man erhöht die Anzahl der noInstanzen in einer Datenmenge künstlich um den Faktor 10, so erhält man eine
Entscheidungsstruktur, die darauf spezialisiert ist, Fehler für no-Instanzen zu
minimieren, da diese zehnfach bestraft werden. Testet man nun mit einer
unveränderten Testmenge, so gibt es weniger falsche Positive als falsche Negative.
(s. 154)
7/17
Data Mining WS 05/06 Prof. Dr. N. Fuhr
Zusammenfassung von Simon Scheidegg
Kapitel 6
Damit ein Algorithmus für ein breites Spektrum an Anwendungen einsetzbar ist, muss er
numerische Attribute unterstützen, fehlende Werte erlauben, robust gegenüber
verrauschten Daten sein und in der Lage sein, beliebige Konzeptbeschreibungen zu
approximieren (zumindest im Prinzip). Die grundlegenden Verfahren müssen erweitert
werden, um diese Anforderungen zu erfüllen. (S. 169)
Entscheidungsbäume (von ID3 zu C4.5):
Wie behandelt man numerische Attribute?
Standardmethode ist die binäre Aufteilung. Es gibt aber viele mögliche
Aufteilungspunkte. Den besten kann man z.B. anhand der Informationsgewinns
ermitteln. Bei einer Mehrwegeaufteilung ist die Übersicht besser als bei einer
binären Aufteilung (nominales Attribut kann höchstens einmal in jedem Pfad des
Baums getestet werden). (S. 171) Mehrwegeaufteilung: Diskritisierung des
numerischen Attributes.
Wie behandelt man fehlende Werte?
Zwei unterschiedliche Vorgehensweisen. Wenn das Fehlen eines Attributs in
irgendeiner Weise von Bedeutung ist, kann man es als eigenen Wert betrachten
(Missing). Andernfalls gibt es eine andere Möglichkeit: Die Instanz mit fehlendem
Wert wird mit Hilfe einer Gewichtung zerlegt und ihre Teile werden durch alle
Verzweigungen geschickt, proportional zu der Anzahl der Trainingsinstanzen, die
diese Verzweigungen durchlaufen. (S. 173)
Wie funktioniert Pruning?
Das Ziel von Pruning ist die Vermeidung von Überadaption an verrauschte Daten
oder generell die Reduzierung von Overfitting. Pruning führt aber auch zu
Performance-Steigerungen, indem es die Größe des Baumes reduziert (Subtree
Replacement) oder die Anzahl der „Abfragen“ verringert, indem es häufige
Auswertungen näher an der Wurzel ansiedelt als seltene (Subtree-Raising).
Beim Postpruning wird zunächst der vollständige Baum aufgebaut. Das Problem ist,
dass einige Teilbäume aufgrund von Zufälligkeiten entstanden sein können. Es gibt
zwei unterschiedliche pruning-Operationen: Ersetzen von Teilbäumen (Subtree
replacement) und Hochziehen von Teilbäumen (Subtree raising).
Möglich Strategien dabei sind Fehlerabschätzung, Signifikanztests und das MDLPrinzip. Es wird nur dann abgeschnitten, wenn der geschätzte Fehler reduziert wird.
(S. 174)
Wie kann man die Fehlerrate abschätzen?
Zwei Ansätze:
1. Benutze zurückgelegte Datensätze zum Abschneiden („reduced-error-pruning“)
2. Die C4.5-Methode schätzt ein Vertrauensintervall aus den Trainingsdaten und
benutzt daraus abgeleiteten heuristischen Schwellenwert zum Abschneiden. Ist
die Fehlerabschätzung für einen Elternknoten geringer als die kombinierte
8/17
Data Mining WS 05/06 Prof. Dr. N. Fuhr
Zusammenfassung von Simon Scheidegg
Fehlerabschätzung für die Kinder, so wird abgeschnitten. (S. 177)
Wie kann man einen Baum in Regeln überführen? Welche Probleme treten dabei auf?
Erzeuge für jedes Blatt eine Regel.
Zuerst werden für jede Regel solange Bedingungen, die die geschätzte Fehlerrate
reduzieren, gelöscht, bis es keine solche Bedingung mehr gibt. Mögliche Duplikate
werden gelöscht. Es ist nicht garantiert, dass dadurch die optimalsten Regeln
gefunden werden, aber sonst wäre es praktisch nicht durchführbar (betrachte alle
Teilmengen von Bedingungen).
Trotzdem enormer Rechenaufwand: „Für jede Bedingung, die potentiell gelöscht
werden kann, muss die Wirkung der Regel auf alle Trainingsinstanzen neu evaluiert
werden.“
Anschließend wird jede Klasse für sich betrachtet. Es wird nach einer guten
Teilmenge gesucht. Diese Teilmengen werden dann noch geordnet, um Konflikte
zu vermeiden.
Abschließend werden Regeln entfernt, wenn dies den Fehler auf den
Trainingsdaten reduziert. (S. 181)
9/17
Data Mining WS 05/06 Prof. Dr. N. Fuhr
Zusammenfassung von Simon Scheidegg
Klassifikationsregeln
Kriterien für die Auswahl von Auswertungen?
Grundlegender Abdeckungsalgorithmus (Abschnitt 4.4) fügt Bedingungen zu einer
Regeln, um die Präzision zu erhöhen. Wobei immer zuerst die Regel mit dem
höchsten „Gewinn“ ausgewählt wird. Das ist abhängig von dem gewählten Maß. Bei
der korrektheitsbasierten Methode wird die Bedingung ausgewählt, die das höchste
Verhältnis positive Beispiele/negative Beispiele erzeugt. Dabei können Regeln mit
sehr geringer Abdeckung entstehen (Spezialfälle oder Rauschen?). Bei der
informationsbasierten Methode werden positive Instanzen stärker als die negativen
Instanzen betont. (S. 185)
Fehlende Werte und numerische Attribute?
Abdeckungs-Algorithmen für Entscheidungslisten weisen in dieser Hinsicht einen
klaren Vorteil gegenüber Entscheidungsbaumalgorithmen auf: Heikle Beispiele
können fast bis zum Ende des Verfahrens hinausgeschoben werden, wo sie
weniger heikel wirken. Alternativ können auch andere Bedingungen benutzt
werden, um positive Instanzen zu selektieren.
In einigen Fällen ist es jedoch besser, „fehlend“ als einen gesonderten Wert
(Missing) zu behandeln.
Numerische Attribute werden wie bei Entscheidungsbäumen behandelt. Für jedes
numerische Attribut werden Instanzen nach dem Attributwert sortiert und an jeder
möglichen Stelle wird eine binäre Auswertung in Betracht gezogen. (S. 186)
Erzeugung "guter" Regeln und Entscheidungslisten
Es geht nicht darum perfekte Regeln zu generieren, sondern es sollen lieber
„sinnvolle“ Regeln gefunden werden, die Überanpassung an die Trainingsmenge
vermeiden. Der Wert einer Regel lässt sich unter anderem durch die Überlegung
quantifizieren, mit welcher Wahrscheinlichkeit eine völlig zufällig gewählte Regel die
Genauigkeit genauso gut oder besser erhöht. Je höher diese Wahrscheinlichkeit,
desto schlechter ist die Regel (Axiom). So kann sehr leicht geprüft werden, ob eine
Regel durch das Hinzufügen einer Bedinung besser oder schlechter wird, indem
man prüft ob die Wahrscheinlichkeit geringer bzw. höher wird. (S. 187)
Um eine gute Regel für eine gegebene Klasse zu erzeugen, kann man
folgendermaßen vorgehen: Zunächst entwickelt man die beste Regel nach dem
elementaren Abdeckungsalgorithmus (Erstes Kriterium: Genauigkeit; Zweites
Kriterium: Abdeckung; s. S. 106). Anschließend wird solange die letzte Bedingung
dieser Regel entfernt, bis sich ihr Wahrscheinlichkeitswert nicht mehr verbessert.
Dies kann man als einen Baustein zum Erzeugen von guten Entscheidungslisten
verwenden. Hierbei geht man z.B. so vor, dass man solange Regeln erzeugt bis
alle Instanzen abgedeckt sind. Sobald eine Regel endgültig festgeschrieben wurde
(s.o.), werden alle durch diese Regel abgedeckten Instanzen entfernt. In jedem
Durchlauf, wird für jede Klasse, für die noch Instanzen vorhanden sind, eine Regel
erzeugt. Die beste dieser Regeln wird festgeschrieben und die durch diese Regeln
abgedeckten Instanzen gelöscht. (S. 190)
10/17
Data Mining WS 05/06 Prof. Dr. N. Fuhr
Zusammenfassung von Simon Scheidegg
Wahrscheinlichkeitswert zur Regelevaluation
Pruning von Regeln
Ausnahme: Kein Pruning bei vollständigen und korrekten Datenmengen!
Prepruning: Bedingungen solange hinzufügen, bis keine Bedingung mehr gefunden
wird, die – beurteilt nach dem gewählten Maß (z.B. Der Wahrscheinlichkeitswert;
Informationsgewinn; Erfolgrate etc.) - eine Verbesserung der Regel bewirkt.
Postpruning: Erst die komplette Regel anhand des elementaren
Abdeckungsalgorithmus erzeugen und anschließend beschneiden.
Für statistische Validität muss das Maß auf Daten berechnet werden, die nicht zum
Trainieren benutzt wurden: Aufteilung der Trainingsmenge in Wachstums- und
Pruningmenge.
Reduced-error pruning generiert volle Regelmenge und beschneidet sie dann.
Incremental reduced-error pruning vereinfacht jede Regel, sobald sie generiert
wurde. Nach der Ausgabe einer Regel und der Entfernung der abgedeckten
Instanzen aus der Trainingsmenge können die Daten neu aufgeteilt werden.
Stratifikation bringt Vorteile. (S. 193)
11/17
Data Mining WS 05/06 Prof. Dr. N. Fuhr
Zusammenfassung von Simon Scheidegg
Support-Vektor-Maschinen
SVM sind Algorithmen zum Lernen linearer Klassifikatoren. Sie sind wenig anfällig gegen
Überadaption, da sie eine spezielle lineare Entscheidungsgrenze lernen:
maximal diskriminierende Hyperebene: geometirsche / mathematische Definition
Man geht von einer Zwei-Klassen-Datenmenge aus, deren Klassen linear getrennt
werden können (Anm.: Verallgemeinerung ist möglich (s. S. 209)). D.h. es gibt eine
Hyperebene im Instanzraum, die alle Trainingsinstanzen korrekt klassifiziert. Die
maximal diskriminierende Hyperebene ist die Hyperebene, die die größte Trennung
zwischen den Klassen schafft. Alle Instanzen beider Klasse werden jeweils von
einer konvexen Hülle umgeben. Die Konvexe Hülle ist das konvexe Polygon m
dessen Umriss sichtbar wird, wenn man jeden Punkt der Menge (hier die Instanzen
der jeweiligen Klasse) mit jedem anderen Punkt verbindet. Die konvexen Hüllen
können sich nicht überlappen, da wir angenommen haben, dass die Klassen linear
trennbar sind. Die MDH liegt orthogonal zur kürzesten Linie, die die beiden
konvexen Hüllen verbindet und durchschreitet sie genau in der Mitte. Die Instanzen,
die am nächsten an der MDH liegen, heißen Support-Vektoren. Die SupportVektoren definieren die MDH eindeutig. Alle anderen Instanzen können aus dem
Modell entfernt werden. Daher vermeidet das Verfahren Überanpassung an die
Trainingsdaten. Werden neue Instanzen hinzugefügt, muss die MDH nur neu
ausgerichtet werden, wenn die neuen Instanzen Support-Vektoren sind. (S. 206)
Erweiterung auf nichtlineare Klassengrenzen
Es wird eine Attributtransformation durchgeführt. Dies führt jedoch auf den ersten
Blick zu einer hohen Berechnungskomplexität. Dies wird durch einen
mathematischen Trick gelöst. Glücklicherweise stellt sich heraus, dass das
Skalarprodukt auf der ursprünglichen Attributmenge berechnet werden kann, bevor
die nichtlineare Abbildung durchgeführt wird. (S. 208)
Nochmal mit anderen Worten...
Wir haben wie im linearen Fall die max. DH, die für Stabilität sorgt und somit vor
Überanpassung schützt. Berechnungen der MDH erfolgt mit Hilfe von
Skalarprodukten -> im hochdimensionalen Raum komplex. Aufgrund eines
mathematischen Tricks können die Berechnungen aber im ursprünglichen
niedrigdimensionalen Raum durchgeführt werden.
12/17
Data Mining WS 05/06 Prof. Dr. N. Fuhr
Zusammenfassung von Simon Scheidegg
Instanzbasiertes Lernen
Wie kann man die Menge der gespeicherten Trainingsinstanzen reduzieren?
IB2: Jedes Beispiel wird in Bezug zu den bereits gesichteten Exemplaren
klassifiziert, und wird genau dann gespeichert, wenn es falsch klassifiziert wurde.
Leider funktioniert diese Strategie bei verrauschten Daten weniger gut. (Anm.: Eine
Standardlösung, um mit verrauschten Daten fertig zu werden ist k-NN).
IB3: Zahl der gespeicherten Instanzen – insbesondere der verrauschten Exemplare
– wird dramatisch reduziert. Neue Instanzen werden zunächst getestet. Dabei wird
überprüft, wie gut ihre Vorhersageleistung wäre, wenn sie zur Vorhersage genutzt
werden würden. Ab einer bestimmten Vorhersageleistung werden sie zur
Vorhersage genutzt bzw. endgültig verworfen.
Wahl einer geeigneten Distanzmetrik?
s.o. ?? Generalisierung mit Prototypen (Rechtecke erzeugen, die Instanzen
gleicher Klassen „umranden“)
IB5: Die Relevanz jedes Attributs wird inkrementell durch eine dynamische
Aktualisierung seiner Gewichtung angepasst. Alle Attributgewichtungen werden
jedes mal aktualisiert, wenn eine neue Trainingsinstanz klassifiziert wird. Dabei wird
das Ausmaß der Erhöhung oder Erniedrigung von der Größe der Differenz zum
jeweiligen Attributwert des NN bestimmt.
13/17
Data Mining WS 05/06 Prof. Dr. N. Fuhr
Zusammenfassung von Simon Scheidegg
Numerische Vorhersage:
Regressionsbäume vs. Modellbäume
Bäume, die zur numerischen Vorhersage verwendet werden, sind wie normale
Entscheidungsbäume. Mit einer Ausnahme: Sie speichern, bei jedem Blatt
entweder einen Klassenwert, der den Durchschnittswert der Instanzen
repräsentiert, die das Blatt erreichen (Regressionsbaum) oder ein lineares
Regressionsmodell, das den Klassenwert der Instanzen vorhersagt, die das Blatt
erreichen (Modellbaum).
Welches Kriterium verwendet man zum Aufbau des Modellbaums?
Wähle das Attribut, dass die Varianz innerhalb der entstehenden Teilmengen
minimiert. Oder genauer: Reduktion der Standardabweichung. Abbruch, wenn
Standardabweichung < 5% von der Standardabweichung der gesamten
Trainingsmenge bzw. zu wenige Instanzen (z.B. < 4).
Welches zum Pruning?
Berechnung der Fehlerrate für einen Knoten: Als erstes wird die absolute Differenz
zwischen dem vorhergesagten Wert und dem tatsächlichen Klassenwert über alle
Trainingsinstanzen, die den Knoten erreichen, hinweg gemittelt. Da das zu
optimistisch ist (Testen mit Trainingsdaten...), wird ein Faktor eingeführt: (n+v)/(n-v)
mit n: Anzahl der Trainingsinstanzen, die diesen Knoten erreichen und v: Anzahl
der Parameter in dem linearen Modell. Letztendlich erhält man ((n+v)/(n-v)) *
average_absolute_error.
Das Pruning erfolgt, sobald für jeden inneren Knoten ein lineares Modell vorhanden
ist. Der Baum wird von den Blättern aus zurückgeschnitten, solange der geschätzte
Fehler sinkt. Dabei werden auch jeweils von allen inneren Knoten möglichst viele
Terme aus dem linearen Modell entfernt, um dessen geschätzte Fehlerrate zu
minimieren (s. S. 224). Das Beschneiden kann stark ausfallen: ein einzelnes Modell
kann einen größeren Teilbaum ersetzen. (S. 221)
Glättung bei Modellbäumen
Wenn ein Modellbaum verwendet wird, um der Wert einer Testinstanz
vorherzusagen, so wird standardmäßig lediglich das lineare Modell des
entsprechenden Blattknotens verwendet. Beim Einsatz von Glättung wird auch die
Vorhersage des Elternknotens verwendet. Man kann das gleiche Resultat erzielen,
wenn man die Vorfahr-Modell direkt mit in die Blätter einbezieht (hat den Nachteil,
dass die Blattmodelle tendenziell größer werden). (S. 220)
14/17
Data Mining WS 05/06 Prof. Dr. N. Fuhr
Zusammenfassung von Simon Scheidegg
Wie funktioniert lokal gewichtete lineare Regression?
Die lokal gewichtete Regression erzeugt lokale Modelle zur Vorhersagezeit, indem
sie Instanzen in der Nachbarschaft der Testinstanz ein größeres Gewicht gibt. Es
gibt einen Glättungsparameter, der zur Skalierung der Distanzfunktion verwendet
wird. Wird für diesen Parameter ein kleiner Wert gewählt, erhalten nur Instanzen in
unmittelbarer Umgebung zur Testinstanz eine signifikante Gewichtung; wird ein
großer Wert gewählt, haben auch Instanzen in größerer Entfernung einen
merkbaren Einfluss auf den Vorhersagewert. Je mehr Verrauschtheit vorhanden ist,
desto größer sollte der Parameter sein. Im Allgemeinen wird ein geeigneter
Glättungsparameter mit Kreuzvalidierung gefunden (welch' Wunder!). (S. 227)
15/17
Data Mining WS 05/06 Prof. Dr. N. Fuhr
Zusammenfassung von Simon Scheidegg
Clustering
Clustering-Methoden werden angewendet, wenn es nicht darum geht, eine Klasse
vorherzusagen, sondern die Instanzen in natürliche Gruppen einzuteilen.
Wie funktioniert k-means-Clustering?
Zum Clustern der Daten in k Gruppen (k vorgegeben):
1. Wähle k Zentroiden (z.B. zufällig)
2. Ordne Instanzen den Clustern zu, anhand des Abstands zu Zentroiden
3. Berechne Zentroiden neu
4. Wiederhole die Schritte 2 und 3 bis Konvergenz erreicht wurde
Das Ergebnis ist abhängig von den initialen Zentroiden -> Wiederholungen,
Expertenwissen...(S. 230)
Wie funktioniert inkrementelles Clustering?
Das inkrementelle Clustering gruppiert Instanzen hierarchisch. Es stützt sich auf ein
Qualitäts-Maß für Cluster, das als Kategorienützlichkeit bezeichnet wird. Sie misst
die Gesamtqualität einer Aufteilung von Instanzen in Cluster.
Am Anfang besteht der Baum aus der Wurzel alleine. Eine Instanz nach der
anderen wird hinzugefügt, und der Baum wird in jeder Phase entsprechend
aktualisiert. Bei der Entscheidung, wie und wann eine Aktualisierung durchgeführt
wird, spielt die Kategorienützlichkeit eine große Rolle.
Es wird nach einem passenden Gastgeber für die neue Instanz gesucht. Bester
und zweitbester Gastgeber werden festgehalten. Es wird erwogen diese beiden
Knoten zu verschmelzen (Kriterium: Kategorienützlichkeit). Falls die keine
Verschmelzung stattfindet, wird erwogen den Gastgeberknoten aufzulösen und ihn
durch seine Kinder zu ersetzen. Anschließend wird die neue Instanz entweder
seinem Gastgeber zugeordnet (falls Gastgeber ein Blatt ist: neues Cluster erstellen;
ansonsten rekursiver Aufruf...) oder die neue Instanz bildet ein neues Cluster
alleine.
Paramter:
• Schärfe: Bei der Abschätzung der Standardabweichung eines Attributs für einen
bestimmten Knoten kann das Ergebnis Null sein (z.B. nur eine Instanz im
Knoten). Null-Varianzen erzeugen bei der Berechnung der Kategorienützlichkeit
unendlich große Werte. Daher wird jedes Attribut mit einer Mindestvarianz
versehen, der Schärfe.
• Cutoff: Dieser Parameter legt einen Schwellwert fest: Wenn sich durch das
hinzufügen eines neuen Knotens ein entsprechend geringer Anstieg der
Kategorienützlichkeit ergibt, so wird der neue Knoten abgeschnitten und seine
Instanzen seinem Elternknoten zugewiesen. (S. 231)
16/17
Data Mining WS 05/06 Prof. Dr. N. Fuhr
Zusammenfassung von Simon Scheidegg
Wie kann man beim inkrementellen Clustering die Kategorienützlichkeit messen?
Division durch k vermeidet Überanpassung, ansonsten erhielte man die beste
Kategorienützlichkeit, wenn man jede Instanz in ein eigenes Cluster setzen würde.
Wie funktioniert probabilistisches Clustering?
Suche die wahrscheinlichsten Cluster für die Daten. Eine Instanz gehört mit einer
gewissen Wahrscheinlichkeit zu einem bestimmten Cluster.
Endliche Mischungen: Anzahl der Cluster wird vorgegeben. Jedes Cluster hat eine
Wahrscheinlichkeitsverteilung, die die Wahrscheinlichkeit von Attributwerten in
diesem Cluster liefert. Beim Lernen der Cluster wird für jedes Cluster der Mittelwert
und die Standardabweichung bestimmt (im Fall einer Normalverteilung). Als
Gütekriterium wird die Wahrscheinlichkeit der Trainingsdaten benutzt. (S. 238)
Der EM-Algorithmus findet ein lokales Maximum dieser Wahrscheinlichkeiten.
Solange eine Verbesserung stattfindet werden zwei Schritte wiederholt:
1. E „Erwartungs“-Schritt: Berechne Cluster-Wahrscheinlichkeit für jede Instanz
2. M „Maximierungs“-Schritt: Verwende die Wahrscheinlichkeiten, um die
Parameter der Verteilungen neu abzuschätzen. (S. 241)
17/17
Herunterladen