1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms.

Slides:



Advertisements
Similar presentations
Clustering.
Advertisements

Clustering (2). Hierarchical Clustering Produces a set of nested clusters organized as a hierarchical tree Can be visualized as a dendrogram –A tree like.
Hierarchical Clustering
Cluster Analysis: Basic Concepts and Algorithms
1 CSE 980: Data Mining Lecture 16: Hierarchical Clustering.
Hierarchical Clustering, DBSCAN The EM Algorithm
Data Mining Cluster Analysis: Advanced Concepts and Algorithms
© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/ Midterm topics Chapter 2 Data Data preprocessing Measures of similarity/dissimilarity Chapter.
Data Mining Cluster Analysis: Basic Concepts and Algorithms
DBSCAN – Density-Based Spatial Clustering of Applications with Noise M.Ester, H.P.Kriegel, J.Sander and Xu. A density-based algorithm for discovering clusters.
2001/12/18CHAMELEON1 CHAMELEON: A Hierarchical Clustering Algorithm Using Dynamic Modeling Paper presentation in data mining class Presenter : 許明壽 ; 蘇建仲.
Clustering Prof. Navneet Goyal BITS, Pilani
CS685 : Special Topics in Data Mining, UKY The UNIVERSITY of KENTUCKY Clustering CS 685: Special Topics in Data Mining Spring 2008 Jinze Liu.
More on Clustering Hierarchical Clustering to be discussed in Clustering Part2 DBSCAN will be used in programming project.
© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/ What is Cluster Analysis? l Finding groups of objects such that the objects in a group will.
Data Mining Cluster Analysis: Basic Concepts and Algorithms
unsupervised learning - clustering
Hierarchical Clustering Produces a set of nested clusters organized as a hierarchical tree Can be visualized as a dendrogram –A tree like diagram that.
© University of Minnesota Data Mining for the Discovery of Ocean Climate Indices 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance.
Data Mining Cluster Analysis: Advanced Concepts and Algorithms Lecture Notes for Chapter 9 Introduction to Data Mining by Tan, Steinbach, Kumar © Tan,Steinbach,
© University of Minnesota Data Mining CSCI 8980 (Fall 2002) 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center.
SCAN: A Structural Clustering Algorithm for Networks
Cluster Analysis.
Cluster Analysis: Basic Concepts and Algorithms
Cluster Analysis.  What is Cluster Analysis?  Types of Data in Cluster Analysis  A Categorization of Major Clustering Methods  Partitioning Methods.
Cluster Analysis (1).
What is Cluster Analysis?
Cluster Analysis CS240B Lecture notes based on those by © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004.
© University of Minnesota Data Mining for the Discovery of Ocean Climate Indices 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance.
Clustering An overview of clustering algorithms Dènis de Keijzer GIA 2004.
Chapter 3: Cluster Analysis  3.1 Basic Concepts of Clustering  3.2 Partitioning Methods  3.3 Hierarchical Methods The Principle Agglomerative.
DATA MINING LECTURE 8 Clustering The k-means algorithm
Clustering Unsupervised learning Generating “classes”
CHAMELEON : A Hierarchical Clustering Algorithm Using Dynamic Modeling
Cluster Analysis Part II. Learning Objectives Hierarchical Methods Density-Based Methods Grid-Based Methods Model-Based Clustering Methods Outlier Analysis.
Clustering Spatial Data Using Random Walk David Harel and Yehuda Koren KDD 2001.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Clustering COMP Research Seminar BCB 713 Module Spring 2011 Wei Wang.
Topic9: Density-based Clustering
CSE5334 DATA MINING CSE4334/5334 Data Mining, Fall 2014 Department of Computer Science and Engineering, University of Texas at Arlington Chengkai Li (Slides.
Chameleon: A hierarchical Clustering Algorithm Using Dynamic Modeling By George Karypis, Eui-Hong Han,Vipin Kumar and not by Prashant Thiruvengadachari.
Clustering.
CHAMELEON: A Hierarchical Clustering Algorithm Using Dynamic Modeling Author:George et al. Advisor:Dr. Hsu Graduate:ZenJohn Huang IDSL seminar 2001/10/23.
Data Mining Cluster Analysis: Advanced Concepts and Algorithms Lecture Notes for Chapter 9 Introduction to Data Mining by Tan, Steinbach, Kumar © Tan,Steinbach,
Presented by Ho Wai Shing
Ch. Eick: Introduction to Hierarchical Clustering and DBSCAN 1 Remaining Lectures in Advanced Clustering and Outlier Detection 2.Advanced Classification.
Data Mining Cluster Analysis: Basic Concepts and Algorithms.
Data Mining Cluster Analysis: Advanced Concepts and Algorithms
Data Mining Cluster Analysis: Basic Concepts and Algorithms Lecture Notes for Chapter 8 Introduction to Data Mining by Tan, Steinbach, Kumar © Tan,Steinbach,
Clustering/Cluster Analysis. What is Cluster Analysis? l Finding groups of objects such that the objects in a group will be similar (or related) to one.
Cluster Analysis: Basic Concepts and Algorithms. What is Cluster Analysis?  Finding groups of objects such that the objects in a group will be similar.
© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/ Data Mining: Cluster Analysis This lecture node is modified based on Lecture Notes for Chapter.
DATA MINING: CLUSTER ANALYSIS (3) Instructor: Dr. Chun Yu School of Statistics Jiangxi University of Finance and Economics Fall 2015.
CSE4334/5334 Data Mining Clustering. What is Cluster Analysis? Finding groups of objects such that the objects in a group will be similar (or related)
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Εξόρυξη Δεδομένων Ομαδοποίηση (clustering) Διδάσκων: Επίκ. Καθ. Παναγιώτης Τσαπάρας.
Data Mining: Basic Cluster Analysis
More on Clustering in COSC 4335
CSE 4705 Artificial Intelligence
Hierarchical Clustering: Time and Space requirements
Clustering 28/03/2016 A diák alatti jegyzetszöveget írta: Balogh Tamás Péter.
CSE 5243 Intro. to Data Mining
Data Mining K-means Algorithm
CS 685: Special Topics in Data Mining Jinze Liu
Data Mining Cluster Analysis: Advanced Concepts and Algorithms
CSE572, CBS598: Data Mining by H. Liu
CS 485G: Special Topics in Data Mining
CSE572, CBS572: Data Mining by H. Liu
CSE572, CBS572: Data Mining by H. Liu
CSE572: Data Mining by H. Liu
CS 685: Special Topics in Data Mining Jinze Liu
Presentation transcript:

1 CSE 980: Data Mining Lecture 17: Density-based and Other Clustering Algorithms

2 DBSCAN l 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.

3 DBSCAN: Core, Border, and Noise Points

4 DBSCAN Algorithm l Eliminate noise points l Perform clustering on the remaining points

5 DBSCAN: Core, Border and Noise Points Original Points Point types: core, border and noise Eps = 10, MinPts = 4

6 When DBSCAN Works Well Original Points Clusters Resistant to Noise Can handle clusters of different shapes and sizes

7 When DBSCAN Does NOT Work Well Original Points (MinPts=4, Eps=9.75). (MinPts=4, Eps=9.92) Varying densities High-dimensional data

8 DBSCAN: Determining EPS and MinPts l Idea is that for points in a cluster, their k th nearest neighbors are at roughly the same distance l Noise points have the k th nearest neighbor at farther distance l So, plot sorted distance of every point to its k th nearest neighbor

9 Hierarchical Clustering: Revisited l Creates nested clusters l 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 l Often starts with a proximity matrix –A type of graph-based algorithm

10 l Uses a number of points to represent a cluster l Representative points are found by selecting a constant number of points from a cluster and then “shrinking” them toward the center of the cluster l Cluster similarity is the similarity of the closest pair of representative points from different clusters CURE: Another Hierarchical Approach 

11 CURE l Shrinking representative points toward the center helps avoid problems with noise and outliers l CURE is better able to handle clusters of arbitrary shapes and sizes

12 Experimental Results: C URE Picture from CURE, Guha, Rastogi, Shim.

13 Experimental Results: CURE Picture from CURE, Guha, Rastogi, Shim. (centroid) (single link)

14 CURE Cannot Handle Differing Densities Original Points CURE

15 Graph-Based Clustering l 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 l In the simplest case, clusters are connected components in the graph.

16 Graph-Based Clustering: Sparsification l 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

17 Graph-Based Clustering: Sparsification … l 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. l Sparsification facilitates the use of graph partitioning algorithms (or algorithms based on graph partitioning algorithms. –Chameleon and Hypergraph-based Clustering

18 Sparsification in the Clustering Process

19 Limitations of Current Merging Schemes l 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

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)

21 Chameleon: Clustering Using Dynamic Modeling l Adapt to the characteristics of the data set to find the natural clusters l 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 l One of the areas of application is spatial data

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.

23 Chameleon: Steps l 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) l 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

