Effiziente und effektive Clustering-Methode: CLARANS Seminar zu Datenbanksystemen im SS 2007 Name:...

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

Transcript of Effiziente und effektive Clustering-Methode: CLARANS Seminar zu Datenbanksystemen im SS 2007 Name:...

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

Effiziente und effektive Clustering-Methode:

CLARANS

Seminar zu Datenbanksystemen im SS 2007Name: Chen Jin

Betreuer: Christian Stahlhut10.Juli 2007

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

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

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

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.

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

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.

},......,{ 1 nOOD },......,1{: kDf

kj 1jCk iO

)1( nijC

},1,1,)(|{ DOundkjnijOfOC iiij

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

Ä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 Abstand Cluster nach Form-Eigenschaft

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

Klassifikation der Clustering Algorithmen

Clustering

Hierarchisch Partitionierend

Agglomerierend Unterteilend

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

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}}

1 2 3 4 5

Agglomerierend

Unterteilend

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

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.

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

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.

nO

CCentroidn

i i 1::

},......,{ 1 nOO

ji OOd ,

iO jOiO jO

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

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)

iOMMedoid :: iO

COwobeiOOd jij ,,

CClusterimElementederAnzahl AbstandAbsoluter :

CO j iO

ij OOd ,

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

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

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

PAM (Partitioning Around Medoids)

EinführungsbeispielEs sei angenommen: D= { , , , , , , , } K = 3 Cluster Distanzfunktion:

wobei n die Dimension des Objekts ist, in diesem Fall also 2, , sind die Koordinaten des Objekts

1O 2O 3O 4O 5O

n

iiiqp qpOOD

1

2,

6O 7O 8O

ip iq

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

Graphische Darstellung des PAM-Verfahrens

5O3O

2O

4O

1O

6O

7O

8O

x

y

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

Graphische Darstellung des PAM-Verfahrens

Wähle zufällig k Medoids aus: z.B. {O1,O4,O8}

5O3O

2O

4O

1O

6O

7O

8O

x

y

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

Graphische Darstellung des PAM-Verfahrens

Wähle zufällig k Medoids aus: z.B. {O1,O4,O8}

Teile die übrigen Objekte nach Ähnlichkeitsmaßen den entsprechenden Clustern zu, die durch {O1,O4,O8} repräsentiert werden, d.h. gegenwärtige Nicht-Medoid-Objekte werden dem Cluster zugeordnet, zu dessen Medoid sie am nächsten sind

5O3O

2O

4O

1O

6O

7O

8O

x

y

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

Graphische Darstellung des PAM-Verfahrens

Wähle zufällig k Medoids aus: z.B. {O1,O4,O8}

Teile die übrigen Objekte nach Ähnlichkeitsmaßen den entsprechenden Clustern zu, die durch {O1,O4,O8} 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

5O3O

2O

4O

1O

6O

7O

8O

x

y

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

Graphische Darstellung des PAM-Verfahrens

Wähle zufällig k Medoids aus: z.B. {O1,O4,O8}

Teile die übrigen Objekte nach Ähnlichkeitsmaßen den entsprechenden Clustern zu, die durch {O1,O4,O8} 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

5O3O

2O

4O

1O

6O

7O

8O

x

y

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

Graphische Darstellung des PAM-Verfahrens

Ein einfaches Beispiel veranschaulicht die Vorgehensweise

Om,1

Op

Om,2

Oj

Om,1

Oj

Op

Om,2Fall 1

Fall 2

Fall 3

Fall 4

Cluster B

Cluster A

Cluster C Cluster C

Cluster A

Cluster B

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

4 Fälle

0,, 1,2, mjmjjmp OOdOOdC

1,,, mjpjjmp OOdOOdC

0jmpC

Fall 1:

Fall 2:

Fall 3:

Fall 4: 0,, 2, mjpjjmp OOdOOdC

j

jmpmp CTC

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

PAM Algorithmus

Input: Objektmenge {O1,O2….,On}, gewünschte Anzahl der Cluster kOutput: k Cluster

1. Wähle k beliebige repräsentative Objekte als Medoids aus.2. Berechne TCmp für alle Objekt-Paare Om und Op , wobei Om ein gegenwärtig

ausgewählteter Medoid ist, und Op nicht.

3. Wähle dasjenige Paar (Om, Op) aus, das min Om, Op TCmp entspricht. Wenn das minimale TCm negativ ist, Om mit Op 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

2knkO

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

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.

k240

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

Algorithmus CLARA

Input: Objektmenge {O1,O2….,On}, gewünschte Anzahl der Cluster kOutput: 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 Oj in der gesamten Datenmenge fest, welcher der k Medoids zu Oj 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.

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

PAM vs. CLARA vs. CLARANS

Mit Hilfe einer Graphen-Theorie Graph Gn,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

},.....,,{21 kmmm OOO

imO ki 1

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

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

A,B

A,C

A,D

A,E

B,C

D,EC,E

C,D

B,EB,D

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

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

TCmp angegeben

A,B

A,C

A,D

A,E

B,C

D,EC,E

C,D

B,EB,D

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

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,EC,E

C,D

B,EB,D

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

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,EC,E

C,D

B,EB,D

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

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,EC,E

C,D

B,EB,D

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

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,EC,E

C,D

B,EB,D

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

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,EC,E

C,D

B,EB,D

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

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,EC,E

C,D

B,EB,D

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

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,EC,E

C,D

B,EB,D

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

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,EC,E

C,D

B,EB,D

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

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,EC,E

C,D

B,EB,D

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

PAM vs. CLARA vs. CLARANS CLARANS

Fängt mit Knoten {A,B} an

A,B

A,C

A,D

A,E

B,C

D,EC,E

C,D

B,EB,D

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

PAM vs. CLARA vs. CLARANS CLARANS

1. Iteration

A,B

A,C

A,D

A,E

B,C

D,EC,E

C,D

B,EB,D

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

PAM vs. CLARA vs. CLARANS CLARANS

1. Iteration

A,B

A,C

A,D

A,E

B,C

D,EC,E

C,D

B,EB,D

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

PAM vs. CLARA vs. CLARANS CLARANS

1. Iteration

A,B

A,C

A,D

A,E

B,C

D,EC,E

C,D

B,EB,D

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

PAM vs. CLARA vs. CLARANS CLARANS

2. Iteration

A,B

A,C

A,D

A,E

B,C

D,EC,E

C,D

B,EB,D

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

PAM vs. CLARA vs. CLARANS CLARANS

2.Iteration

A,B

A,C

A,D

A,E

B,C

D,EC,E

C,D

B,EB,D

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

PAM vs. CLARA vs. CLARANS CLARANS

3.Iteration Halt

A,B

A,C

A,D

A,E

B,C

D,EC,E

C,D

B,EB,D

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

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,EC,E

C,D

B,EB,D

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

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.

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

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.

knG ,

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

Experiment I

maxneighbor = (1.25% ~1.5%)* k(n-k)

Fig. 1 : Determining the maximum number of neighbors. (a) Relative efficiency. (b) Relative quality.

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

Experiment II

numlocal=2

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

Experiment III

Fig.2 Efficiency: CLARANS versus PAM.

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

Experiment IV

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

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

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 ?

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

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

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

Separation Distance versusMV-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)

AB

Abbildung 4: Separation Distance versus MV-Approximation versus IR-Approximation.a) Separation Distance. b) MV-Approximation. c) IR-Approximation

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

Experiment I

Efficiency of the approximations.

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

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.

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

Fragen?