Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Effiziente und effektive Clustering-Methode: CLARANS Seminar zu Datenbanksystemen im SS 2007 Name: Chen Jin Betreuer: Christian Stahlhut 10.Juli 2007.

Ähnliche Präsentationen


Präsentation zum Thema: "Effiziente und effektive Clustering-Methode: CLARANS Seminar zu Datenbanksystemen im SS 2007 Name: Chen Jin Betreuer: Christian Stahlhut 10.Juli 2007."—  Präsentation transkript:

1 Effiziente und effektive Clustering-Methode: CLARANS Seminar zu Datenbanksystemen im SS 2007 Name: Chen Jin Betreuer: Christian Stahlhut 10.Juli 2007

2 Gliederung Einführung in die Clusteranalyse Definition Ähnlichkeitsmaße Klassifikation der Clustering Algorithmen Charakteristika eines Clusters Partitionierungsverfahren Clustering Algorithmen basierend auf K-Medoid PAM (Partitioning Around Medoids) CLARA (Clustering LARge Applications ) CLANRANS: Clustering Algorithmus basierend auf zufälliger Suche Motivation CLARANS Algorithmus Experiment Räumliches Data Mining

3 Einführung in die Clusteranalyse Die Clusteranalyse dient dazu, eine Menge von Objekten aufgrund ihrer Ähnlichkeit bzgl. der gemessenen Eigenschaften in Cluster zu unterteilen, Die derselben Gruppe (Cluster) zugeordneten Objekte sollen eine möglichst hohe Ähnlichkeit aufweisen Die Objekte unterschiedlicher Gruppen (Cluster) sollen deutlich verschieden voneinander sein Clustering ist eine unüberwachte Klassifikation (unsupervised classification) Keine vordefinierten Gruppen (Cluster) Die Konstruktion der Cluster, evtl. mit der Angabe einer Zahl k, die die gewünschte Anzahl der Cluster beschreibt. Die Objekte werden untersucht und dann anhand der gemessenen Ähnlichkeit ihrer Eigenschaften in k Cluster aufgeteilt.

4 Definition von Clustering Gegeben sei eine Menge von Objekten. Das Clustering-Problem ist, eine Abbildung zu definieren für einen bestimmten Wert, wobei jedes einem Cluster,, zugewiesen wird. Jedes Cluster beinhaltet genau diejenigen Objekte, die diesem zugewiesen wurden. D.h.

5 Ähnlichkeitsmaße Festlegen, bzgl. welcher Eigenschaften die Objekte miteinander verglichen werden sollen. Bestimmung eines Maßes, mit dem die Ähnlichkeit oder Unähnlichkeit zwischen den Objekten numerisch ausgedrückt wird Distanzfunktion, zur Bestimmung des Abstands zweier Objekte Euklidische Distanz Berechnung des Mittelpunktes oder Schwerpunktes eines Clusters Cluster nach geometrischem AbstandCluster nach Form-Eigenschaft

6 Klassifikation der Clustering Algorithmen Clustering Hierarchisch Partitionierend AgglomerierendUnterteilend

7 Hierarchisches Clustering Gegeben seien Objekte und Ähnlichkeitsmaße, nun soll ein Baum hierarchischer Struktur von Clustern erzeugt werden, der die Ähnlichkeit der Objekte ausdrückt. In der höchsten Ebene ist jedes Objekt in einem eigenen Cluster In der untersten Ebene sind alle Objekte in einem einzigen Cluster Visualisierung der Clusterhierarchien. {{1}, {2}, {3}, {4}, {5}} {{1, 2}, {3}, {4}, {5}} {{1, 2}, {3}, {4, 5}} {{1, 2, 3}, {4, 5}} {{1, 2, 3, 4, 5}} 1234512345 Agglomerierend Unterteilend

8 Partitionierende Clusterverfahren Generierung der Partitionierung auf einer einzelnen Hierarchieebene. Versuchen, die besten k Partitionen der Objekte zu finden, Die Anzahl k muss vorgegeben sein Die Partitionierungen werden so lange optimiert, bis sie untereinander so heterogen und innerhalb so homogen wie möglich sind. Zwei wichtige Algorithmen von Partitionierungsverfahren: K-Means und K-Medoids Bemerkungen: K Cluster, die von einem Partitionierungsverfahren gefunden wurden, sind oft hochwertiger (d.h. ähnlicher) als jene, die durch eine hierarchische Methode produziert wurden.

9 Charakteristika eines Clusters (I) Es sei ein Cluster C mit n Objekten gegeben Distanzfunktion: Bemerkung: Berechnet den Abstand zwischen den Objekten und Der Abstand beschreibt den Grad der Übereinstimmung der Objekte und Kleine Distanz (Abstand) ≈ ähnliche Objekte Große Distanz (Abstand) ≈ unähnliche Objekte Centroid: Bemerkungen: Der Centroid eines Clusters ist als Mittelwert der Cluster-Elemente aufzufassen. Er muß nicht selber ein tatsächliches Objekt im Cluster sein.

