Browsing around a digital library seminar

Werbung
Folien zu “Data Mining”
von
I. H. Witten and E. Frank
übersetzt von N. Fuhr
6
Implementierung:
Reale ML-Verfahren
 Entscheidungsbäume: von ID3 zu C4.5
 Pruning, fehlende Werte, nummerische Attribute, Effizienz
 Entscheidungsregeln: von PRISM zu Induct und PART
 Fehlende Werte, nummerische Attribute, Berechnung der
Signifikanz, Regeln mit Ausnahmen
 Erweiterte lineare Klassifikation: Support-Vektoren
 Nichtlineare Grenzen, Hyperebenen mit maximalem Abstand,
Kernel-Funktionen
 Instanz-basiertes Lernen
 Beschleunigung, Rauschunterdrückung, Attributgewichtung,
Generalisierung von Exemplaren
 Nummerische Vorhersage
 Regressions-/Modell-Bäume, lokal gewichtete Regression
 Clustern: hierarchisch, inkrementell, probabilistisch
 K-means, heuristisch, Mischungs-Modell, EM, Bayes'sches Cl.
2
Algorithmen für praktische
Anwendungen
 Damit ein Algorithmus für ein breites
Spektrum an Anwendungen einsetzbar ist,
muss er:




Nummerische Attribute unterstützen
Fehlende Werte erlauben
Robust gegenüber verrauschten Daten sein
In der Lage sein, beliebige
Konzeptbeschreibungen zu approximieren
(zumindest im Prinzip)
 Die grundlegenden Verfahren müssen
erweitert werden, um diese Anforderungen
zu erfüllen
3
Entscheidungsbäume
 Erweiterung von ID3:
 Unterstützung nummerischer Attribute: einfach
 Mit fehlenden Werten angemessen umgehen: schwieriger
 Stabilität bei verrauschten Daten:
erfordert Pruning-Mechanismus
 Endergebnis: C4.5 (Quinlan)
 Bekanntester und (wahrscheinlich) meistbenutzter LernAlgorithmus
 Kommerzieller Nachfolger: C5.0
4
Nummerische Attribute
 Standardmethode: binäre Aufteilung
 z.B. temp < 45
 Im Gegensatz zu nominalen Attributen hat jedes
Attribut viele mögliche Aufteilungspunkte
 Lösung besteht in einfacher Erweiterung:
 Berechne den Informationsgewinn (oder ein anderes
Maß)
für jeden möglichen Aufteilungspunkt des Attributs
 Wähle “besten” Aufteilungspunkt
 Informationsgewinn für den besten Aufteilungspunkt =
Informationsgewinn des Attributs
 Höherer Berechnungsaufwand
5
Wetterdaten
Outlook
Temperature
Humidity
Windy
Play
Sunny
Hot
High
False
No
Sunny
Hot
High
True
No
Overcast
Hot
High
False
Yes
Rainy
Mild
Normal
False
Yes
…
If
If
If
If
If
…Outlook
…
Temperature
…Humidity
… Windy
Sunny
85
85
False
No
Sunny
80
90
True
No
Play
Overcast
83
86
False
Yes
outlook = sunnyRainy
and humidity
75= high then
80 play = no
False
Yes
outlook = rainy and windy = true then play = no
…
…
…
…
…
outlook = overcast then play = yes
humidity = normal then play = yes
none of the If
above
then =
play
= yes
outlook
sunny
and humidity > 83 then play = no
If outlook = rainy and windy = true then play = no
If outlook = overcast then play = yes
If humidity < 85 then play = yes
If none of the above then play = yes
6
Beispiel
 Aufteilung nach dem Attribut temperature:
64 65
Yes No
68 69 70 71
Yes Yes Yes No
72
No
72 75
Yes Yes
75 80
Yes No
81 83 85
Yes Yes No
 Z.B. temperature < 71.5: yes/4, no/2
temperature ≥ 71.5: yes/5, no/3
 Info([4,2],[5,3])
= 6/14 info([4,2]) + 8/14 info([5,3])
= 0.939 Bits
 Platziere die Aufteilungspunkte in der Mitte
zwischen den Werten
 Kann alle Aufteilungspunkte in einem Durchlauf
evaluieren!
7
Vermeide wiederholtes
Sortieren!
 Sortiere Instanzen nach den Werten des
nummerischen Attributs
 Zeitkomplexität für das Sortieren O (n log n)
 Muss dies für jeden Knoten des Baums
wiederholt werden?
 Nein! Sortierreihenfolge der Kinder kann aus
der Sortierreihenfolge der Eltern abgeleitet
werden
 Zeitkomplexität für die Ableitung: O (n)
 Nachteil: für jedes nummerische Attribut muss ein
Vektor von Sortierindices verwaltet werden.
8
Binäre vs. MehrwegeAufteilung
 Aufteilung (Mehrwege-) eines nominalen Attributs
nutzt die Information des Attributs vollständig aus
 Nominales Attribut wird höchstens einmal in jedem Pfad
des Baums getestet
 Im Gegensatz zu binären Aufteilungen von
nummerischen Attributen!
 nummerische Attribute können mehrfach entlang eines
Pfades im Baum getestet werden
 Nachteil: Baum ist schwer zu verstehen
 Abhilfe:
 nummerische Attribute vorher diskretisieren, oder
 Mehrwege-Aufteilung (anstelle binärer)
9
Berechnung von
Mehrwege-Aufteilungen
 Einfache und effiziente Methode zur Generierung
von Mehrwege-Aufteilungen: Greedy-Algorithmus
 Dynamische Programmierung findet eine optimale
Mehrwege-Aufteilungen in O (n2) Schritten
 imp (k, l, m ) ist die Unreinheit (impurity) der besten
Aufteilung der Werte xl … xm in k Teilintervalle
 imp (k, 1, i ) =
min0<j <i imp (k–1, 1, j ) + imp (1, j+1, i )
 imp (k, 1, N ) liefert die beste k-Wege-Aufteilung
 In der Praxis funktioniert der Greedy-Algorithmus
genauso gut
10
Fehlende Werte
 Teile Instanzen mit fehlenden Werten auf
 Jeder Teil, der einen Zweig entlang läuft, erhält ein
Gewicht proportional zur relativen Häufigkeit des
Zweiges
 Die Gewichte summieren sich zu 1
 Der Informationsgewinn kann auch für Anteile von
Instanzen berechnet werden
 Benutze Summe der Gewichte anstelle von Anzahlen
 Bei der Klassifikation wird die Instanz in gleicher
Weise aufgeteilt
 Mische die Wahrscheinlichkeitsverteilung