24 Chameleon: Steps … l 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

25 Experimental Results: CHAMELEON

26 Experimental Results: CHAMELEON

27 Experimental Results: CURE (10 clusters)

28 Experimental Results: CURE (15 clusters)

29 Experimental Results: CHAMELEON

30 Experimental Results: CURE (9 clusters)

31 Experimental Results: CURE (15 clusters)

32 ij ij 4 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

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

34 ROCK (RObust Clustering using linKs) l 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

35 Jarvis-Patrick Clustering l 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 l 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 l 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 l Jarvis-Patrick clustering is too brittle

36 When Jarvis-Patrick Works Reasonably Well Original Points Jarvis Patrick Clustering 6 shared neighbors out of 20

37 Smallest threshold, T, that does not merge clusters. Threshold of T - 1 When Jarvis-Patrick Does NOT Work Well

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

39 SNN Clustering Algorithm … 5. Find the core points Using 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 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)

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

41 SNN Clustering Can Handle Differing Densities Original Points SNN Clustering

42 SNN Clustering Can Handle Other Difficult Situations

43 Finding Clusters of Time Series In Spatio-Temporal Data SNN Clusters of SLP. SNN Density of Points on the Globe.

44 Features and Limitations of SNN Clustering l Does not cluster all the points l Complexity of SNN Clustering is high –O( n * time to find numbers of neighbor within Eps) –In worst case, this is O(n 2 ) –For lower dimensions, there are more efficient ways to find the nearest neighbors  R* Tree  k-d Trees