10 Charakteristika eines Clusters (II) Medoid:, wobei ein zentrales Objekt im Cluster ist. Bemerkung: Medoid eines Cluster C ist ein Objekt, für das die Summe aller Distanzen von allen anderen Objekten zu diesem Objekt minimal ist. Absoluter Abstand(Unähnlichkeit) := Summe aller Distanzen wobei, der Centroid/Medoid des Clusters C ist. Durchschnittlicher Abstand (Unähnlichkeit)

11 Clustering Algorithmen Vorbemerkungen: Viele Partitionsmethoden, einige basieren auf K-Medoid. Der im Paper vorgestellte Algorithmus „CLARANS“ hat die K-Medoid-Methoden als Grundlage gewählt, aus folgenden Gründen: Sehr robust gegenüber der Beeinflußung durch Ausreißer(Outliers) Von der Reihenfolge, in der die Objekte verarbeitet werden, unabhängig Sehr effizient und effektiv bei großen Datenmengen Es werden zuerst die Algorithmen PAM und CLARA eingeführt, da CLARANS auf diesen basiert

12 PAM (Partitioning Around Medoids) Einführungsbeispiel Es sei angenommen: D= {,,,,,,, } K = 3 Cluster Distanzfunktion: wobei n die Dimension des Objekts ist, in diesem Fall also 2,, sind die Koordinaten des Objekts

13 Graphische Darstellung des PAM-Verfahrens x y

14 Wähle zufällig k Medoids aus: z.B.{O 1,O 4,O 8 } x y

15 Graphische Darstellung des PAM-Verfahrens Wähle zufällig k Medoids aus: z.B.{O 1,O 4,O 8 } Teile die übrigen Objekte nach Ähnlichkeitsmaßen den entsprechenden Clustern zu, die durch {O 1,O 4,O 8 } repräsentiert werden, d.h. gegenwärtige Nicht- Medoid-Objekte werden dem Cluster zugeordnet, zu dessen Medoid sie am nächsten sind x y

16 Graphische Darstellung des PAM-Verfahrens Wähle zufällig k Medoids aus: z.B.{O 1,O 4,O 8 } Teile die übrigen Objekte nach Ähnlichkeitsmaßen den entsprechenden Clustern zu, die durch {O 1,O 4,O 8 } repräsentiert werden, d.h. gegenwärtige Nicht- Medoid-Objekte werden dem Cluster zugeordnet, zu dessen Medoid sie am nächsten sind Im folgenden Schritt vertauscht PAM einen gegenwärtigen Medoid und ein nicht ausgewähltes Objekt, solange dies eine Verbesserung der Qualität des Clusterings zur Folge hat x y

17 Graphische Darstellung des PAM-Verfahrens Wähle zufällig k Medoids aus: z.B.{O 1,O 4,O 8 } Teile die übrigen Objekte nach Ähnlichkeitsmaßen den entsprechenden Clustern zu, die durch {O 1,O 4,O 8 } repräsentiert werden, d.h. gegenwärtige Nicht- Medoid-Objekte werden dem Cluster zugeordnet, zu dessen Medoid sie am nächsten sind Im folgenden Schritt vertauscht PAM einen gegenwärtigen Medoid und ein nicht ausgewähltes Objekt, solange dies eine Verbesserung der Qualität des Clusterings zur Folge hat x y

18 Graphische Darstellung des PAM-Verfahrens Ein einfaches Beispiel veranschaulicht die Vorgehensweise O m,1 OpOp O m,2 OjOj O m,1 OjOj OpOp O m,2 Fall 1 Fall 2 Fall 3 Fall 4 Cluster B Cluster A Cluster C Cluster A Cluster B

19 4 Fälle Fall 1: Fall 2: Fall 3: Fall 4:

20 PAM Algorithmus Input: Objektmenge {O 1,O 2 ….,O n }, gewünschte Anzahl der Cluster k Output: k Cluster 1. Wähle k beliebige repräsentative Objekte als Medoids aus. 2. Berechne TC mp für alle Objekt-Paare O m und O p, wobei O m ein gegenwärtig ausgewählteter Medoid ist, und O p nicht. 3. Wähle dasjenige Paar (O m, O p ) aus, das min Om, Op TC mp entspricht. Wenn das minimale TC m negativ ist, O m mit O p ersetzen und zurück zu Schritt 2. 4. Andernfalls finde den ähnlichsten Medoid für jedes nicht ausgewählte Objekt. Halt. Bemerkung: Komplexität von einer Iteration : nicht geeignet für größere Daten-Sets

