Hierarchical Clustering -...

33
© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 48 Hierarchical Clustering Produces a set of nested clusters organized as a hierarchical tree Can be visualized as a dendrogram A tree like diagram that records the sequences of merges or splits 1 3 2 5 4 6 0 0.05 0.1 0.15 0.2 1 2 3 4 5 6 1 2 3 4 5

Transcript of Hierarchical Clustering -...

Page 1: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 48

Hierarchical Clustering

Produces a set of nested clusters organized as a hierarchical tree

Can be visualized as a dendrogram– A tree like diagram that records the sequences of

merges or splits

1 3 2 5 4 60

0.05

0.1

0.15

0.2

1

2

3

4

5

6

1

23 4

5

Page 2: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 49

Strengths of Hierarchical Clustering

Do not have to assume any particular number of clusters

– Any desired number of clusters can be obtained by ‘cutting’ the dendogram at the proper level

They may correspond to meaningful taxonomies– Example in biological sciences (e.g., animal kingdom,

phylogeny reconstruction, …)

Page 3: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 50

Hierarchical Clustering

Two main types of hierarchical clustering– Agglomerative:

Start with the points as individual clusters At each step, merge the closest pair of clusters until only one cluster (or k clusters) left

– Divisive: Start with one, all-inclusive cluster At each step, split a cluster until each cluster contains a point (or there are k clusters)

Traditional hierarchical algorithms use a similarity or distance matrix

– Merge or split one cluster at a time

Page 4: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 51

Agglomerative Clustering Algorithm

More popular hierarchical clustering technique

Basic algorithm is straightforward

• Compute the proximity matrix

• Let each data point be a cluster

• Repeat

• Merge the two closest clusters

• Update the proximity matrix

• Until only a single cluster remains

Key operation is the computation of the proximity of two clusters– Different approaches to defining the distance between

clusters distinguish the different algorithms

Page 5: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 52

Starting Situation

Start with clusters of individual points and a proximity matrix

p1

p3

p5

p4

p2

p1 p2 p3 p4 p5 . . .

.

.

. Proximity Matrix

Page 6: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 53

Intermediate Situation

After some merging steps, we have some clusters

C1

C4

C2 C5

C3

C2C1

C1

C3

C5

C4

C2

C3 C4 C5

Proximity Matrix

Page 7: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 54

Intermediate Situation

We want to merge the two closest clusters (C2 and C5) and update the proximity matrix.

C1

C4

C2 C5

C3

C2C1

C1

C3

C5

C4

C2

C3 C4 C5

Proximity Matrix

Page 8: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 55

After Merging

The question is “How do we update the proximity matrix?”

C1

C4

C2 U C5

C3? ? ? ?

?

?

?

C2 U C5C1

C1

C3

C4

C2 U C5

C3 C4

Proximity Matrix

Page 9: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 56

How to Define Inter-Cluster Similarity

p1

p3

p5

p4

p2

p1 p2 p3 p4 p5 . . .

.

.

.

Similarity?

MIN MAX Group Average Distance Between Centroids Other methods driven by an objective

function– Ward’s Method uses squared error

Proximity Matrix

Page 10: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 57

How to Define Inter-Cluster Similarity

p1

p3

p5

p4

p2

p1 p2 p3 p4 p5 . . .

.

.

.Proximity Matrix

MIN MAX Group Average Distance Between Centroids Other methods driven by an objective

function– Ward’s Method uses squared error

Page 11: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 58

How to Define Inter-Cluster Similarity

p1

p3

p5

p4

p2

p1 p2 p3 p4 p5 . . .

.

.

.Proximity Matrix

MIN MAX Group Average Distance Between Centroids Other methods driven by an objective

function– Ward’s Method uses squared error

Page 12: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 59

How to Define Inter-Cluster Similarity

p1

p3

p5

p4

p2

p1 p2 p3 p4 p5 . . .

.

.

.Proximity Matrix

MIN MAX Group Average Distance Between Centroids Other methods driven by an objective

function– Ward’s Method uses squared error

Page 13: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 60

How to Define Inter-Cluster Similarity

p1

p3

p5

p4

p2

p1 p2 p3 p4 p5 . . .

.

.

.Proximity Matrix

MIN MAX Group Average Distance Between Centroids Other methods driven by an objective

function– Ward’s Method uses squared error

× ×

Page 14: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 61

Cluster Similarity: MIN or Single Link

Similarity of two clusters is based on the two most similar (closest) points in the different clusters

– Determined by one pair of points, i.e., by one link in the proximity graph.

I1 I2 I3 I4 I5I1 1,00 0,90 0,10 0,65 0,20I2 0,90 1,00 0,70 0,60 0,50I3 0,10 0,70 1,00 0,40 0,30I4 0,65 0,60 0,40 1,00 0,80I5 0,20 0,50 0,30 0,80 1,00

1 2 3 4 5

Page 15: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 62

Hierarchical Clustering: MIN

Nested Clusters Dendrogram

1

2

3

4

