Foliensammlung3 - Institute for Statistics and Mathematics

Werbung
SBWL Tourismusanalyse und
Freizeitmarketing
Vertiefungskurs 4: Multivariate Verfahren 2
Teil 3: Mischmodelle / Modellgestützte Clusteranalyse
Achim Zeileis
Department of Statistics and Mathematics
FlexMix
Inhalt
Idee
Mischmodelle
Bisher:
• Hierarchisches Clustern: Explorative Einteilung in Gruppen basierend auf Distanzen von Objekten und Clustern,
• k-Means: Einteilung in Gruppen basierend auf einer einfachen
Zielfunktion (Fehlerquadratsumme).
• Idee
• Latent Class Regression
• EM-Algorithmus
Jetzt: Modell-basiertes Clustern
• Beispiel
Dabei werden die Daten in Gruppen eingeteilt, wobei in jeder Gruppe
ein Modell mit einer Likelihood unterstellt wird, die dann maximiert
werden soll.
Department of Statistics and Mathematics
FlexMix
3-1
Department of Statistics and Mathematics
FlexMix
3-2
Idee
Latent Class Regression
Beispiel: Es gibt k Cluster, wobei die Beobachtungen innerhalb
eines Clusters eine multivariate Normalverteilung haben. Die Mittelwerte und Kovarianzmatrizen unterscheiden sich dann zwischen
den Clustern. Hier spricht man von modell-basiertem Clustern.
Beispiel: Es gibt k Cluster, wobei für die Beobachtungen innerhalb
eines Clusters ein GLM angepaßt wird. Die Cluster- oder Klassenzugehörigkeit ist dabei unbekannt (oder unbeobachtet oder latent).
Dieses Verfahren nennt man daher latent class regression oder auch
GLIMMIX Modell.
Department of Statistics and Mathematics
FlexMix
3-3
Department of Statistics and Mathematics
FlexMix
3-4
40
30
0
10
20
y
0
10
20
y
30
40
50
Latent Class Regression
50
Latent Class Regression
0
2
4
6
8
10
0
x
Department of Statistics and Mathematics
2
4
6
8
10
x
FlexMix
3-5
Department of Statistics and Mathematics
FlexMix
3-6
Latent Class Regression
EM-Algorithmus
Wäre die Einteilung in Klassen bekannt und schon in einem Faktor f kodiert, dann wäre dies ein ganz einfaches lineares Modell
(Kovarianzanalyse), das mit lm geschätzt werden kann:
Problem: Die Klasseneinteilung ist unbekannt und muß aus den
Daten gelernt werden.
lm(y ~ f * (x + I(x^2)))
Dieses Modell entspricht dann zwei quadratischen Kurven, die in
den durch f definierten Klassen angepaßt werden.
Department of Statistics and Mathematics
FlexMix
3-7
Lösung: Gegeben ein in k Klassen angepaßtes Regressionsmodell
wird jede Beobachtung der Klasse zugeordnet, zu deren Regressionsgerade es “besser paßt”.
Department of Statistics and Mathematics
FlexMix
3-8
EM-Algorithmus
EM-Algorithmus
Damit ergibt sich folgender Schätzalgorithmus:
In der Regel schätzt man mit Mischmodellen aber weiche Partitionen, die Variable f gibt dabei dann die Wahrscheinlichkeit an, daß
eine Beobachtung zu der einer bestimmten Klasse gehört.
1. Beginne mit einer Einteilung der Beobachtungen in k Cluster.
2. Passe in jedem Cluster ein Regressionsmodell an.
3. Ordne jede Beobachtung dem Cluster zu, zu dessen Regressionsgerade sie am nächsten liegt.
4. Wiederhole 2. und 3. bis sich die Cluster nicht mehr ändern.
Dieser erzeugt eine harte Partition, wobei jede Beobachtung nur zu
genau einem Cluster gehören kann (f = 1 oder f = 0).
Department of Statistics and Mathematics
FlexMix
3-9
1. Initialisiere die Wahrscheinlichkeiten der Clusterzugehörigkeiten.
2. Gegeben die Gewichtung durch die Wahrscheinlichkeiten, passe
k gewichtete Regressionsmodelle an.
3. Berechne für jede Beobachtung die a posterioriWahrscheinlichkeit der Zughörigkeit zu Cluster j.
4. Wiederhole 2. und 3. bis die Veränderung der Gesamtlikelihood
des Modells unter eine Gewisse schranke fällt.
Department of Statistics and Mathematics
FlexMix
3-10
EM-Algorithmus
EM-Algorithmus
Dies ist eine Anwendung des EM-Algorithmus. Dieser ist weniger
ein konkreter Algorithmus als eine generelle Strategie zur Schätzung
von Modellen mit unbeobachteten/latenten Variablen.
Allgemein kann in einem Mischmodell die Dichtefunktion geschrieben werden als
Er trägt seinen Namen, da sich immer
h(y | x, π, θ) =
• Erwartungsbildung (hier: über a posteriori Wahrscheinlichkeiten,
Schritt 3.)
• Maximierung (hier: der gewichteten Likelihood, Schritt 2.)
im Modell abwechseln.
k
X
πj f (y | x, θj )
j=1
also als Mischung von j Clustern, wobei πj die a prioriWahrscheinlichkeit für Klasse j ist und f (y | x, θj ) die Dichte für
die Beobachtungen in dieser Klasse.
In einem normalverteilten GLM wäre f die Dichte der Normalverteilung und θj der Vektor der Regressionskoeffizienten.
Department of Statistics and Mathematics
FlexMix
3-11
Department of Statistics and Mathematics
FlexMix
3-12
EM-Algorithmus
EM-Algorithmus
Die a priori-Wahrscheinlichkeiten müssen sich zu 1 addieren, d.h.
πj ≥ 0,
k
X
πj = 1
i=1
i=1
j=1
Und damit kann dann die a posteriori-Wahrscheinlichkeit, daß eine
bestimmte Beobachtung aus Cluster i stammt, formuliert werden
als
πif (y|x, θi )
P (i|x, y, π, θ) = P
j πj f (y|x, θj )
Department of Statistics and Mathematics
Gegeben n Beobachtungen {(y1, x1), . . . , (xn, yn)} ist dann die
Likelihood der Parameter π und θ:


k
n
n
X
X
X
πj f (yi | xi, θj )
log 
log h(yi | xi, π, θ) =
log L(π, θ) =
FlexMix
3-13
j=1
Diese muß nun bzgl. der Parameter maximiert werden. In der Regel
ist dies nicht analytisch möglich und auch numerisch schwierig.
Deshalb wird die Optimierung in zwei Teile zerlegt
• E-Schritt: Schätzung von π gegeben θ,
• M-Schritt: Schätzung von θ gegeben π,
und dann iteriert.
Department of Statistics and Mathematics
FlexMix
3-14
EM-Algorithmus
EM-Algorithmus
E-Schritt:
M-Schritt:
Berechne a posteriori Wahrscheinlichkeit, daß Beobachtung i aus
Cluster j ist:
Führe eine gewichtete ML-Schätzung separat für jede Komponente
durch. Der Schätzer θ̂j wird dann als Maximalstelle von
p̂ij = P (j | xi, yi, π̂, θ̂)
max
θj
und mittele dann für die Klassenwahrscheinlichkeiten:
n
X
p̂ij log f (yi | xi, θj )
i=1
ermittelt.
π̂j =
Department of Statistics and Mathematics
n
X
1
p̂ij
n i=1
FlexMix
3-15
Department of Statistics and Mathematics
FlexMix
3-16
40
30
0
10
20
y
0
10
20
y
30
40
50
EM-Algorithmus
50
EM-Algorithmus
0
2
4
6
8
10
0
2
4
x
6
8
10
x
Department of Statistics and Mathematics
FlexMix
3-17
FlexMix
3-18
FlexMix
3-20
40
30
0
10
20
y
0
10
20
y
30
40
50
EM-Algorithmus
50
EM-Algorithmus
Department of Statistics and Mathematics
0
2
4
6
8
10
0
x
Department of Statistics and Mathematics
2
4
6
8
10
x
FlexMix
3-19
Department of Statistics and Mathematics
40
30
0
10
20
y
0
10
20
y
30
40
50
EM-Algorithmus
50
EM-Algorithmus
0
2
4
6
8
10
0
2
4
x
8
10
x
FlexMix
3-21
FlexMix
3-22
FlexMix
3-24
Beispiel
2
0
Ein Mischmodell ist deshalb nötig, weil es salopp gesprochen “gute”
und “schlechte” Tage des Patienten gibt.
Seizures/Hours
Mit zunehmender Dauer der Betreuung nimmt die Anzahl der
epileptischen Anfälle ab. Dieser Effekt kann durch Injektionen von
Gamma-Globulin ab dem 28. Tag noch verstärkt werden.
Baseline
Treatment
8
Beispiel: Behandlung eines epileptischen Patienten über 140 Tage
hinweg.
6
Beispiel
Department of Statistics and Mathematics
4
Department of Statistics and Mathematics
6
0
20
40
60
80
100
120
140
Day
Department of Statistics and Mathematics
FlexMix
3-23
Department of Statistics and Mathematics
Beispiel
Beispiel
6
8
Baseline
Treatment
0
2
4
Seizures/Hours
6
4
0
2
Seizures/Hours
8
Baseline
Treatment
0
20
40
60
80
100
120
140
0
20
Day
Department of Statistics and Mathematics
60
80
100
120
140
Day
FlexMix
3-25
FlexMix
3-27
Tutorium
Mischmodelle in R (FlexMix.pdf )
Department of Statistics and Mathematics
40
Department of Statistics and Mathematics
FlexMix
3-26
Herunterladen