entsprechend den Gewichten
11
Pruning
 Vermeide Überadaption an verrauschte Daten
 Beschneide (prune) den Entscheidungsbaum
 Zwei Strategien:
•
•
Postpruning
nehme einen vollständigen Entscheidungsbaum und
entferne unzuverlässige Teile
Prepruning
es wird nicht weiter verzweigt, wenn die Informationen
unzuverlässig werden
 Postpruning wird in der Praxis bevorzugt—
Prepruning kann nicht “früh genug stoppen”
12
Prepruning
 Basiert auf einen Signifikanztest
 Der Baum wird nicht mehr erweitert, wenn es keinen
statistisch signifikanten Zusammenhang zwischen
irgendeinem Attribut und der Klasse an einem
bestimmten Knoten gibt
 Populärster Test: Chi-Quadrat-Test
 ID3 benutzt Chi-Quadrat-Test zusätzlich zum
Informationsgewinn
 Nur statistisch signifikante Attribute werden bei der
Auswahl nach dem Informationsgewinn
berücksichtigt
13
Früher Abbruch
a
b
class
1
0
0
0
2
0
1
1
3
1
0
1
4
1
1
0
 Prepruning kann die Expansion des Baums zu früh
stoppen
 Klassisches Beispiel: EXOR/Paritäts-Problem
 Kein einzelnes Attribut korreliert statistisch signifikant
mit einer Klasse
 Die Struktur ist nur im voll expandierten Baum sichtbar
 Prepruning würde den Wurzelknoten nicht expandieren
 Aber: EXOR-Probleme treten selten in der Praxis
auf
 Und: Prepruning ist schneller als Postpruning
14
Postpruning
 Erst wird der vollständige Baum aufgebaut
 Dann wird er beschnitten
 Der vollständige Baum zeigt alle Zusammenhänge
zwischen den Attributen
 Problem: einige Teilbäume können aufgrund von
Zufälligkeiten entstanden sein
 Zwei pruning-Operationen:
 Ersetzen von Teilbäumen (Subtree replacement)
 Hochziehen von Teilbäumen (Subtree raising)
 Mögliche Strategien:
 Fehlerabschätzung
 Signifikanztests
 MDL-Prinzip
15
Ersetzen von
Teilbäumen
 Bottom-up
Attribute
Type
 Ein Baum wird nur
Duration
(Number of years)
betrachtet,
nachdem
all
Wage increase first
year
Percentage
Wage increase second year
Percentage
seine
Teilbäume
behandelt
Wage increase third year
Percentage
Cost of livingsind
adjustment
{none,tcf,tc}
worden
Working hours per week
Pension
Standby pay
Shift-work supplement
Education allowance
Statutory holidays
Vacation
Long-term disability assistance
Dental plan contribution
Bereavement assistance
Health plan contribution
Acceptability of contract
(Number of hours)
{none,ret-allw, empl-cntr}
Percentage
Percentage
{yes,no}
(Number of days)
{below-avg,avg,gen}
{yes,no}
{none,half,full}
{yes,no}
{none,half,full}
{good,bad}
1
2
3
1
2%
?
?
none
28
none
?
?
yes
11
avg
no
none
no
none
bad
2
4%
5%
?
tcf
35
?
13%
5%
?
15
gen
?
?
?
?
good
3
4.3%
4.4%
?
?
38
?
?
4%
?
12
gen
?
full
?
full
good
…
40
2
4.5
4.0
?
none
40
?
?
4
?
12
avg
yes
full
yes
half
good
16
Hochziehen von Teilbäumen
 Lösche Knoten
 Verteile Instanzen neu
 Aufwändiger als Ersetzen
von Teilbäumen
(Lohnt sich der Aufwand?)
17
Schätzung der Fehlerquote
 Nur abschneiden, wenn der (geschätzte) Fehler
reduziert wird
 Fehler auf den Trainingsdaten ist KEIN guter
Schätzer
(würde fast nie zum Abschneiden führen)
 Benutze zurückgelegte Datensätze zum
Abschneiden
(“reduced-error pruning”)
 Die C4.5-Methode
 Schätze Vertrauensintervall aus den Trainingsdaten
 Benutze daraus abgeleiteten heuristischen
Schwellenwert zum Abschneiden
 Methode basiert auf Standard-Bernoulli-Prozess
 Fragwürdige statistische Annahmen (bzgl. der
Trainingsdaten)
18
Die C4.5-Methode
 Fehlerschätzung für einen Teilbaum als
gewichtete Summe der Fehlerschätzungen seiner
Blätter
 Fehlerschätzung für einen Knoten:


 
z2
f
f2
z2
z2
e= f 
z
− 
/ 1
2
2N
N N 4N
N
 Für c = 25% ist z = 0.69 (aus der
Normalverteilung)
 f ist der Fehler auf den Trainingsdaten
 N ist die Anzahl der durch ein Blatt abgedeckten
Instanzen
19
Beispiel Beispiel
f = 5/14
e = 0.46
e < 0.51
abschneiden!
f=0.33
e=0.47
f=0.5
e=0.72
f=0.33
e=0.47
Kombination im Verhältnis 6:2:6 ergibt 0.51
20
Komplexität der BaumInduktion
 Annahmen:
 m Attribute
 n Trainingsinstanzen
 Baumtiefe O (log n)
 Baumkonstruktion
 Teilbaumersetzung
 Hochziehen von Teilbäumen
O (m n log n)
O (n)
O (n (log n)2)
 Jede Instanz kann neu zugeordnet werden zu jedem
Knoten zwischen ihrem Blatt und der Wurzel
 Kosten für die Umordnung (im Mittel): O (log n)
 Totale Kosten: O (m n log n) + O (n (log n)2)
21
Von Bäumen zu Regeln
 Einfache Methode: eine Regel pro Blatt
 C4.5-Regeln: „Gieriges“ Entfernen von Bedingungen aus
Regeln, wenn dadurch der geschätzte Fehler reduziert
wird
 Kann zu Regel-Duplikaten führen
 Wird abschließend überprüft
 Dann
 behandle jede Klasse einzeln
 betrachte die Regeln für diese Klasse
 finde eine “gute” Teilmenge (anhand der MDL)
 Dann: ordne die Teilmengen, um Konflikte zu vermeiden
 Abschließend: „Gieriges“ Entfernen von Regeln, wenn
dies den Fehler auf den Trainingsdaten reduziert
22
C4.5: Auswahl und Optionen
 C4.5-Regeln sind langsam für große und
verrauschte Datenmengen
 Kommerzielle Version C5.0 benutzt eine
andere Technik
 Wesentlich schneller und etwas genauer
 C4.5 hat zwei Parameter
 Konfidenzniveau (Default 25%):