5

6

1

2

3

4

5

3 6 2 5 4 10

0.05

0.1

0.15

0.2

Page 16: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 63

Strength of MIN

Original Points Two Clusters

• Can handle non-elliptical shapes

Page 17: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 64

Limitations of MIN

• Sensitive to noise and outliers

– Particular case: chain effect

Original Points Two Clusters

Page 18: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 65

Cluster Similarity: MAX or Complete Linkage

Similarity of two clusters is based on the two least similar (most distant) points in the different clusters

– Determined by all pairs of points in the two clusters

I1 I2 I3 I4 I5I1 1,00 0,90 0,10 0,65 0,20I2 0,90 1,00 0,70 0,60 0,50I3 0,10 0,70 1,00 0,40 0,30I4 0,65 0,60 0,40 1,00 0,80I5 0,20 0,50 0,30 0,80 1,00

1 2 3 4 5

Page 19: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 66

Hierarchical Clustering: MAX

Nested Clusters Dendrogram

3 6 4 1 2 50

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

1

2

3

4

5

6

1

2 5

3

4

Page 20: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 67

Strength of MAX

Original Points Two Clusters

• Less susceptible to noise and outliers

Page 21: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 68

Limitations of MAX

Original Points Two Clusters

•Tends to break large clusters

•Biased towards globular clusters

Page 22: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 69

Cluster Similarity: Group Average

Proximity of two clusters is the average of pairwise proximity between points in the two clusters.

Need to use average connectivity for scalability since total proximity favors large clusters

I1 I2 I3 I4 I5I1 1,00 0,90 0,10 0,65 0,20I2 0,90 1,00 0,70 0,60 0,50I3 0,10 0,70 1,00 0,40 0,30I4 0,65 0,60 0,40 1,00 0,80I5 0,20 0,50 0,30 0,80 1,00

1 2 3 4 5

Page 23: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 70

Hierarchical Clustering: Group Average

Nested Clusters Dendrogram

1

2

3

4

5

6

1

2

5

3

4

Page 24: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 71

Hierarchical Clustering: Group Average

Compromise between Single and Complete Link

Strengths– Less susceptible to noise and outliers

Limitations– Biased towards globular clusters

Page 25: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 72

Cluster Similarity: Ward’s Method

Similarity of two clusters is based on the increase in squared error when two clusters are merged

– Similar to group average if distance between points is distance squared

Less susceptible to noise and outliers

Biased towards globular clusters

Hierarchical analogue of K-means– Can be used to initialize K-means

Page 26: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 73

Hierarchical Clustering: Comparison

Group Average

Ward’s Method

1

2

3

4

5

61

2

5

3

4

MIN MAX

1

2

3

4

5

61

2

5

34

1

2

3

4

5

61

2 5

3

41

2

3

4

5

6

12

3

4

5

Page 27: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 74

Hierarchical Clustering: Time and Space

requirements

O(N2) space since it uses the proximity matrix. – N is the number of points.

O(N3) time in many cases– There are N steps and at each step the proximity

matrix (size: O(N2)) must be updated and searched

– Complexity can be reduced to O(N2 log(N) ) time for some approaches

Page 28: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 75

Hierarchical Clustering: Problems and

Limitations

Once a decision is made to combine two clusters, it cannot be undone

No objective function is directly minimized

Different schemes have problems with one or more of the following:

– Sensitivity to noise and outliers

– Difficulty handling different sized clusters and convex shapes

– Breaking large clusters

Page 29: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 76

Single-link HAC vs Graphs

1

2

3

4

5

6

D=0.23

D=0.11

Cut edges with D>0.121

2

3

4

5

6

3 6 2 5 4 10

0.05

0.1

0.15

0.2

Clusters = connected components

Page 30: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 77

Single-link HAC vs Graphs

Cut edges with D>0.18 1

2

3

4

5

6

Cut edges with D>0.15 1

2

3

4

5

6

3 6 2 5 4 10

0.05

0.1

0.15

0.2

3 6 2 5 4 10

0.05

0.1

0.15

0.2

Page 31: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 78

Complete-link HAC vs Graphs

Cut edges with D>0.25 1

2

3

4

5

6

Cut edges with D>0.15 1

2

3

4

5

6

Clusters ~ cliques – constraint: earlier cliques have precedence

3 6 4 1 2 50

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

3 6 4 1 2 50

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

Page 32: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 79

MST: Divisive Hierarchical Clustering

Build MST (Minimum Spanning Tree)– Start with a tree that consists of any point

– In successive steps, look for the closest pair of points (p, q) such that one point (p) is in the current tree but the other (q) is not

– Add q to the tree and put an edge between p and q

Page 33: Hierarchical Clustering - unipi.itdidawiki.cli.di.unipi.it/.../dm/dm2014_clustering_hierarchical.pdf · Hierarchical Clustering Two main types of hierarchical clustering – Agglomerative:

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 80

MST: Divisive Hierarchical Clustering

Use MST for constructing hierarchy of clusters

X