© University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002)...

37
© University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center Department of Computer Science University of Minnesota http://www.cs.umn.edu/~kumar
  • date post

    20-Dec-2015
  • Category

    Documents

  • view

    214
  • download

    0

Transcript of © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002)...

Page 1: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

1

CSci 8980: Data Mining (Fall 2002)

Vipin Kumar

Army High Performance Computing Research CenterDepartment of Computer Science

University of Minnesota

http://www.cs.umn.edu/~kumar

Page 2: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

2

Uses a number of points to represent a cluster. Representative points are found by selecting a constant

number of points from a cluster and then “shrinking” them toward the center of the cluster.

Cluster similarity is the similarity of the closest pair of representative points from different clusters.

Shrinking representative points toward the center helps avoid problems with noise and outliers.

CURE is better able to handle clusters of arbitrary shapes and sizes.

(CURE, Guha, Rastogi, Shim)

CURE: A Hierarchical Approach With Representative Points

Page 3: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

3

Experimental Results: CURE

Picture from CURE, Guha, Rastogi, Shim.

(centroid) (single link)

Page 4: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

4

Experimental Results: CURE

Picture from CURE, Guha, Rastogi, Shim.

(centroid)

(single link)

Page 5: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

5

CURE Cannot Handle Differing Densities

Original Points CURE

Page 6: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

6

Graph-Based Clustering

Graph-Based clustering uses the proximity graph– Start with the proximity matrix

– Consider each point as a node in a graph

– Each edge between two nodes has a weight which is the proximity between the two points.

– Initially the proximity graph is fully connected.

– MIN (single-link) and MAX (complete-link) can be viewed as starting with this graph.

In the most simple case, clusters are connected components in the graph.

Page 7: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

7

Graph-Based Clustering: Sparsification

The amount of data that needs to be processed is drastically reduced – Sparsification can eliminate more than 99% of

the entries in a similarity matrix.

– The amount of time required to cluster the data is drastically reduced.

– The size of the problems that can be handled is increased.

Page 8: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

8

Graph-Based Clustering: Sparsification …

Clustering may work better– Sparsification techniques keep the connections to

the most similar (nearest) neighbors of a point while breaking the connections to less similar points.

– The nearest neighbors of a point tend to belong to the same class as the point itself.

– This reduces the impact of noise and outliers and sharpens the distinction between clusters.

Sparsification facilitates the use of graph partitioning algorithms (or algorithms based on graph partitioning algorithms. – Chameleon and Hypergraph-based Clustering

Page 9: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

9

Sparsification in the Clustering Process

Page 10: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

10

Limitations of Current Merging Schemes

Existing merging schemes are static in nature.

Page 11: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

11

Chameleon: Clustering Using Dynamic Modeling

Adapt to the characteristics of the data set to find the natural clusters.

Use a dynamic model to measure the similarity between clusters.– Main property is the relative closeness and relative inter-

connectivity of the cluster.– Two clusters are combined if the resulting cluster shares

certain properties with the constituent clusters.– The merging scheme preserves self-similarity.

One of the areas of application is spatial data.

Page 12: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

12

Characteristics of Spatial Data Sets

• Clusters are defined as densely populated regions of the space.

• Clusters have arbitrary shapes, orientation, and non-uniform sizes.

• Difference in densities across clusters and variation in density within clusters.

• Existence of special artifacts (streaks) and noise.

The clustering algorithm must address the above characteristics

and also require minimal supervision.

Page 13: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

13

Chameleon: Steps

Preprocessing Step: Represent the Data by a Graph– Given a set of points, we construct the k-nearest-neighbor (k-NN) graph to capture the relationship between a point and its k nearest neighbors.

Phase 1: Use a multilevel graph partitioning algorithm on the graph to find a large number of clusters of well-connected vertices.– Each cluster should contain mostly points from one “true” cluster, i.e., is a sub-cluster of a “real” cluster.– Graph algorithms take into account global structure.

Page 14: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

14

Chameleon: Steps …

Phase 2: Use Hierarchical Agglomerative Clustering to merge sub-clusters.– Two clusters are combined if the resulting cluster shares certain properties with the constituent clusters.– Two key properties are used to model cluster similarity:

Relative Interconnectivity: Absolute interconnectivity of two clusters normalized by the internal connectivity of the clusters. Relative Closeness: Absolute closeness of two clusters normalized by the internal closeness of the clusters.

Page 15: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

15

Experimental Results: CHAMELEON

Page 16: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

16

Experimental Results: CHAMELEON

Page 17: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

17

Experimental Results: CURE (10 clusters)

Page 18: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

18

Experimental Results: CURE (15 clusters)

Page 19: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

19

Experimental Results: CHAMELEON

Page 20: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

20

Experimental Results: CURE (9 clusters)

Page 21: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

21

Experimental Results: CURE (15 clusters)

Page 22: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

22

Ordinary distance measures have problems– Euclidean distance is less appropriate in high

dimensions. Presences are more important that absences

– Cosine and Jaccard measure take into account presences, but don’t satisfy the triangle inequality. Example:

SNN distance is more appropriate in these cases

SNN Approach to Clustering: Distance

Point A1 A2 A3 A4 A5 A6 A7 A8 A9 A10p1 1 1 1 1 1 0 0 0 0 0p2 0 0 1 1 1 1 1 1 0 0p3 0 0 0 0 0 1 1 1 1 1

Page 23: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

23

i j i j4

In the SNN graph, the strength of a link is the number of shared near neighbors between documents given that the documents are connected

Shared Near Neighbor Graph

Page 24: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

24

Ordinary density measures have problems– Typical Euclidean density is number of points per unit

volume.– As dimensionality increases, density goes to 0.

Can estimate the relative density, i.,e, probability density, in a region– Look at the distance to the kth nearest neighbor, or– Look at the number of points within a fixed radius – However, since distances become uniform in high

dimensions, this does not work well either. If we use SNN similarity then we can obtain a more

robust definition of density.– Relatively insensitive to variations in normal density– Relatively insensitive to high dimensionality– Uniform regions are dense, gradients are not

SNN Approach to Clustering: Density

Page 25: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

25

Assume a DBSCAN definition of density– Number of points within Eps

Example

SNN Density Can Identify Core, Border and Noise Points

a) All Points b) High SNN Density c) Medium SNN Density d) Low SNN Density