kleinere Werte führen zu stärkerem
Beschneiden
 Minimale Anzahl Instanzen in den beiden
häufigsten Zweigen (Default 2)
23
Diskussion
TDIDT: Top-Down Induction of Decision Trees
 Die am meisten untersuchte ML-Methode für Data
Mining
 Verschiedene Kriterien für die Attribut/TestAuswahl führen nur zu leicht unterschiedlichen
Resultaten
 Verschiedene Pruning-Methoden verändern i. w.
die Größe des resultierenden (beschnittenen)
Baumes
 C4.5 erzeugt univariate Entscheidungsbäume
 Einige TDITDT-Systeme können multivariate
Bäume erzeugen (z.B. CART)
24
Klassifikationsregeln
 Einheitliches Vorgehen: trenne-undherrsche
 Unterschiede:
 Suchmethode (z.B. greedy, beam search, ...)
 Auswahlkriterien (z.B. Präzision, ...)
 Pruning-Methode (z.B. MDL, zurückgelegte
Daten, ...)
 Abbruchkriterium (z.B. minimale Präzision)
 Nachbearbeitung der Regeln
 Außerdem: Entscheidungsliste
vs.
eine Regel pro Klasse
25
Auswahlkriterien für Bedingungen
 Grundlegender Abdeckungsalgorithmus:
 Füge Bedingung zu Regel, um die Präzision zu erhöhen
 Wähle Bedingung mit der höchsten Präzision
 Maß 1: p/t
 t Anzahl Instanzen, die durch die Regel abgedeckt werden
p Anzahl der positiven Fälle darunter
 Generiert schnell Regeln, die keine negativen Instanzen abdecken
 Kann Regeln mit sehr geringer Abdeckung erzeugen
—Spezialfälle oder Rauschen?
 Maß 2: Informationsgewinn p (log(p/t) – log(P/T))
 P und T: positive/alle Instanzen, bevor die neue Bedingung
hinzugefügt wurde
 Informationsgewinn betont die positiven Instanzen stärker als die
negativen
 Die Maße interagieren mit den benutzten PruningMechanismen
26
Fehlende Werte,
nummerische Attribute
 Einheitliche Behandlung fehlender Werte:
sie erfüllen keine Bedingung
 Algorithmus muss entweder
 Andere Bedingungen benutzen, um positive
Instanzen zu selektieren, oder
 sie unberücksichtigt lassen, um sie dann später
gesondert zu behandeln
 In einigen Fällen ist es besser, “fehlend” als
einen gesonderten Wert zu behandeln
 nummerische Attribute werden wie in
Entscheidungsbäumen behandelt
27
Pruning von Regeln
 Zwei Hauptstrategien:
 Inkrementelles Beschneiden
 Globales Beschneiden
 Weiterer Unterschied: Pruning-Kriterium
 Fehler auf den zurückgelegten Daten
(reduced-error pruning)
 Statistische Signifikanz
 MDL-Prinzip
 Außerdem: Post-Pruning vs. Pre-Pruning
28
INDUCT
Initialize E to the instance set
Until E is empty do
For each class C for which E contains an instance
Use basic covering algorithm to create best perfect
rule for C
Calculate m(R): significance for rule
and m(R-): significance for rule with final
condition omitted
If m(R-) < m(R), prune rule and repeat previous step
From the rules for the different classes, select the most
significant one (i.e. with smallest m(R))
Print the rule
Remove the instances covered by rule from E
Continue
 Benutzt inkrementelles Pruning
29
Berechnung der
Signifikanz
 INDUCTs Signifikanzmaß für eine Regel:
 Wahrscheinlichkeit, dass eine zufällige Regel
mit derselben Abdeckung mindestens
genausogut ist
 Zufällige Regel R wählt t Fälle zufällig aus
den Daten aus
 Wie wahrscheinlich ist es, dass p davon zur
korrekten Klasse gehören?
 Diese Wahrscheinlichkeit ist durch die
hypergeometrische Verteilung gegeben
30
Hypergeometrische
Verteilung
Datenmenge enthält
T Instanzen
Klasse C enthält
P Beispiele
Zuf. Regel wählt
t Beispiele aus
p Beispiele
korrekt abgedeckt
Pr[ von t zufällig ausgewählten Beispielen,
gehören p zur Klasse C]
Wahrscheinlichkeit, dass eine zufällige
Regel mindestens genauso gut ist ?
  




∑

P T −P
p t− p
min t , P 
m R=
i= p
Dies ist die statistische Signifikanz der Regel
T
t
P T −P
i t−i
T
t
31
Binomialverteilung
Datenmenge enthält
T Instanzen
Zuf. Regel wählt
t Beispiele aus
Klasse C enthält
P Beispiele
p Beispiele
korrekt abgedeckt
 Hypergeometrische V.
aufwändig zu berechnen
 Approximation: Stichprobe
mit Ersetzung
statt
ohne Ersetzung
    
t P
p T
p
P
1−
T
t− p
32
Benutzung einer PruningMenge
 Für statistische Validität muss das Maß auf Daten
berechnet werden, die nicht zum Trainieren
benutzt wurden:
 Dies erfordert eine Wachstumsmenge und eine
Pruning-Menge
 Reduced-error pruning: generiere volle
Regelmenge und beschneide sie dann
 Incremental reduced-error pruning: vereinfache
jede Regel, sobald sie generiert wurde
 Daten können neu aufgeteilt werden, nachdem die
Regel beschnitten wurde
 Stratifikation bringt Vorteile
