Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Nelson Amorim Alencastre Geändert vor über 5 Jahren
1
Einführung in Web- und Data-Science Clustering
Prof. Dr. Ralf Möller Universität zu Lübeck Institut für Informationssysteme Tanya Braun (Übungen)
2
Danksagung Zur Vorbereitung dieser Präsentationen wurden Materialien verwendet von Eamonn Keogh (University of California – Riverside) und Sascha Szott (HPI Potsdam)
3
Clustering Form des unüberwachten Lernens
Suche nach natürlichen Gruppierungen von Objekten Klassen direkt aus Daten bestimmen Hohe Intra-Klassen-Ähnlichkeit Kleine Inter-Klassen-Ähnlichkeit Ggs.: Klassifikation Distanzmaße
4
Einflüsse des Distanzmaßes auf Clusterbildung
Abhilfe: Gewichtung, z. B. durch Normalisierung
5
Hierarchisches Clustering
Peter Piter Pioter Piotr Kostenfunktion Substitution 1 Einfügung Lösung 1 Dist(Peter, Piotr) = 3 Dist(Ci,Cj) Substitution (i for e) Einfügung (o) Lösung(e) = 1 𝐶 𝑖 ∙| 𝐶 𝑗 | 𝑐∈ 𝐶 𝑖 𝑑∈ 𝐶 𝑗 𝐷𝑖𝑠𝑡(𝑐,𝑑) Bottom-up: jeder Datenpunkt ein eigenes Cluster; kombiniere Cluster mit geringsten Kosten/geringster Distanz Distanz: Mittelwert der Distanzen/Kosten von jedem Datenpunkt in einem Cluster zu jedem Datenpunkt im anderen Cluster Dendrogramm Piotr Pyotr Peter Piero Pietro Pierre Petros Pedro
6
Partitionierung: K-means Clustering (1)
Distanzmaß: Euklidische Distanz 5 4 c1 c2 c3 3 2 K=3 Cluster; zufällig initialisierte Zentren Clusterzugehörigkeit: nächstes Clusterzentrum; E-step (erwartete Clusterzugehörigkeit) 1 1 2 3 4 5 𝐶 𝑖 𝑡 = 𝑥 𝑗 : 𝑥 𝑗 − 𝑐 𝑖 𝑡 2 ≤ 𝑥 𝑗 − 𝑐 𝑟 𝑡 2 for all 𝑟=1…𝑘, 𝑟 ≠𝑖
7
Distanzmaß: Euklidische Distanz
K-means Clustering (2) Distanzmaß: Euklidische Distanz 5 4 c1 3 c2 2 Cluster besteht aus allen Datenpunkten, die dem eigenen Zentrum am nächsten sind Zentrum neu berechnen: Mittelwert (komponentenweise); M-step: Optimiere Zentrum (Maximierung als Minimierung der Intracluster Varianz) 1 c3 1 2 3 4 5 𝑐 𝑖 𝑡+1 = 1 𝐶 𝑖 𝑡 𝑥 𝑗 ∈ 𝐶 𝑖 𝑡 𝑥 𝑗
8
Distanzmaß: Euklidische Distanz
K-means Clustering (3) Distanzmaß: Euklidische Distanz 5 4 c1 3 2 c3 Clusterzugehörigkeit prüfen/neu bestimmen (Änderung bei rotem Punkt in der Mitte) c2 1 1 2 3 4 5
9
Distanzmaß: Euklidische Distanz
K-means Clustering (4) Distanzmaß: Euklidische Distanz 5 4 c1 3 2 c3 Zentren neu berechnen c2 1 1 2 3 4 5
10
Distanzmaß: Euklidische Distanz
K-means Clustering (5) Distanzmaß: Euklidische Distanz 5 4 c1 3 2 c2 c3 Clusterzugehörigkeit bestimmen; keine Änderung = keine Änderung in den Zentren -> abbrechen 1 1 2 3 4 5
11
K-Means: Cluster-Repräsentation
Parameter 𝑘∈ℕ bestimmt Anzahl der Cluster (woher?) Jedes Cluster 𝐶 𝑖 durch Zentroid 𝑐 𝑖 ∈ ℝ 𝑛 repräsentiert Mittelwert bezüglich aller in 𝐶 𝑖 enthaltenen Punkte, d.h., 𝑐 𝑖 = 𝐶 𝑖 𝑥 𝑗 ∈ 𝐶 𝑖 𝑥 𝑗 1 , …, 1 𝐶 𝑖 𝑥 𝑗 ∈ 𝐶 𝑖 𝑥 𝑗 𝑛 𝑥 𝑗 𝑙 𝑙′te Kompontente Ziel: wähle Cluster 𝐶 1 ,…, 𝐶 𝑘 ⊆𝒳 (alle Datenpunkte), so dass 𝐶 1 ,…, 𝐶 𝑘 eine Partition von 𝒳 ist und 𝐸 𝐶 1 ,…, 𝐶 𝑘 = 𝑖=1 𝑘 𝑥 𝑗 ∈ 𝐶 𝑖 𝑥 𝑗 − 𝑐 𝑖 2 2 (intra-cluster Varianz) minimiert wird Quadrierte Distanz um die Wurzel loszuwerden Partition: jeder Datenpunkt in genau einer Untermenge, alle Untermengen ergeben X
12
K-Means: Algorithmus Wähle 𝑘 zufällige Punkte 𝑐 1 ,…, 𝑐 𝑘 ∈ ℝ 𝑛
∀ 𝑥 𝑗 ∈𝒳: ordne 𝑥 𝑗 dem nähesten Zentroid zu, d.h., 𝑥 𝑗 wird 𝑐 𝑖 zugeordnet, falls 𝑑 𝑥 𝑗 , 𝑐 𝑖 = min 1≤𝑖≤𝑘 𝑑( 𝑥 𝑗 , 𝑐 𝑖 ) wobei 𝑑(.) eine Distanzfunktion ist (z.B ) Sei 𝐶 𝑖 die Menge aller Objekte, die 𝑐 𝑖 zugeordnet sind. Berechne ausgehend von 𝐶 𝑖 den Zentroid 𝑐 𝑖 neu. Falls sich im vorherigen Schritt mindestens ein Zentroid geändert hat, gehe zu 2. Andernfalls: Stop 𝐶 1 ,…, 𝐶 𝑘 ist eine Partitionierung von 𝒳 Quadrierte Distanz um die Wurzel loszuwerden
13
K-Means-Ergebnis hängt vom Startwert ab
14
Diskussion Meist relativ wenige Schritte notwendig
Findet aber ggf. nur lokales Optimum Nur anwendbar, wenn Mittel definiert Erweiterungen für kategoriale Daten existieren Basiert auf vorgegebener Clusteranzahl k Cluster haben meist gleiche Größe Probleme bei nichtkonvexen Formen Varianten von K-Means (z.B. K-Medoid) Trend Wunsch
15
Anpassung von Gauß-Funktionen
X-Koordinate der Datenpunkten betrachtet Gaußverteilung=Normalverteilung; bestimmt durch Mittelwert und Varianz Hier: zwei Cluster mit unterschiedlichen Mittelpunkten Datenpunkt: Zugehörigkeit zu beiden Clustern gewichtet
16
Beide Koordinaten betrachtet (von oben)
Drei-dimensionale Betrachtung möglich
17
Anpassung über Expectation-Minimization
Initialisierung: Wähle 𝑘 zufällige Mittelwerte, etc. E Schritt: ∀ 𝑥 𝑗 ∈𝒳: 𝑃 𝑐 𝑖 𝑥 𝑗 = 𝑃 𝑐 𝑖 𝑃( 𝑥 𝑗 | 𝑐 𝑖 ) 𝑃( 𝑥 𝑖 ) = 𝑃 𝑐 𝑖 𝑃( 𝑥 𝑗 | 𝑐 𝑖 ) 𝑖 ′ 𝑃 𝑐 𝑖 ′ 𝑃( 𝑥 𝑘 | 𝑐 𝑖 ′ ) M Schritt: ∀ 𝑐 𝑖 : 𝒩 𝑥 𝑗 ,𝜇, 𝜎 2 𝑃 𝑐 𝑖 = 1 |𝒳| 𝑥 𝑗 ∈𝒳 𝑃( 𝑐 𝑖 | 𝑥 𝑗 ) E step: Wahrscheinlichkeit der Clusterzugehörigkeit pro Datenpunkt = Clusterzugehörigkeit bestimmen M step: Parameter der Normalverteilung bestimmen, Wahrscheinlichkeit des Clusters bestimmen = neues Zentrum berechnen 𝜎 𝑖 2 = 𝑥 𝑗 ∈𝒳 𝑥 𝑗 − 𝜇 𝑃( 𝑐 𝑖 | 𝑥 𝑗 ) 𝑥 𝑗 ∈𝒳 𝑃( 𝜇 𝑖 | 𝑐 𝑖 ) 𝜇 𝑖 = 𝑥 𝑗 ∈𝒳 𝑥 𝑗 𝑃( 𝑐 𝑖 | 𝑥 𝑗 ) 𝑥 𝑗 ∈𝒳 𝑃( 𝑐 𝑖 | 𝑥 𝑗 )
18
Initialisierung Weise Parametern zufällige Werte zu
19
E-Schritt Nehme an, Parameter sind bekannt Weise Daten zu
20
M-Schritt Passe Parameter über zugeordnete Punktmenge an
22
Iteration 1 Die Cluster- Mittelwerte werden zufällig gewählt
23
Iteration 2
24
Iteration 5
25
Iteration 25
26
Diskussion EM Bestimmung einer Mixtur von multivariaten Gauss-Kurven (Gaussian mixture) K-Means ist spezielle Form des EM-Verfahrens Wahrscheinlichkeitsbasierte Zuordnung zu Clustern anstelle einer deterministischen Zuordnung Cluster können verschiedene Größen haben (Varianz) Wikipedia
27
Inkrementelle Clusterbildung
Nächste-Nachbarn-Clusterbildung Nicht verwechseln mit Nächsten-Nachbarn-Klassifikation Neue Datenpunkte inkrementell in bestehende Cluster integriert, so dass Distanz minimiert Schwellwert t, um zu bestimmen, ob neues Cluster aufgemacht werden soll
28
Inkrementelle Clusterbildung
10 1 2 3 4 5 6 7 8 9 10 Schwellwert t 1 t 2
29
Inkrementelle Clusterbildung
10 1 2 3 4 5 6 7 8 9 10 Neuer Datenpunkt … … ist im Schwellwertbereich des Cluster 1, also fügen wir ihn hin und aktualisieren den Clustermittelpunkt 1 3 2
30
Inkrementelle Clusterbildung
Neuer Datenpunkt … … ist nicht im Schwerwertbereich von Cluster 1, also erzeugen wir ein neues Cluster, und so weiter ... 10 1 2 3 4 5 6 7 8 9 10 4 Ergebnis des Verfahrens ist klar von der Reichenfolge abhängig… Es ist nicht einfach, den Schwellwert t zu bestimmen … 1 3 2
31
Was ist die richtige Anzahl von Clustern?
Offenes Problem Viele Approximierungs- methoden z.B. intra-cluster Varianz 10 1 2 3 4 5 6 7 8 9 𝐸 𝐶 1 ,…, 𝐶 𝑘 = 𝑖=1 𝑘 𝑥 𝑗 ∈ 𝐶 𝑖 𝑥 𝑗 − 𝑐 𝑖 2 2 Abstände zum Zentroid minimal, intra-cluster Varianz minimal
32
Was ist die richtige Anzahl von Clustern?
k = 1: Zielfunktion liefert 873.0 𝐸 𝐶 1 ,…, 𝐶 𝑘 = 𝑖=1 𝑘 𝑥 𝑗 ∈ 𝐶 𝑖 𝑥 𝑗 − 𝑐 𝑖 2 2 1 2 3 4 5 6 7 8 9 10
33
Was ist die richtige Anzahl von Clustern?
k = 2: Zielfunktion liefert 173.1 𝐸 𝐶 1 ,…, 𝐶 𝑘 = 𝑖=1 𝑘 𝑥 𝑗 ∈ 𝐶 𝑖 𝑥 𝑗 − 𝑐 𝑖 2 2 1 2 3 4 5 6 7 8 9 10
34
Was ist die richtige Anzahl von Clustern?
k = 3: Zielfunktion liefert 133.6 𝐸 𝐶 1 ,…, 𝐶 𝑘 = 𝑖=1 𝑘 𝑥 𝑗 ∈ 𝐶 𝑖 𝑥 𝑗 − 𝑐 𝑖 2 2 1 2 3 4 5 6 7 8 9 10
35
Was ist die richtige Anzahl von Clustern?
Zielfunktion 5.00E+02 4.00E+02 3.00E+02 2.00E+02 1.00E+02 0.00E+00 k 1 2 3 4 5 6
36
Dichtebasierendes partitionierendes Clustering
DBSCAN-Verfahren (Density Based Spatial Clustering of Applications with Noise) Motivation: Punktdichte innerhalb eines Clusters höher als außerhalb des Clusters Resultierende Cluster können beliebige Form haben Bei distanzbasierten Methoden ausschließlich konvexe Cluster Clusteranzahl k muss nicht initial vorgegeben werden
37
DBSCAN – Definitionen e Nachbarschaft von x: Datenpunkte im e Radius um x Kernobjekte = mindestens m Datenpunkte in e Nachbarschaft; sonst Randobjekt (Outliers, Randpunkte)
38
DBSCAN – Definitionen Direkt dichte-erreichbar: o’ in e Nachbarschaft und o Kernobjekt
39
DBSCAN – Definitionen Dichte-erreichbar: es gibt einen Weg von o nach o’, auf dem oj+1 direkt dichte-erreichbar von oj ist Asymmetrisch! P ist erreichbar von q, aber q nicht zwangsläufig von p
40
DBSCAN – Definitionen Dichte-verbunden: es gibt ein o’’, das dichte-erreichbar ist von o und o’ Symmetrisch
41
DBSCAN – Definitionen 2. Jeder Punkt im Cluster ist mit jedem Punkt verbunden (direkt dichte-erreichbar, dichte-erreichbar, spätestens über ein Kernpunkt=dichte-verbunden)
42
DBSCAN – Lemma 1
43
DBSCAN – Lemma 2
44
DBSCAN Datenpunkte mit Clusterlabels bzw. Noise-Label
45
ExpandCluster While: alle dichte-erreichbare Punkte aller Kernobjekte müssen im Cluster sein
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.