1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.
-
Upload
rudolf-richards -
Category
Documents
-
view
219 -
download
2
Transcript of 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.
![Page 1: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/1.jpg)
1
CSE 980: Data Mining
Lecture 17: Density-based and Other Clustering Algorithms
![Page 2: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/2.jpg)
2
DBSCAN
DBSCAN is a density-based algorithm.– Density = number of points within a specified radius (Eps)
– A point is a core point if it has more than a specified number of points (MinPts) within Eps
These are points that are at the interior of a cluster
– A border point has fewer than MinPts within Eps, but is in the neighborhood of a core point
– A noise point is any point that is not a core point or a border point.
![Page 3: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/3.jpg)
3
DBSCAN: Core, Border, and Noise Points
![Page 4: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/4.jpg)
4
DBSCAN Algorithm
Eliminate noise points Perform clustering on the remaining points
![Page 5: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/5.jpg)
5
DBSCAN: Core, Border and Noise Points
Original Points Point types: core, border and noise
Eps = 10, MinPts = 4
![Page 6: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/6.jpg)
6
When DBSCAN Works Well
Original Points Clusters
• Resistant to Noise
• Can handle clusters of different shapes and sizes
![Page 7: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/7.jpg)
7
When DBSCAN Does NOT Work Well
Original Points
(MinPts=4, Eps=9.75).
(MinPts=4, Eps=9.92)
• Varying densities
• High-dimensional data
![Page 8: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/8.jpg)
8
DBSCAN: Determining EPS and MinPts
Idea is that for points in a cluster, their kth nearest neighbors are at roughly the same distance
Noise points have the kth nearest neighbor at farther distance
So, plot sorted distance of every point to its kth nearest neighbor
![Page 9: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/9.jpg)
9
Hierarchical Clustering: Revisited
Creates nested clusters
Agglomerative clustering algorithms vary in terms of how the proximity of two clusters are computed
MIN (single link): susceptible to noise/outliers MAX/GROUP AVERAGE: may not work well with non-globular clusters
– CURE algorithm tries to handle both problems
Often starts with a proximity matrix– A type of graph-based algorithm
![Page 10: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/10.jpg)
10
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
CURE: Another Hierarchical Approach
![Page 11: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/11.jpg)
11
CURE
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
![Page 12: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/12.jpg)
12
Experimental Results: CURE
Picture from CURE, Guha, Rastogi, Shim.
![Page 13: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/13.jpg)
13
Experimental Results: CURE
Picture from CURE, Guha, Rastogi, Shim.
(centroid)
(single link)
![Page 14: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/14.jpg)
14
CURE Cannot Handle Differing Densities
Original Points CURE
![Page 15: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/15.jpg)
15
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 simplest case, clusters are connected components in the graph.
![Page 16: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/16.jpg)
16
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 proximity 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 17: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/17.jpg)
17
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 18: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/18.jpg)
18
Sparsification in the Clustering Process
![Page 19: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/19.jpg)
19
Limitations of Current Merging Schemes
Existing merging schemes in hierarchical clustering algorithms are static in nature– MIN or CURE:
merge two clusters based on their closeness (or minimum distance)
– GROUP-AVERAGE: merge two clusters based on their average connectivity
![Page 20: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/20.jpg)
20
Limitations of Current Merging Schemes
Closeness schemes will merge (a) and (b)
(a)
(b)
(c)
(d)
Average connectivity schemes will merge (c) and (d)
![Page 21: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/21.jpg)
21
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 22: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/22.jpg)
22
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 23: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/23.jpg)
23
Chameleon: Steps
Preprocessing Step: Represent the Data by a Graph– Given a set of points, construct the k-nearest-
neighbor (k-NN) graph to capture the relationship between a point and its k nearest neighbors
– Concept of neighborhood is captured dynamically (even if region is sparse)
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
![Page 24: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/24.jpg)
24
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 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 25: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/25.jpg)
25
Experimental Results: CHAMELEON
![Page 26: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/26.jpg)
26
Experimental Results: CHAMELEON
![Page 27: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/27.jpg)
27
Experimental Results: CURE (10 clusters)
![Page 28: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/28.jpg)
28
Experimental Results: CURE (15 clusters)
![Page 29: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/29.jpg)
29
Experimental Results: CHAMELEON
![Page 30: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/30.jpg)
30
Experimental Results: CURE (9 clusters)
![Page 31: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/31.jpg)
31
Experimental Results: CURE (15 clusters)
![Page 32: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/32.jpg)
32
i j i j4
SNN graph: the weight of an edge is the number of shared neighbors between vertices given that the vertices are connected
Shared Near Neighbor Approach
![Page 33: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/33.jpg)
33
Creating the SNN Graph
Sparse Graph
Link weights are similarities between neighboring points
Shared Near Neighbor Graph
Link weights are number of Shared Nearest Neighbors
![Page 34: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/34.jpg)
34
ROCK (RObust Clustering using linKs)
Clustering algorithm for data with categorical and Boolean attributes– A pair of points is defined to be neighbors if their similarity is greater
than some threshold– Use 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 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” as similarity measure and maximizing “the shared neighbors” objective function
4. Assign the remaining points to the clusters that have been found
![Page 35: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/35.jpg)
35
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
Jarvis-Patrick clustering is too brittle
![Page 36: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/36.jpg)
36
When Jarvis-Patrick Works Reasonably Well
Original Points Jarvis Patrick Clustering
6 shared neighbors out of 20
![Page 37: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/37.jpg)
37
Smallest threshold, T, that does not merge clusters.
Threshold of T - 1
When Jarvis-Patrick Does NOT Work Well
![Page 38: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/38.jpg)
38
SNN Clustering Algorithm
1. Compute the similarity matrixThis 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 neighborsThis 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 algorithm)
4. 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 39: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/39.jpg)
39
SNN Clustering Algorithm …
5. Find the core pointsUsing a 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 pointsAll 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 40: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/40.jpg)
40
SNN Density
a) All Points b) High SNN Density
c) Medium SNN Density d) Low SNN Density
![Page 41: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/41.jpg)
41
SNN Clustering Can Handle Differing Densities
Original Points SNN Clustering
![Page 42: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/42.jpg)
42
SNN Clustering Can Handle Other Difficult
Situations
![Page 43: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/43.jpg)
43
Finding Clusters of Time Series In Spatio-Temporal
Data
26 SLP Clusters via Shared Nearest Neighbor Clustering (100 NN, 1982-1994)
longitude
latit
ud
e
-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 44: 1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.](https://reader036.fdocuments.in/reader036/viewer/2022062806/56649ebc5503460f94bc52ab/html5/thumbnails/44.jpg)
44
Features and Limitations of SNN Clustering
Does not cluster all the points
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