33
Incremental reduced-error
pruning
Initialize E to the instance set
Until E is empty do
Split E into Grow and Prune in the ratio 2:1
For each class C for which Grow contains an instance
Use basic covering algorithm to create best perfect rule
for C
Calculate w(R): worth of rule on Prune
and w(R-): worth of rule with final condition
omitted
If w(R-) < w(R), prune rule and repeat previous step
From the rules for the different classes, select the one
that’s worth most (i.e. with largest w(R))
Print the rule
Remove the instances covered by rule from E
Continue
34
Maße beim incremental
reduced-error pruning
 [p + (N – n)] / T
 (N - # negative Beispiele, n - # abgedeckte neg. Bs.)
 Widerspricht der Intuition:
 p = 2000 und n = 1000 vs. p = 1000 und n = 1
 Erfolgsquote p / t
 Problem: p = 1 und t = 1
vs. p = 1000 und t = 1001
 (p – n) / t
 Gleicher Effekt wie bei der Erfolgsquote, da äquivalent
zu 2p/t – 1
 Problem einfaches Maß für den Nutzen einer Regel
zu finden, das der Intuition entspricht
 Benutze hypergeometrisches/binomisches Maß? 35
Variationen
 Generiere Regeln für geordnete Klassen
 Beginne mit der kleinsten Klasse
 Größte Klasse wird durch die Default-Regel
behandelt
 Abbruchkriterium
 Stoppe Regelproduktion, wenn die Genauigkeit zu
klein wird
 Regel-Lerner RIPPER:
 Benutzt MDL-basiertes Abbruchkriterium
 Verwendet Post-Prozessierung, um die Regel
entsprechend dem MDL-Kriterium zu modifizieren
36
PART
 Vermeidet globalen Optimierungsschritt, der in
C4.5rules und RIPPER benutzt wird
 Generiert Entscheidungsliste basierend auf einer
trenne-und-herrsche-Prozedur
 Erzeugt einen partiellen Entscheidungsbaum, um
eine Regel zu gewinnen
 Eine Regel wird nur beschnitten, wenn all ihre
Implikationen bekannt sind
 Vermeidet übereilte Generalisierung
 Benutzt die C4.5-Prozedur zur Baumgenerierung
37
Generierung eines
partiellen Baums
Expand-subset (S):
Choose test T and use it to split set of examples
into subsets
Sort subsets into increasing order of average
entropy
while
there is a subset X not yet been expanded
AND
all subsets expanded so far are leaves
expand-subset(X)
if
all subsets expanded are leaves
AND estimated error for subtree
≥ estimated error for node
undo expansion into subsets and make node a leaf
38
Beispiel
39
Anmerkungen zu PART
 Konvertiere Blatt mit maximaler Abdeckung
in eine Regel
 Fehlende Werte werden wie bei C4.5
behandelt
 D.h., teile Instanz auf
 Zeitaufwand zur Generierung einer Regel:
 Worst case: gleicher Aufwand wie bei einem
beschnittenen Baum
 Tritt bei verrauschten Daten auf
 Best case: gleicher Aufwand wie bei der
Generierung einzelner Regel
 Tritt bei unverrauschten Daten auf
40
Regeln mit Ausnahmen
 Idee: erlaube Ausnahmen bei Regeln
 Beispiel: Regel für die Iris-Daten
If petal-length ≥ 2.45 and petal-length < 4.45
then Iris-versicolor
 Neue Instanz:
Sepal Sepal
length width
Petal
length
Petal
width
Type
5.1
2.6
0.2
Iris-setosa
3.5
 Modifizierte Regel:
If petal-length ≥ 2.45 and petal-length < 4.45
then Iris-versicolor
EXCEPT if petal-width < 1.0 then Iris-setosa
41
Ein komplexeres Beispiel
 Ausnahmen zu Ausnahmen zu Ausnahmen
default: Iris-setosa
except if petal-length ≥ 2.45 and petal-length < 5.355
and petal-width < 1.75
then Iris-versicolor
except if petal-length ≥ 4.95
and petal-width < 1.55
then Iris-virginica
else if sepal-length < 4.95
and sepal-width ≥ 2.45
then Iris-virginica
else if petal-length ≥ 3.35
then Iris-virginica
except if petal-length < 4.85
and sepal-length < 5.95
then Iris-versicolor
42
Vorteile von Ausnahmen
 Regeln können inkrementell geändert werden
 Einfache Berücksichtigung neuer Daten
 Einfache Berücksichtigung von Domänenwissen
 Menschen denken oft in Ausnahmen
 Jede Konklusion kann in dem Kontext von Regeln
und Ausnahmen betrachtet werden, die zu ihr
geführt haben
 Lokalitätseigenschaft ist wichtig zum Verständnis
großer Regelmengen
 “Normale” Regelmenge bieten diesen Vorteil nicht
43
Mehr zu Ausnahmen
 Default...except if...then...
ist logisch äquivalent zu
if...then...else
(wobei else den Default-Fall spezifiziert)
 Aber: Ausnahmen bieten einen
psychologischen Vorteil
 Annahme: Defaults und frühe Tests werden
häufiger angewendet als spätere Ausnahmen
 Ausnahmen stehen für Spezialfälle
44
Regeln mit Ausnahmen
 Gegeben: eine Methode zur Generierung einer
einzelnen guten Regel
 Dann können Regeln mit Ausnahmen einfach
generiert werden:
1. Wähle Default-Klasse für die oberste Regel
2. Generiere eine gute Regel für eine der übrigen
Klassen
3. Wende diese Methode rekursiv auf die beiden
durch die Regel erzeugten Teilmengen an
(D.h. abgedeckte/nicht abgedeckte Instanzen)
45
Beispiel zu den Iris-Daten
Exceptions are represented as
Dotted paths, alternatives as
solid ones.
46
Erweiterung der linearen
Klassifikation
 Lineare Klassifikatoren können keine
nichlinearen Klassengrenzen modellieren
 Einfacher Trick:
 Transformiere die Attribute in einen neuen
Merkmalsraum, der aus Kombinationen der
Attributwerte besteht
 Z.B..: alle Produkte von n Faktoren, die aus
den Attributen konstruiert werden können
 Beispiel mit zwei Attributen und n = 3:
x=w 1 a 13w 2 a 12 a 2 w 3 a 1 a 22 w 3 a 32
47
Probleme mit diesem
Ansatz
 1. Problem: Geschwindigkeit
 10 Attribute, und n = 5 ⇒ >2000 Koeffizienten
 Benutze lineare Regression mit Attributselektion
 Laufzeit wächst kubisch mit der Anzahl der Attribute
 2. Problem: Überadaption
 Anzahl der Koeffizienten ist groß im Verhältnis zur
Anzahl Trainingsinstanzen
 Fluch der Dimensionalität! (Curse of dimensionality)
48
Supportvektor-Maschinen
 Supportvektor-Maschinen sind Algorithmen zum
Lernen linearer Klassifikatoren
 Wenig anfällig gegen Überadaption, da sie eine
spezielle lineare Entscheidungsgrenze lernen:
 Die Hyperebene mit maximalem Abstand (maximum
margin hyperplane)
 Schnell im nichtlinearen Fall
 Benutzt mathematischen Trick, um die Generierung
von “Pseudo-Attributen” zu vermeiden
 Der nichtlineare Raum wird implizit generiert
49
Die Hyperebene mit
maximalem Abstand
 Die Instanzen, die am nächsten zur Hyperebene mit
maximalem Abstand liegen, werden Supportvektoren
genannt
50
Supportvektoren
 Die Supportvektoren definieren die Hyperebene mit maximalem
Abstand!

Alle anderen Instanzen können gelöscht werden, ohne dass ihre Position oder
Richtung sich ändert
 D.h., die Hyperebene
kann beschrieben werden als
x=w0w1 a1w 2 a2
x=b
∑
i is supp. vector
αi y i ai ⋅a
51
Berechnung der
Supportvektoren
x=b
∑
i is supp. vector
αi y i ai ⋅a
 Supportvektor: Trainingsinstanz mit αi > 0
 Berechnung von αi und b ?—
Quadratisches Optimierungsproblem mit
Nebenbedingungen
 Standardsoftware zur Lösung dieser Probleme
 Aber: spezifische Algorithmen sind schneller
 Beispiel: Platts sequential minimal optimization
Algorithmus (implementiert in WEKA)
 Anmerkung: diese Verfahren setzen separierbare
Daten voraus! (d.h. Trennebene existiert)
52
Nichtlineare SVMs
 “Pseudo-Attribute” repräsentieren
Attributkombinationen
 Überadaption ist kein Problem, da die
Hyperebene mit maximalem Abstand stabil ist
 Es gibt meist wenige Supportvektoren
(relativ zur Größe der Trainingsmenge)
 Berechnungsaufwand ist aber weiterhin ein
Problem
 Bei jeder Berechnung des Skalarprodukts müssen
alle “Pseudo-Attribute” berücksichtigt werden
53
Ein mathematischer Trick
 Vermeide Berechnung der “Pseudo-Attribute”!
 Berechne Skalarprodukt vor der nichtlinearen
Transformation
 Beispiel: für
x=b ∑ αi y i ai ⋅a
i is supp. vector
berechne
x=b
∑
i is supp. vector
αi y i ai ⋅a n
 Entspricht einer Abbildung in den
Instanzenraum, der durch alle Produkte der n
Attribute aufgespannt wird
54
Andere Kernel-Funktionen
 Transformation wird “kernel function” genannt
 Polynomieller Kernel
x=b ∑ αi y i ai ⋅a n
i is supp. vector
 Andere Möglichkeiten: x=b
∑
i is supp. vector
 Einzige Anforderung:
 Beispiele:
αi y i K ai ⋅a 
K  x i , x j =φ x i ⋅φ x j 
K  x i , x j = x i⋅x j 1d
− x i − x j 
K  x i , x j =e
2
2σ2
K  x i , x j =tanh βx i⋅x j b
55
Rauschen
 Bisher: Annahme separierbarer Daten (im
originalen oder dem transformierten Raum)
 Man kann SVMs auf verrauschte Daten anwenden,
indem man einen “Rausch-Parameter” C einführt
 C begrenzt den Einfluss einzelner
Trainingsinstanzen auf die Trennebene
 Korrespondierende Nebenbedingung: 0 ≤ αi ≤ C
 Immer noch ein quadratisches
Optimierungsproblem
 C muss experimentell bestimmt werden
56
Spärliche Daten
 SVM-Algorithmus wird wesentlich schneller bei
spärlichen Daten (d.h. viele Werte sind 0)
 Warum? Weil sehr viele Skalarprodukte
berechnet werden
 Spärliche Daten ⇒ effiziente Berechnung des
Skalarprodukts
 Iteration über die von Null verschiedenen Werte
 SVMs können spärliche Datenmengen mit
10.000en von Attributen berechnen
57
Anwendungen
 Bildverarbeitung: z.B. Gesichtererkennung
 Besser als alternative Ansätze (1.5% Fehler)
 Handschrifterkennung von Postleitzahlen
 Vergleichbar mit den besten Alternativen (0.8%
Fehler)
 Bioinformatik: z.B. Vorhersage der Struktur
von Proteinen
 Textklassifikation
 Modifizierte SVM-Verfahren können auch
für die nummerische Vorhersage eingesetzt
werden
58
Instanz-basiertes Lernen
 Praktische Probleme des 1-NN-Verfahrens:
 Langsam (aber: es gibt schnelle Varianten mit
baumartigen Zugriffsstrukturen)
 Abhilfe: entferne irrelevante Daten
 Rauschen (aber: k -NN hat kaum Probleme
mit verrauschten Daten)
 Abhilfe: entferne verrauschte Instanzen
 Alle Attribute werden als gleich wichtig
angesehen
 Abhilfe: gewichte Attribute (oder wähle einfach aus)
 Führt keine explizite Generalisierung durch
 Abhilfe: Regel-basierter NN-Ansatz
59
Lernen von Prototypen
 Nur die an der Entscheidung beteiligten
Instanzen müssen gespeichert werden
 Verrauschte Instanzen sollten ausgefiltert
werden
 Idee: benutze nur prototypische Beispiele
60
Beschleunige, bekämpfe
Rauschen
 IB2: spart Speicher, beschleunigt die Klassifikation
 Arbeitet inkrementell
 Speichert nur fehlklassifizierte Instanzen
 Problem: verrauschte Daten werden festgehalten
 IB3: behandelt Rauschen
 Entfernt Instanzen, die zu schlechten Entscheidungen
führen
 Berechne Vertrauensintervalle für
 1. Die Erfolgsquote der Instanz
 2. Default-Präzision seiner Klasse
 Akzeptanz/Zurückweisung von Instanzen
 Akzeptiere, wenn die UG von 1 die OG von 2 überschreitet
 Weise zurück, wenn die OG von 1 die UG von 2 unterschreitet
61
Gewichtete Attribute
 IB5: gewichte jedes Attribut
(Gewichte können klassenspezifisch sein)
 Gewichtete Euklidische Distanz:
w
1
2
x 1− y 1 2 . . .w 2  x n − y n 2
n
 Ändere Gewichte basieren auf dem
nächsten Nachbarn
 Klasse korrekt: erhöhe Gewicht
 Klasse falsch: reduziere Gewicht
 Betrag der Änderung für das i te Attribut hängt
ab von |xi- yi|
62
Rechteckige
Generalisierungen
 Nächster-Nachbar-Regel wird außerhalb der
Rechtecke benutzt
 Rechtecke sind Regeln! (Aber sie können
konservativer sein als “normale” Regeln.)
 Geschachtelte Rechtecke sind Regeln mit
Ausnahmen
63
Generalisierte Beispiele
 Generalisiere Instanzen zu Hyper-Rechtecken
 Online: inkrementelle Modifikation von Rechtecken
 Offline-Version: suche kleine Menge von Rechtecken,
die die Instanzen abdeckt
 Wichtige Design-Entscheidungen:
 Erlaube überlappende Rechtecke?
 Erfordert die Auflösung von Konflikten
 erlaube geschachtelte Rechtecke?
 Behandlung nicht abgedeckter Instanzen?
64
Separierung
generalisierter Exemplare
Klasse 1
Klasse
2
Trennlinie
65
Generalisierte DistanzFunktionen
 Gegeben: einige Transformationsoperationen auf
Attributen
 K*: Distanz = Wahrscheinlichkeit, dass Instanz A
zufällig in Instanz B transformiert wird
 Mittelwert über alle Transformationspfade
 Gewichte Pfade entsprechend ihrer Wahrscheinlichkeit
(hierzu wird geeignete Metrik benötigt)
 Einheitliche Methode, um verschiedene
Attributtypen zu behandeln
 Einfach generalisierbar auf Distanzen zwischen
Mengen von Instanzen
66
Bäume für die
nummerische Vorhersage
 Regression: die Berechnung eines Ausdrucks,
der eine nummerische Größe vorhersagt
 Regressionsbaum: “Entscheidungsbaum”, bei
dem jedes Blatt eine nummerische Größe
vorhersagt
 Vorhersagewert ist der Mittelwert der
Trainingsinstanzen, die dieses Blatt erreichen
 Modellbaum: “Regressionsbaum” mit linearen
Regressionsmodellen in den Blattknoten
 Lineare Stücke approximieren eine stetige Funktion
67
Lineare Regression für die
CPU-Daten
PRP =
+
+
+
+
+
56.1
0.049
0.015
0.006
0.630
0.270
1.460
MYCT
MMIN
MMAX
CACH
CHMIN
CHMAX
68
Regressionsbaum für die
CPU-Daten
69
Modellbaum für die CPUDaten
70
Nummerische Vorhersage
 Entsprechende Varianten existieren für alle bislang
behandelten Verfahren
 Entscheidungsbäume, Regel-Lerner, SVMs, usw..
 Alle Klassifikationsverfahren können auf
Regressionsprobleme mittels Diskretisierung
angewendet werden
 Diskretisiere die Klasse in Intervalle
 Vorhersagewert = gewichtetes Mittel der IntervallMittelpunkte
 Gewichtung entsprechend den
Klassenwahrscheinlichkeiten
71
Regressionsbäume
 Wie Entscheidungsbäume, aber:
 Aufteilungskriterium: minimiere Varianz
innerhalb der Teilmenge
 Abbruchkriterium:
Varianz wird klein
 Pruning-Kriterium:
basierend auf einem
nummerischen Fehlermaß
 Vorhersage:
Blatt sagt Mittelwert der
Klassenwerte der Instanzen voraus
 Stückweise konstante Funktionen
 Einfach zu interpretieren
 Raffiniertere Version: Modellbäume
72
Modellbäume
 Konstruiere einen Regressionsbaum
 Jedes Blatt ⇒ lineare Regressionsfunktion
 Glättung: berücksichtige Vorhersage des Elternknotens
npkq
 Glättungsformel: p ' = nk
 Gleicher Effekt kann erreicht werden durch
Einbeziehung der Vorfahr-Modelle in die Blätter
 Erfordert Regressionsfunktion in jedem Knoten
 In jedem Knoten wird nur Teilmenge der Attribute
benutzt
 Diejenigen Attribute, die im Teilbaum vorkommen
 (+evtl. die, die im Pfad zur Wurzel auftreten)
 Schnell: Baum benutzt meist nur kleine Teilmenge aller
Attribute
73
Aufbau des Baumes
 Aufteilung: Reduktion der Standardabweichung
 Abbruch:
∣T i∣
SDR=sd T −∑
×sd T i 
∣T∣
i
 Standardabweichung < 5% seines Wertes auf der vollen
Trainingsmenge
 Zu wenige Instanzen (z.B. < 4)
 Pruning:
 Heuristische Schätzung des absoluten Fehlers von LR-Modellen:
n
×average_absolute_error
n−
 Gierige Entfernung von Termen des LR-Modells, um den
Schätzfehler zu minimieren
 Starkes Beschneiden: einzelnes Modell kann den ganzen Teilbaum
ersetzen
 Gehe bottom-up vor: vergleiche Fehler des LR-Modells eines
internen Knotens mit dem Fehler des ganzen Teilbaums
74
Nominale Attribute
 Konvertiere nominale Attribute in binäre
 Sortiere Attribut nach mittlerem Klassenwert
 Für Attribut mit k Werten,
generiere k – 1 binäre Attribute
 i tes ist 0 für Werte innerhalb der ersten i , sonst 1
 Behandle binäre Attribute wie nummerische
 Man kann zeigen: die beste Aufteilung nach
einem der neuen Attribute entspricht der
besten (binären) Aufteilung des originalen
Attributs
75
Fehlende Werte
 Modifiziertes Aufteilungskriterium:
[
∣T i∣
m
SDR= × sd T −∑
×sd T i 
∣T∣
i ∣T∣
 Um zu bestimmen, zu welcher Teilmenge
eine Instanz gehört, benutze SurrogatSplitting
]
 Teile nach dem Attribut auf, dessen Korrelation
zu dem originalen am größten ist
 Problem: komplex und zeitaufwändig
 Einfache Lösung: benutze immer die Klasse
 Testmenge: ersetze fehlenden Wert durch
den Mittelwert
76
Surrogat-Splitting
basierend auf der Klasse
 Wähle Aufteilungspunkt basierend auf Instanzen
mit bekannten Werten
 Aufteilungspunkt teilt Instanzen in 2 Teilmengen auf
 L (kleinerer Klasse-Mittelwert)
 R (größerer Wert)
 m ist das Mittel der beiden Mittelwerte
 Für eine Instanz mit einem fehlenden Wert:
 Wähle L, falls Klassenwert < m
 Sonst wähle R
 Wenn der Baum voll konstruiert ist, ersetze
fehlenden Werte durch Mittelwerte der zugehörigen
Blattknoten
77
Pseudo-Code für M5'
 Vier Methoden:




Hauptmethode: MakeModelTree
Methode zum Aufteilen: split
Methode zum Beschneiden: prune
Methode zur Fehlerberechnung: subtreeError
 Methoden werden kurz vorgestellt
 Nehme an, dass die lineare Regressionsmethode
die Attribut-Teilmengen basierend auf dem Fehler
auswählt
78
MakeModelTree
MakeModelTree (Instanzen)
{
SD = sd(instances)
for each k-valued nominal attribute
convert into k-1 synthetic binary attributs
root = newNode
root.instances = instances
split(root)
prune(root)
printTree(root)
}
79
split
split(node)
{
if sizeof(node.instances) < 4 or
sd(node.instances) < 0.05*SD
node.type = LEAF
else
node.type = INTERIOR
for each attribute
for all possible split positions of attribute
calculate the attribute's SDR
node.attribute = attribute with maximum SDR
split(node.left)
split(node.right)
}
80
prune
prune(node)
{
if node = INTERIOR then
prune(node.leftChild)
prune(node.rightChild)
node.model = linearRegression(node)
if subtreeError(node) > error(node) then
node.type = LEAF
}
81
subtreeError
subtreeError(node)
{
l = node.left; r = node.right
if node = INTERIOR then
return (sizeof(l.instances)*subtreeError(l)
+ sizeof(r.instances)*subtreeError(r))
/sizeof(node.instances)
else return error(node)
}
82
Modellbaum für ServoResult
Daten
of merging
83
Lokal gewichtete
Regression
 nummerische Vorhersage zur Kombination von
 Instanz-basiertem Lernen
 linearer Regression
 “Lazy”:
 Berechnet Regressionsfunktion zum Vorhersagezeitpunkt
 arbeitet inkrementell
 Gewichtet Trainingsinstanzen
 entsprechend Distanz zur Testinstanz
 benötigt gewichtete Version der linearen Regression
 Vorteil: nichtlineare Approximation
 Aber: langsam
84
Entwurfsentscheidungen
 Gewichtungsfunktion:
 Inverse Euklidische Distanz
 Gauss'scher Kernel angewendet auf
Euklidische Distanz
 Triangularer Kernel analog
 usw.
 Glättungsparameter zur Skalierung der
Distanzfunktion
 Multipliziere Distanz mit dem Kehrwert dieses
Parameters
 Mögliche Variante: Distanz der k-nächsten
Trainingsinstanz (macht ihn datenabhängig)
85
Diskussion
 Regressionsbäume wurden als CART
eingeführt
 Modellbäume wurden von Quinlan
vorgeschlagen (M5)
 M5’: geringfügig verbessert, frei verfügbar
 Quinlan untersuchte auch die Kombination
von Instanz-basiertem Lernen mit M5
 CUBIST: Quinlan’s kommerzieller
Regellerner für nummerische Vorhersage
 Interessanter Vergleich: Neuronale Netze
vs. M5
86
Clustern
 Unüberwachtes Lernen: kein Zielwert vorgegeben
 Unterschiede zwischen Modellen/Algorithmen:
 Exklusiv vs. überlappend
 Deterministisch vs. probabilistisch
 Hierarchisch vs. flach
 Inkrementell vs. Batch-Lernen
 Problem:
Evaluierung?—meist durch Betrachtung des
Ergebnisses
 Aber: Wenn als Problem der Dichte-Schätzung
aufgefasst, kann man die Cluster auf den
Testdaten evaluieren
87
Hierarchisches Clustern
 Bottom up
 Start: jede Instanz = 1 Cluster
 In jedem Schritt: vereinige die beiden Cluster mit der
kleinsten Distanz
 Entwurfsentscheidung: Distanz zwischen Clustern
 z.B. kleinster Abstand zwischen zwei Instanzen aus
verschiedenen Clustern vs. Distanz der Zentroiden
 Top down




Start: alle Instanzen in einem Cluster
Aufteilung in zwei Cluster
Rekursive Prozessierung jedes erzeugten Clusters
Sehr effizient
 Beide Methoden erzeugen
Dendrogramm
g a c i
e d k b j
f
h
88
Der k-means-Algorithmus
Zum Clustern der Daten in k Gruppen:
(k vorgegeben)
2. Wähle k Zentroiden
 z.B. zufällig
3. Ordne Instanzen den Clustern zu
 anhand des Abstands zu den Zentroiden
4. Neuberechnung der Zentroiden
5. Gehe zu 1
 bis Konvergenz erreicht wurde
89
Diskussion
 Ergebnisse können stark schwanken
 abhängig von den initialen Zentroiden
 Kann in lokalem Minimum enden
 Beispiel:
initiale
ClusterZentren
Instanzen
 Chance auf Erreichen des globalen
Optimums kann erhöht werden durch
Wiederholung mit verschiedenen Startwerten
90
Inkrementelles Clustern
 Heuristischer Ansatz (COBWEB/ClassIT)
 Bildet eine inkrementelle Hierarchie von Clustern
 Start:
 Baum besteht aus einem leeren Wurzelknoten
 Danach:
 füge sukzessiv Instanzen ein
 aktualisiere den Baum in jedem Schritt
 hierzu muss das passende Blatt für die jeweilige
Instanz gefunden werden
 evtl. muss hierzu der Baum restrukturiert werden
 Änderungsentscheidungen basieren auf der
Klassen-Nützlichkeit
91
Clustern der Wetterdaten
ID
Outlook
Temp.
Humidity
Windy
A
Sunny
Hot
High
False
B
Sunny
Hot
High
True
C
Overcast
Hot
High
False
D
Rainy
Mild
High
False
E
Rainy
Cool
Normal
False
F
Rainy
Cool
Normal
True
G
Overcast
Cool
Normal
True
H
Sunny
Mild
High
False
I
Sunny
Cool
Normal
False
J
Rainy
Mild
Normal
False
K
Sunny
Mild
Normal
True
L
Overcast
Mild
High
True
M
Overcast
Hot
Normal
False
N
Rainy
Mild
High
True
1
2
3
92
Clustern der Wetterdaten
ID
Outlook
Temp.
Humidity
Windy
A
Sunny
Hot
High
False
B
Sunny
Hot
High
True
C
Overcast
Hot
High
False
D
Rainy
Mild
High
False
E
Rainy
Cool
Normal
False
F
Rainy
Cool
Normal
True
G
Overcast
Cool
Normal
True
H
Sunny
Mild
High
False
I
Sunny
Cool
Normal
False
J
Rainy
Mild
Normal
False
K
Sunny
Mild
Normal
True
L
Overcast
Mild
High
True
M
Overcast
Hot
Normal
False
N
Rainy
Mild
High
True
4
5
Mische besten
und zweitbesten
Knoten
3
Evtl. muss der besten Knoten
geteilt werden, wenn Mischen
nicht hilft
93
Resultierende Hierarchie
ID
Outlook
Temp.
Humidity
Windy
A
Sunny
Hot
High
False
B
Sunny
Hot
High
True
C
Overcast
Hot
High
False
D
Rainy
Mild
High
False
Ups! a und b sind sehr
ähnlich
94
Beispiel: Iris-Daten
(Teilmenge)
Clustern mit Schwellenwert
96
Klassen-Nützlichkeit
 Klassen-Nützlichkeit (Category utility):
quadratische Verlustfunktion, definiert über
bedingte Wahrscheinlichkeiten:
∑ Pr [C l ] ∑ ∑ Pr [ ai=vij∣C l ] −Pr [ ai=vij ] 
2
CUC 1, C 2,. .. ,C k =
l
i
2
j
k
 Jede Instanz in einer anderen Klasse ⇒
Zähler wird zu
2
m−Pr [ a i =v ij ]
maximal
Anzahl Attribute
97
Nummerische Attribute
1
f  a =
e
2 π σ
 Nehme Normalverteilung an
 Dann:
∑ Pr [ a i =v ij ]2 ⇔∫ f  ai 2 da i =
j
 Damit wird
CU =
 a− μ 2
2σ2
1
2 π σi
2
2
Pr
[
C
]

Pr
[
a
=v
∣C
]
−Pr
[
a
=v
]
∑ l ∑∑
i
ij
l
i
ij 
l
i
j
k
zu
∑ Pr [ C l ]
CU =
l
1
2π
k
∑
i

1 1
−
σ il σ i

 Vorgegebene minimale Varianz
 Schärfe(acuity)-Parameter
98
Wahrscheinlichkeitsbasiertes Clustern
 Probleme mit dem heuristischen Ansatz:




Division durch k?
Reihenfolge der Beispiele?
Reichen Restrukturierungs-Operationen aus?
Ist das Ergebnis zumindest ein lokales Minimum der
Klassen-Nützlichkeit?
 Probabilistischer Ansatz ⇒
suche die wahrscheinlichsten Cluster für die Daten
 Instanz gehört mit einer gewissen
Wahrscheinlichkeit zu einem bestimmten Cluster
99
Endliche Mischungen
 Modelliere Daten über Mischung von
Verteilungen
 Eine Verteilung pro Cluster
 liefert die Wahrscheinlichkeit von
Attributwerten in diesem Cluster
 Endliche Mischungen: endliche Anzahl von
Clustern
 Einzelne Verteilungen sind
Normalverteilungen (üblicherweise)
 Kombiniere Verteilungen durch
Gewichtung der Cluster
100
Mischungsmodell für 2 Klassen
Daten
A
A
B
B
A
A
A
A
A
51
43
62
64
45
42
46
45
45
B
A
A
B
A
B
A
A
A
62
47
52
64
51
65
48
49
46
B
A
A
B
A
A
B
A
A
64
51
52
62
49
48
62
43
40
A
B
A
B
A
B
B
B
A
48
64
51
63
43
65
66
65
46
A
B
B
A
B
B
A
B
A
39
62
64
52
63
64
48
64
48
A
A
B
A
A
A
51
48
64
42
48
41
Modell
µA=50, σA =5, pA=0.6
µB=65, σB =2, pB=0.4
101
Anwendung des
Mischungsmodells
 Wahrscheinlichkeit, dass Instanz x zu Cluster A
gehört:
Pr [ x∣A] Pr [ A] f  x ; A , A  p A
Pr [ A∣x ]=
=
Pr [ x ]
Pr [ x ]
mit
1
f  x ; μ , σ =
e
2 π σ
 x− μ 2
2σ2
 Wahrscheinlichkeit einer Instanz bei gegebenem
Cluster:
Pr [ x∣the distributions ]=∑ Pr [ x∣cluster i ]Pr [ cluster i ]
i
102
Lernen der Cluster
 Annahme:
 wir wissen, dass es k Cluster gibt
 Lernen der Cluster ⇒
 Bestimme ihre Parameter
 D.h. Mittelwerte und Standardabweichungen
 Gütekriterium:
 Wahrscheinlichkeit der Trainingsdaten bei gegebenen
Clustern
 EM-Algorithmus
 findet lokales Maximum dieser Wahrscheinlichkeit
103
EM-Algorithmus
 EM = Expectation-Maximization
 Generalisiere k-means zu probabilistischem Modell
 Iterative Prozedur:
 E “Erwartungs”-Schritt:
Berechne Cluster-Wahrscheinlichkeit für jede Instanz
 M “Maximierungs”-Schritt:
Schätze Verteilungsparameter aus den ClusterWahrscheinlichkeiten
 Speichere Cluster-Wahrscheinlichkeiten als
Instanzgewichte
 Stopp, wenn kaum noch Verbesserung
104
Mehr zu EM
 Schätze Parameter aus gewichteten
Instanzen
w x w x ...w x
μ A=
1 1
2 2
n n
w 1w 2 ...w n
w 1  x 1− μ 2 w 2  x 2 − μ 2 . ..w n  x n − μ 2
σ 2=
A
w 1 w 2 ...w n
 Stopp, wenn log-likelihood konvergiert
 Log-likelihood:
∑ log  p A Pr [ x i∣A ] p B Pr [ x i∣B ]
i
105
Erweiterung des
Mischungsmodells
 Mehr als zwei Verteilungen: einfach
 Mehrere Attribute: einfach—
Unabhängigkeitsannahme!
 Korrelierte Attribute: schwierig
 Gemeinsames Modell: bivariate
Normalverteilung
mit einer (symmetrischen) Kovarianzmatrix
 n Attribute: Schätzung von n + n (n+1)/2
Parametern
106
Mehr Erweiterungen des
Mischungsmodells
 Nominale Attribute: einfach, wenn unabhängig
 Korrelierte nominale Attribute: schwierig
 Zwei korrelierte Attribute ⇒ v1 v2 Parameter
 Fehlende Werte: einfach
 Auch andere als die Normalverteilung können
benutzt werden:
 “log-normal” wenn Minimum vorgegeben ist
 “log-odds” wenn nach unten und oben beschränkt
 Poisson für Attribute mit ganzzahligen Werten
 Benutze Kreuzvalidierung zur Schätzung von k !
107
Bayes'sches Clustern
 Problem: viele Parameter ⇒ EM führt zu
Überadaption
 Bayes'scher Ansatz: gebe jedem Parameter eine
a-priori-Wahrscheinlichkeitsverteilung
 Berücksichtige a-priori-Verteilung bei der
Wahrscheinlichkeitsschätzung
 Bestraft die Einführung zusätzlicher Parameter
 Z.B.: Laplace-Schätzer für nominale Attribute
 Man kann auch einen a-priori-Wert für die Anzahl
Cluster vorgeben!
 Implementierung: AUTOCLASS (NASA)
108
Diskussion
 Interpretation der Cluster durch überwachtes Lernen
 Post-Prozessierungs-Schritt
 Reduziere Abhängigkeit zwischen Attributen?
 Prä-Prozessierungs-Schritt
 Z.B. Benutzung von principal component analysis
 Kann benutzt werden, um fehlende Werte zu
schätzen
 Hauptvorteil von probabilistischem Clustern:
 Kann die Wahrscheinlichkeit der Daten schätzen
 Objektiver Vergleich verschiedener Modelle möglich
109
Herunterladen