2.3 Hierarchische Verfahren

27
1 2.3 Hierarchische Verfahren Grundlagen Ziel Konstruktion einer Hierarchie von Clustern (Dendrogramm), so dass immer die Cluster mit minimaler Distanz verschmolzen werden Dendrogramm ein Baum, dessen Knoten jeweils ein Cluster repräsentieren, mit folgenden Eigenschaften: • die Wurzel repräsentiert die ganze DB • die Blätter repräsentieren einzelne Objekte • ein innerer Knoten repräsentiert einen Cluster bestehend aus allen Objekten des darunter liegenden Teilbaums

description

2.3 Hierarchische Verfahren. Grundlagen Ziel Konstruktion einer Hierarchie von Clustern ( Dendrogramm ), so dass immer die Cluster mit minimaler Distanz verschmolzen werden Dendrogramm ein Baum, dessen Knoten jeweils ein Cluster repräsentieren, mit folgenden Eigenschaften: - PowerPoint PPT Presentation

Transcript of 2.3 Hierarchische Verfahren

Page 1: 2.3 Hierarchische Verfahren

1

2.3 Hierarchische Verfahren

Grundlagen

Ziel

Konstruktion einer Hierarchie von Clustern (Dendrogramm), so dass immer die Cluster mit minimaler Distanz verschmolzen werden

Dendrogrammein Baum, dessen Knoten jeweils ein Cluster repräsentieren, mit folgendenEigenschaften:

• die Wurzel repräsentiert die ganze DB

• die Blätter repräsentieren einzelne Objekte

• ein innerer Knoten repräsentiert einen Cluster bestehend aus allen Objekten des darunter liegenden Teilbaums

Page 2: 2.3 Hierarchische Verfahren

2

Hierarchische Verfahren

Grundlagen

Beispiel eines Dendrogramms

Typen von hierarchischen Verfahren• Bottom-Up Konstruktion des Dendrogramms (agglomerative)

• Top-Down Konstruktion des Dendrogramms (divisive)

1

1

5

5

132 4

65

78 9

1 2 3 4 5 6 7 8 90

1

2

Distanz zwischenden Clustern

Page 3: 2.3 Hierarchische Verfahren

3

Single-Link und Varianten

Algorithmus Single-Link [Jain & Dubes 1988]

Agglomeratives hierarchisches Clustering

1. Bilde initiale Cluster, die jeweils aus einem Objekt bestehen, und bestimme die Distanzen zwischen allen Paaren dieser Cluster.

2. Bilde einen neuen Cluster aus den zwei Clustern, welche die geringste Distanz zueinander haben.

3. Bestimme die Distanz zwischen dem neuen Cluster und allen anderen Clustern.

4. Wenn alle Objekte in einem einzigen Cluster befinden: Fertig, andernfalls wiederhole ab Schritt 2.

Page 4: 2.3 Hierarchische Verfahren

4

Single-Link und Varianten

Distanzfunktionen für Cluster

• Sei eine Distanzfunktion dist(x,y) für Paare von Objekten gegeben.

• Seien X, Y Cluster, d.h. Mengen von Objekten.

Single-Link

Complete-Link

