Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Einführung in Web- und Data-Science Clustering

Ähnliche Präsentationen


Präsentation zum Thema: "Einführung in Web- und Data-Science Clustering"—  Präsentation transkript:

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

21

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


Herunterladen ppt "Einführung in Web- und Data-Science Clustering"

Ähnliche Präsentationen


Google-Anzeigen