21 CLARA (Clustering LARge Applications) Suche die Medoids nicht in der gesamten Datenmenge Wähle eine Stichprobe aus der Menge aus Wende PAM auf diese Probe an und findet so deren Medoids Bemerkung: Wählen die Probe zufällig aus Die Medoids der Probe approximieren die der gesamten Menge Ziehe mehrere Stichproben und gebe das beste Clustering als Ausgabe zurück Experimente haben ergeben, daß fünf Proben der Größe zufriedenstellende Resultate liefern.

22 Algorithmus CLARA Input: Objektmenge {O 1,O 2 ….,O n }, gewünschte Anzahl der Cluster k Output: k Cluster 1. Für i = 1 bis 5, wiederhole die folgenden Schritte: 2. Ziehe eine Stichprobe von 40+2k Objekten aus der gesamten Menge zufällig aus, rufe danach den Algorithmus PAM auf, um k Medoids in der Probe zu finden 3. Stelle für jedes Objekt O j in der gesamten Datenmenge fest, welcher der k Medoids zu O j das Ähnlichste ist. 4. Berechne die durchschnittliche Unähnlichkeit des Clusterings, das der vorherige Schritt hervorbrachte. Wenn dieser Wert kleiner als das gegenwärtige Minimum ist, verwende diesen Wert als das neue Minimum, und merke die k Medoids, die in Schritt 2 gefunden wurden, diese sind die beste bisher gefundene Menge an Medoids. 5. Zu Schritt 1 zurückgehen, um mit der nächsten Iteration zu beginnen.

23 PAM vs. CLARA vs. CLARANS Mit Hilfe einer Graphen-Theorie Graph G n,k Knoten := wobei,, die vorausgewählten Medoids sind. Zwei Knoten sind Nachbarn (d.h. sie sind mit einer Kanten verbunden) gdw. ihre Mengen sich nur durch ein Objekt unterscheiden

24 Beispiel: n=5 Objekte A,B,C,D,E k=2 Cluster G 5,2 wird unten dargestellt: A,B A,C A,D A,E B,C D,E C,E C,D B,E B,D

25 Analyse des Graphs Jeder Knoten beschreibt eine Clustering-Möglichkeit Jeder Knoten hat k(n-k) = 6 Nachbarn Kosten werden jedem Knoten zugewiesen Die Differenz der Kosten zwischen zwei Nachbarn wird durch TC mp angegeben A,B A,C A,D A,E B,C D,E C,E C,D B,E B,D

26 PAM vs. CLARA vs. CLARANS Angenommen {C,E} ist das gewünschte Cluster PAM Fängt mit Knoten {A,B} an A,B A,C A,D A,E B,C D,E C,E C,D B,E B,D

27 PAM vs. CLARA vs. CLARANS Angenommen {C,E} ist das gewünschte Cluster PAM 1.Iteration A,B A,C A,D A,E B,C D,E C,E C,D B,E B,D

28 PAM vs. CLARA vs. CLARANS Angenommen {C,E} ist das gewünschte Cluster PAM 2.Iteration A,B A,C A,D A,E B,C D,E C,E C,D B,E B,D

29 PAM vs. CLARA vs. CLARANS Angenommen {C,E} ist das gewünschte Cluster PAM 3.Iteration Halt A,B A,C A,D A,E B,C D,E C,E C,D B,E B,D

30 PAM vs. CLARA vs. CLARANS CLARA Schränkt die Suche nur auf einen Subgraph ein, hier z.B. nur auf A,B,C,D A,B A,C A,D A,E B,C D,E C,E C,D B,E B,D

31 PAM vs. CLARA vs. CLARANS CLARA Schränkt die Suche nur auf einen Subgraph ein, hier z.B. nur auf A,B,C,D Fängt mit Knoten {A,B} an A,B A,C A,D A,E B,C D,E C,E C,D B,E B,D

32 PAM vs. CLARA vs. CLARANS CLARA Schränkt die Suche nur auf einen Subgraph ein, hier z.B. nur auf A,B,C,D 1.Iteration A,B A,D A,C A,E B,C D,E C,E C,D B,E B,D

33 PAM vs. CLARA vs. CLARANS CLARA Schränkt die Suche nur auf einen Subgraph ein, hier z.B. nur auf A,B,C,D 2.Iteration A,B A,C A,D A,E B,C D,E C,E C,D B,E B,D

34 PAM vs. CLARA vs. CLARANS CLARA Schränkt die Suche nur auf einen Subgraph ein, hier z.B. nur auf A,B,C,D 3.Iteration Halt A,B A,C A,D A,E B,C D,E C,E C,D B,E B,D

35 PAM vs. CLARA vs. CLARANS CLARANS Fängt mit Knoten {A,B} an A,B A,C A,D A,E B,C D,E C,E C,D B,E B,D

36 PAM vs. CLARA vs. CLARANS CLARANS 1. Iteration A,B A,C A,D A,E B,C D,E C,E C,D B,E B,D