Average-Link

),(min),(,

yxdistYXdistslYyXx

),(max),(,

yxdistYXdistclYyXx

YyXx

yxdistYX

YXdistal,

),(||||

1),(

Page 5: 2.3 Hierarchische Verfahren

5

Single-Link und Varianten

Diskussion

+ erfordert keine Kenntnis der Anzahl k der Cluster

+ findet nicht nur ein flaches Clustering, sondern eine ganze Hierarchie

+ ein einzelnes Clustering kann aus dem Dendrogramm gewonnen werden, z.B. mit Hilfe eines horizontalen Schnitts durch das Dendrogramm

(erfordert aber wieder Anwendungswissen)

- Entscheidungen können nicht zurückgenommen werden

- Anfälligkeit gegenüber Rauschen (Single-Link) eine „Linie“ von Objekten kann zwei Cluster verbinden

- Ineffizienz Laufzeitkomplexität von mindestens O(n2) für n Objekte

Page 6: 2.3 Hierarchische Verfahren

6

Single-Link und Varianten

CURE [Guha, Rastogi & Shim 1998] • Motivation

• Repräsentation eines Clusters partitionierende Verfahren: ein Punkt hierarchische Verfahren: alle Punkte• CURE: Repräsentation eines Clusters durch c Repräsentanten• Entdecken nicht-konvexer Cluster• Vermeidung des Single-Link Effekts

Page 7: 2.3 Hierarchische Verfahren

7

Single-Link und Varianten

CURE [Guha, Rastogi & Shim 1998]Unterschiede zu Single Link

• Jedem Cluster, der genügend groß ist, werden c Repräsentanten zugeordnet

• Diese werden so gewählt, dass sie im Cluster gleichmäßig verteilt sind

• Dann werden die Punkte um einen Faktor zum Zentroiden hin verschoben

Folge: Anpassung an Form des Clusters ohne Single-Link-Effekt

• Außerdem arbeitet das hierarchische Verfahren nur auf einem Sample

• Nachträgliche Zuordnung der DB-Punkte zu den Clustern

Page 8: 2.3 Hierarchische Verfahren

8

Dichte-basiertes hierarchisches Clustering

Grundlagen [Ankerst, Breunig, Kriegel & Sander 1999]

• für einen konstanten MinPts-Wert sind dichte-basierte Cluster bzgl. eines kleineren vollständig in Clustern bzgl. eines größeren enthalten

• in einem DBSCAN-ähnlichen Durchlauf gleichzeitig das Clustering für verschiedene Dichte-Parameter bestimmen

zuerst die dichteren Teil-Cluster, dann den dünneren Rest-Cluster

• kein Dendrogramm, sondern eine auch noch bei sehr großen Datenmengen übersichtliche Darstellung der Cluster-Hierarchie

MinPts = 3C

C1C2

2 1

Page 9: 2.3 Hierarchische Verfahren

9

Dichte-basiertes hierarchisches Clustering

GrundbegriffeKerndistanz eines Objekts p bzgl. und MinPts

Erreichbarkeitsdistanz eines Objekts p relativ zu einem Objekt o

MinPts = 5

Kerndistanz oUNDEFINIERT wenn N o MinPts

MinPtsDistanz o sonstMinPts

, ( ), | ( )|

( ) ,

Erreichbarkeitsdistanz p oUNDEFINIERT wenn N o MinPts

Kerndistanz o dist o p sonstMinPts

, ( , ), | ( )|

max{ ( ), ( , )},

opq

Kerndistanz(o)

Erreichbarkeitsdistanz(p,o)

Erreichbarkeitsdistanz(q,o)

Page 10: 2.3 Hierarchische Verfahren

10

Dichte-basiertes hierarchisches Clustering

Clusterordnung

• OPTICS liefert nicht direkt ein (hierarchisches) Clustering, sondern eine „Clusterordnung“ bzgl. und MinPts

• Clusterordnung bzgl. und MinPts

– beginnt mit einem beliebigen Objekt

– als nächstes wird das Objekt besucht, das zur Menge der bisher besuchten Objekte die minimale Erreichbarkeitsdistanz besitzt

Core-distance

Reachability-distance 4

123 16 18

17

1

2

34

16 17

18

KerndistanzErreichbarkeits-distanz

Clusterordnung

Page 11: 2.3 Hierarchische Verfahren

11

Dichte-basiertes hierarchisches Clustering

Erreichbarkeits-Diagramm• Zeigt die Erreichbarkeitsdistanzen (bzgl. und MinPts) der Objekte als senkrechte, nebeneinanderliegende Balken

• in der durch die Clusterordnung der Objekte gegebenen Reihenfolge

Err

eich

bark

eits

dist

anz

Err

eich

bark

eits

dist

anz

Cluster-ordnung

Siehe externes Beispiel!!!

Page 12: 2.3 Hierarchische Verfahren

12

Dichte-basiertes hierarchisches Clustering

Parameter-Sensitivität

1

2

3

MinPts = 10, = 10

1 2 3

MinPts = 10, = 5 MinPts = 2, = 10

1 2 3

1 2 3

optimale Parameter kleineres kleineres MinPts

Clusterordnung ist robust gegenüber den Parameterwerten

gute Resultate wenn Parameterwerte „groß genug“

Page 13: 2.3 Hierarchische Verfahren

13

Dichte-basiertes hierarchisches Clustering

Heuristische Parameter-Bestimmung

• wähle größte MinPts-Distanz aus einem Sample oder

• berechne durchschnittliche MinPts-Distanz für gleichverteilte Daten

MinPts• glätte Erreichbarkeits-Diagramm

• vermeide “single-” bzw. “MinPts-link” Effekt

... ... ... ...

Page 14: 2.3 Hierarchische Verfahren

14

Dichte-basiertes hierarchisches Clustering

Manuelle Analyse der Cluster

Mit Erreichbarkeits-Diagramm• gibt es Cluster?

• wieviele Cluster?

• sind die Cluster hierarchisch geschachtelt?

• wie groß sind die Cluster?

Erreichbarkeits-Diagramm

Page 15: 2.3 Hierarchische Verfahren

15

Dichte-basiertes hierarchisches Clustering

Automatisches Entdecken von Clustern-Cluster• Teilsequenz der Clusterordnung

• beginnt in einem Gebiet -steil abfallender Erreichbarkeitsdistanzen

• endet in einem Gebiet -steil steigender Erreichbarkeitsdistanzen bei etwa demselben absoluten Wert

• enthält mindestens MinPts Punkte

Algorithmus• bestimmt alle -Cluster

• markiert die gefundenen Cluster im Erreichbarkeits-Diagramm

• Laufzeitaufwand O(n)

Page 16: 2.3 Hierarchische Verfahren

16

2.4 Clustering mit kategorischen Attributen

Grundlagen [Huang 1997]

• k-medoid-Algorithmus wesentlich langsamer als k-means- Algorithmus

• k-means-Verfahren nicht direkt für kategorische Attribute anwendbar

gesucht ist ein Analogon zum Centroid eines Clusters

• Numerische AttributeCentroid einer Menge C von Objekten minimiert

• Kategorische Attribute

Mode m einer einer Menge C von Objekten minimiert

( m ist nicht unbedingt ein Element der Menge C )

m = (m1, ..., md), dist eine Distanzfunktion für kategorische Attribute, z.B.

TD C x dist p xp C

( , ) ( , )x

TD C m dist p mp C

( , ) ( , )

dist x y x y mit x yfalls x y

sonsti i i i

i i

i

d

( , ) ( , ) ( , )

0

11

Page 17: 2.3 Hierarchische Verfahren

17

Clustering mit kategorischen Attributen

Bestimmung des Modes

• Die Funktion wird minimiert genau dann,

wenn für m = (m1, ..., md) und für alle Attribute Ai, i = 1,..., d, gilt:

es gibt in Ai keinen häufigeren Attributwert als mi

• Der Mode einer Menge von Objekten ist nicht eindeutig bestimmt.

• Beispiel

Objektmenge {(a, b), (a,c), (c, b), (b,c)}

(a, b) ist ein Mode

(a, c) ist ein Mode

TD C m dist p mp C

( , ) ( , )

Page 18: 2.3 Hierarchische Verfahren

18

Clustering mit kategorischen Attributen

Algorithmus k-modes

• Initialisierung

keine zufällige Partitionierung

sondern k Objekte aus der Datenmenge als initiale Modes

• Cluster-RepräsentantenMode anstelle des Centroids

• Distanzfunktionanstelle der quadrierten euklidischen Distanz

Distanzfunktion für Datensätze mit kategorischen Attributen

Page 19: 2.3 Hierarchische Verfahren

19

2.5 Outlier Detection

Motivation

Was ist ein Outlier?• Beim Clustering: Rauschen (alle Punkte, die zu keinem Cluster gehören)

• Generell : keine allgemein gültige und akzeptierte Definition

Beispiele:• Sport: Michael Jordon, Thomas "Icke" Häßler, ...

Probleme• Finden von n Outlier Objekten!

„One person‘s noise could be another person‘s signal.“

Page 20: 2.3 Hierarchische Verfahren

20

Motivation

Anwendungen:• Kreditkarten-Mißbrauch

• Telefonkunden-Betrug

• Medizinische Analyse

Definitionen:• Nach Hawkins (1980) : “Ein Outlier ist eine Beobachtung, die sich von den

anderen Beobachtungen so deutlich unterscheidet, daß man denken könnte, sie sei von einem anderen Mechanismus generiert worden.”

Outlier Detection

Page 21: 2.3 Hierarchische Verfahren

21

Identifikation von Outlier

Depth-based :• Jedes Objekt wird als ein Punk in einem d-Dimensionalen Raum betrachtet.

• Die Tiefe der Objekte wird berechnet.

• Outlier haben eine kleinere Tiefe als die anderen Objekte.

Outlier Detection

[PS 88]: Bilden von konvexen Hüllen

Theoretisch : => gut auch für hoch.dim. Daten

Praktisch : => ineffizient für d 4, da die konvexe Hülle berechnet werden muss.

Page 22: 2.3 Hierarchische Verfahren

22

Identifikation von Outlier

Distance-based : [Knorr, Ng 97]• Ein Objekt p in einem Datensatz D ist ein DB(pct,dmin)-Outlier (DB = distance-based), falls

mindestens pct - Prozent von Objekten aus D eine größere Distanz als dmin zu p haben.

- Wahl von pct und dmin wird

einem Experten überlassen.

Beispiel: p1 D, pct=0.95, dmin=8

DB(0.95,8) =>

95% von Objekten aus D habeneine Distanz > 8 zu p1

Outlier Detection

p1

dmin

p2

Page 23: 2.3 Hierarchische Verfahren

23

Outlier Detection

Identifikation von Outlier

Probleme mit DB(pct,dmin)-Outlier :

Sei q C1und NNPred(q) dmin

Welche Werte sollen pct und dmin

annehmen, so daß o2 ein Outlier ist,

nicht aber die Objekte des Cluster C2

(z.B. das Objekt q C1)?

C2

C1

o2

o1

q

Page 24: 2.3 Hierarchische Verfahren

24

Identifikation von Outlier

• Nicht nur binäre Eigenschaften für Outlier (Outlier? JA oder NEIN)

• Bei Clustern mit unterschiedlicher Dichte, können beim

distance-based - Ansatz Probleme auftreten ( DB(pct,dmin) ) „Globale“ Outlier vs. „lokale“ Outlier

Lösung : Density-based Local Outlier : [Breunig, Kriegel, Ng, Sander 2000]• Weise jedem Objekt einen Grad zu, zu dem das Objekt ein Outlier ist

Local Outlier Factor (LOF)

• Lokale Nachbarschaft von Objekten wird berücksichtigt

Outlier Detection

Page 25: 2.3 Hierarchische Verfahren

25

Grundlagen

• k-Distanz von p = dist(p,o), für jedes k, so dass gilt: (o D)(i) für mindestens k Objekte q D gilt : dist(p,q) dist(p,o)

(ii) für höchstens k-1 Objekte q D gilt : dist(p,q) < dist(p,o)

• k-Distanz - Nachbarschaft von p:

N k-distance(p) (p) = {qD \ {p}| dist(p,q) k-distance(p)}

• Erreichbarkeits-Distanz :

reach-distk(p,o) = max{k-distance(o),dist(p,o)}

Outlier Detection

Page 26: 2.3 Hierarchische Verfahren

26

Grundlagen

• Als Parameter nur MinPts

• Lokale Erreichbarkeits-Distanz von p:

• Local Outlier Factor von p (LOF):

• LOF (p) 1: Punkt liegt weit innen im Cluster

• LOF (p) >> 1: Punkt ist ein starker lokaler Outlier

Outlier Detection

Page 27: 2.3 Hierarchische Verfahren

27

Outlier Detection

Beispiele

Szenario:• Analysiere die Bewegung eines

Objektes (z.B. des Menschen) von

Punkt A zu Punkt B.

• Alarmiere Benutzer, falls sich das Objekt

nicht an vorgeschriebene Routen hält.

Andere Beispiele:• Erdbeben früh erkennen (Quakefinder)

- durch Satellitenbeobachtungen

• Vulkane auf Venus erkennen (JARtool)

[Knorr, Ng, Tucakov 2000]: Triclops