Page 26: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

26

ROCK

ROCK (RObust Clustering using linKs )

– Clustering algorithm for data with categorical and Boolean attributes. It redefines the distances between points to be the

number of shared neighbors whose strength is greater than a given threshold

Then uses a hierarchical clustering scheme to cluster the data.

1. Obtain a sample of points from the data set.

2. Compute the link value for each set of points, i.e., transform the original similarities (computed by the Jaccard coefficient) into similarities that reflect the number of shared neighbors between points.

3. Perform an agglomerative hierarchical clustering on the data using the “number of shared neighbors” similarities and the “maximize the shared neighbors” objective function.

4. Assign the remaining points to the clusters that have been found.

Page 27: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

27

Creating the SNN Graph

Five Near Neighbor Graph

Link weights are number of Shared Nearest Neighbors

Shared Near Neighbor Graph

Link weights are number of Shared Nearest Neighbors

Page 28: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

28

Jarvis-Patrick Clustering

First, the k-nearest neighbors of all points are found. – In graph terms this can be regarded as breaking all but

the k strongest links from a point to other points in the proximity graph

A pair of points is put in the same cluster if – any two points share more than T neighbors and

– the two points are in each others k nearest neighbor list.

For instance, we might choose a nearest neighbor list of size 20 and put points in the same cluster if they share more than 10 near neighbors

JP is too brittle

Page 29: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

29

When Jarvis-Patrick Works Reasonably Well

Original Points Jarvis Patrick Clustering

6 shared neighbors out of 20

Page 30: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

30

Smallest threshold, T, that does not merge clusters.

Threshold of T - 1

When Jarvis-Patrick Does NOT Work Well

Page 31: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

31

SNN Clustering Algorithm

1. Compute the similarity matrix. This corresponds to a similarity graph with data points for nodes and edges whose weights are the similarities between data points.2. Sparsify the similarity matrix by keeping only the k most similar neighbors.This corresponds to only keeping the k strongest links of the similarity graph.3. Construct the shared nearest neighbor graph from the sparsified similarity matrix. At this point, we could apply a similarity threshold and find the connected components to obtain the clusters (Jarvis-Patrick algorithm4. Find the SNN density of each Point.Using a user specified parameters, Eps, find the number points that have an SNN similarity of Eps or greater to each point. This is the SNN density of the point.

Page 32: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

32

SNN Clustering Algorithm …

5. Find the core points. Using s user specified parameter, MinPts, find the core points, i.e., all points that have an SNN density greater than MinPts.6. Form clusters from the core points. If two core points are within a radius, Eps, of each other they are place in the same cluster.7. Discard all noise points. All non-core points that are not within a radius of Eps of a core point are discarded. 8. Assign all non-noise, non-core points to clusters. This can be done by assigning such points to the nearest core point.

(Note that steps 4-8 are DBSCAN)

Page 33: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

33

SNN Clustering Can Handle Differing Densities

Original Points SNN Clustering

Page 34: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

34

SNN Clustering Can Handle Other Difficult

Situations

Page 35: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

35

Finding Clusters of Time Series In Spatio-Temporal

Data

26 SLP Clusters via Shared Nearest Neighbor Clustering (100 NN, 1982-1994)

longitude

latitu

de

-180 -150 -120 -90 -60 -30 0 30 60 90 120 150 180

90

60

30

0

-30

-60

-90

13 26

24 25

22

14

16 20 17 18

19

15

23

1 9

6 4

7 10 12 11

3

5 2

8

21

SNN Clusters of SLP.

SNN Density of SLP Time Series Data

longitudela

titu

de

-180 -150 -120 -90 -60 -30 0 30 60 90 120 150 180

90

60

30

0

-30

-60

-90

SNN Density of Points on the Globe.

Page 36: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

36

Finding Clusters of Time Series In Spatio-Temporal

Data

0

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0.2

longitude

latit

ud

e

Area Weighted Correlation of SST vs. Land Temperature (corr > 0.0)

-180 -150 -120 -90 -60 -30 0 30 60 90 120 150 180

90

60

30

0

-30

-60

-90

Area Weighted Correlation of SST to Land temperature.

longitudela

titu

de

EL Nino Related SST Clusters

-180 -150 -120 -90 -60 -30 0 30 60 90 120 150 180

90

60

30

0

-30

-60

-90

Four SNN Clusters of SST.

Page 37: © University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.

© University of Minnesota Data Mining CSCI 8980 (Fall 2002)

37

Features and Limitations of SNN Clustering

Does not cluster all the points– Points can be added back in

Complexity of SNN Clustering is high– O( n * time to find numbers of neighbor within

Eps)

– In worst case, this is O(n2)

– For lower dimensions, there are more efficient ways to find the nearest neighbors R* Tree k-d Trees