37 PAM vs. CLARA vs. CLARANS CLARANS 1. Iteration A,B A,C A,D A,E B,C D,E C,E C,D B,E B,D

38 PAM vs. CLARA vs. CLARANS CLARANS 1. Iteration A,B A,C A,D A,E B,C D,E C,E C,D B,E B,D

39 PAM vs. CLARA vs. CLARANS CLARANS 2. Iteration A,B A,C A,D A,E B,C D,E C,E C,D B,E B,D

40 PAM vs. CLARA vs. CLARANS CLARANS 2.Iteration A,B A,C A,D A,E B,C D,E C,E C,D B,E B,D

41 PAM vs. CLARA vs. CLARANS CLARANS 3.Iteration Halt A,B A,C A,D A,E B,C D,E C,E C,D B,E B,D

42 Vorbemerkungen: CLARANS hat zwei Parameter maxneighbor, beschreibt die Höchstzahl der zu überprüfenden Nachbarn numlocal :beschreibt die Anzahl der zu erreichenden lokalen Minima A,B A,C A,D A,E B,C D,E C,E C,D B,E B,D

43 Vorbemerkungen (Fort.): Je höher der Wert von maxneighbor, desto genauer ist CLARANS im Vergleich zu PAM und desto länger dauert jede Suche nach einem lokalen Minimum Passende Werte für die beiden Parameter wurden durch Experimente ermittelt.

44 Algorithmus CLARANS: Input: Gn,k, Eingabeparameter numlocal und maxneighbor. Output: Der Knoten, der die optimalen Medoid-Objekte enthält 1. Initialisiere Variable i auf 1 und mincost auf eine große Zahl. 2. Setze Variable current auf einen beliebigen Knoten in. 3. Setze j = 1. 4. Ziehe einen zufällig ausgewählten Nachbar S von current und berechne die Kostendifferenz zwischen den beiden Knoten. 5. Wenn S im Vergleich zu current niedrigere Kosten cost hat, setzte current auf S und gehe zurück zu Schritt 3. 6. Ansonsten setze j = j+1. Wenn j<=maxneighbor, gehe zurück zu Schritt 4. 7. Andernfalls wenn j>maxneighbor, vergleiche die Kosten cost von current mit mincost, wenn cost niedriger ist, setze mincost = cost und setze bestnote=current. 8. Erhöhe i = i+1. Wenn i>numlocal, gebe bestnote aus und Halt. Sonst gehe zurück zu Schritt 2.

45 Experiment I maxneighbor = (1.25% ~1.5%)* k(n-k) Fig. 1 : Determining the maximum number of neighbors. (a) Relative efficiency. (b) Relative quality.

46 Experiment II numlocal=2

47 Experiment III Fig.2 Efficiency: CLARANS versus PAM.

48 Experiment IV Fig.3 Experiment 3 Relative Quality: Same Time for CLARANS and CLARA.

49 Räumliches Data Mining Ein spezielles Forschungsgebiet des Data Minings Ziel: interessante Verhältnisse, Eigenschaften zu entdecken, die implizit in räumlichen Datenbanken bestehen können Methode: Cluster Analyse, z.B. CLARANS Keine vordefinierte Hierarchie Effizient Kern-Frage: Wie kann man den Abstand zwischen räumlichen Objekten errechnen ?

50 Räumliche Daten Räumliche Daten können Punktförming vorliegen z.B. ein kleines Haus, ein Baum usw. Standardabstands-Metrik Aus Flächen, z.B. Polygonen, bestehen z.B. der Welfengarten in Hannover Drei mögliche Vorgehen:  Separation Distance  MV-Approximation  IR-Approximation

51 Separation Distance versus MV-Approximation versus IR-Approximation Separation Distance Mindestabstand zwischen irgendeinem Paar von Punkten in A und B MV-Approximation Mindestabstand zwischen Eckpunkten IR-Approximation Abstand zwischen achsen-parallelen „bounding boxen“ (isothetischen Rechtecken) c) a) b) A B Abbildung 4: Separation Distance versus MV-Approximation versus IR-Approximation. a) Separation Distance. b) MV-Approximation. c) IR-Approximation

52 Experiment I Efficiency of the approximations.

53 Experiment II IR-Approximation das effizienteste und effektivste Vorgehen CLARANS verwendet IR-Approximation, um polygonale Objekte zu clustern. Clustering efficiency of the approximations. (a) 10-Sided polygons. (b) 4-to-20-Sided polygons.

54 Fragen?


Herunterladen ppt "Effiziente und effektive Clustering-Methode: CLARANS Seminar zu Datenbanksystemen im SS 2007 Name: Chen Jin Betreuer: Christian Stahlhut 10.Juli 2007."

Ähnliche Präsentationen


Google-Anzeigen