Clustering II.

Slides:



Advertisements
Similar presentations
SEEM Tutorial 4 – Clustering. 2 What is Cluster Analysis?  Finding groups of objects such that the objects in a group will be similar (or.
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
Unsupervised Learning
Cluster Analysis: Basic Concepts and Algorithms
1 CSE 980: Data Mining Lecture 16: Hierarchical 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.
Data Mining Cluster Analysis Basics
Hierarchical Clustering, DBSCAN The EM Algorithm
PARTITIONAL CLUSTERING
Clustering Paolo Ferragina Dipartimento di Informatica Università di Pisa This is a mix of slides taken from several presentations, plus my touch !
© 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
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
Clustering II.
© University of Minnesota Data Mining for the Discovery of Ocean Climate Indices 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance.
4. Ad-hoc I: Hierarchical clustering
Cluster Analysis.
Cluster Analysis: Basic Concepts and Algorithms
Semi-Supervised Clustering Jieping Ye Department of Computer Science and Engineering Arizona State University
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 Ram Akella Lecture 6 February 23, & 280I University of California Berkeley Silicon Valley Center/SC.
DATA MINING LECTURE 8 Clustering The k-means algorithm
ZHANGXI LIN TEXAS TECH UNIVERSITY Lecture Notes 10 CRM Segmentation - Introduction.
Clustering Basic Concepts and Algorithms 2
Partitional and Hierarchical Based clustering Lecture 22 Based on Slides of Dr. Ikle & chapter 8 of Tan, Steinbach, Kumar.
START OF DAY 8 Reading: Chap. 14. Midterm Go over questions General issues only Specific issues: visit with me Regrading may make your grade go up OR.
Clustering Algorithms k-means Hierarchic Agglomerative Clustering (HAC) …. BIRCH Association Rule Hypergraph Partitioning (ARHP) Categorical clustering.
Data Mining Cluster Analysis: Basic Concepts and Algorithms Adapted from Lecture Notes for Chapter 8 Introduction to Data Mining by Tan, Steinbach, Kumar.
CSE5334 DATA MINING CSE4334/5334 Data Mining, Fall 2014 Department of Computer Science and Engineering, University of Texas at Arlington Chengkai Li (Slides.
Ch. Eick: Introduction to Hierarchical Clustering and DBSCAN 1 Remaining Lectures in Advanced Clustering and Outlier Detection 2.Advanced Classification.
Computational Biology Clustering Parts taken from Introduction to Data Mining by Tan, Steinbach, Kumar Lecture Slides Week 9.
Data Mining Cluster Analysis: Basic Concepts and Algorithms.
Hierarchical Clustering Produces a set of nested clusters organized as a hierarchical tree Can be visualized as a dendrogram – A tree like diagram that.
Compiled By: Raj Gaurang Tiwari Assistant Professor SRMGPC, Lucknow Unsupervised Learning.
Data Mining Cluster Analysis: Basic Concepts and Algorithms Lecture Notes for Chapter 8 Introduction to Data Mining by Tan, Steinbach, Kumar © Tan,Steinbach,
Definition Finding groups of objects such that the objects in a group will be similar (or related) to one another and different from (or unrelated to)
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.
Hierarchical Clustering
© 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: Basic Concepts and Algorithms Lecture Notes Introduction to Data Mining by Tan, Steinbach, Kumar © Tan,Steinbach, Kumar Introduction.
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)
Data Mining Cluster Analysis: Basic Concepts and Algorithms.
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Εξόρυξη Δεδομένων Ομαδοποίηση (clustering) Διδάσκων: Επίκ. Καθ. Παναγιώτης Τσαπάρας.
Data Mining Classification and Clustering Techniques Introduction to Data Mining by Tan, Steinbach, Kumar © Tan,Steinbach, Kumar Introduction to Data Mining.
Data Mining: Basic Cluster Analysis
Prof. Paolo Ferragina, Algoritmi per "Information Retrieval"
Hierarchical Clustering
Semi-Supervised Clustering
More on Clustering in COSC 4335
CSE 4705 Artificial Intelligence
Clustering CSC 600: Data Mining Class 21.
Clustering 28/03/2016 A diák alatti jegyzetszöveget írta: Balogh Tamás Péter.
What Is the Problem of the K-Means Method?
CSE 5243 Intro. to Data Mining
Data Mining K-means Algorithm
Hierarchical Clustering
Cluster Analysis: Basic Concepts and Algorithms
CSE 5243 Intro. to Data Mining
Clustering 23/03/2016 A diák alatti jegyzetszöveget írta: Balogh Tamás Péter.
Text Categorization Berlin Chen 2003 Reference:
Hierarchical Clustering
SEEM4630 Tutorial 3 – Clustering.
Hierarchical Clustering
Data Mining Cluster Analysis: Basic Concepts and Algorithms
Presentation transcript:

Clustering II

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

Strengths of Hierarchical Clustering No assumptions on the number of clusters Any desired number of clusters can be obtained by ‘cutting’ the dendogram at the proper level Hierarchical clusterings may correspond to meaningful taxonomies Example in biological sciences (e.g., phylogeny reconstruction, etc), web (e.g., product catalogs) etc

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

Complexity of hierarchical clustering Distance matrix is used for deciding which clusters to merge/split At least quadratic in the number of data points Not usable for large datasets

Agglomerative clustering algorithm Most popular hierarchical clustering technique Basic algorithm Compute the distance matrix between the input data points Let each data point be a cluster Repeat Merge the two closest clusters Update the distance matrix Until only a single cluster remains Key operation is the computation of the distance between two clusters Different definitions of the distance between clusters lead to different algorithms

Input/ Initial setting Start with clusters of individual points and a distance/proximity matrix p1 p3 p5 p4 p2 . . . . Distance/Proximity Matrix

Intermediate State After some merging steps, we have some clusters Distance/Proximity Matrix C5 C2

Intermediate State Merge the two closest clusters (C2 and C5) and update the distance matrix. C2 C1 C3 C5 C4 C3 C4 C1 Distance/Proximity Matrix C5 C2

After Merging “How do we update the distance matrix?” C2 U C5 C1 C3 C4 ? ? ? ? C4 C2 U C5 C3 ? C4 ? C1 C2 U C5

Distance between two clusters Each cluster is a set of points How do we define distance between two sets of points Lots of alternatives Not an easy task

Distance between two clusters Single-link distance between clusters Ci and Cj is the minimum distance between any object in Ci and any object in Cj The distance is defined by the two most similar objects

Single-link clustering: example Determined by one pair of points, i.e., by one link in the proximity graph. 1 2 3 4 5

Single-link clustering: example 5 1 2 3 4 5 6 4 3 2 1 Nested Clusters Dendrogram

Strengths of single-link clustering Two Clusters Original Points Can handle non-elliptical shapes

Limitations of single-link clustering Two Clusters Original Points Sensitive to noise and outliers It produces long, elongated clusters

Distance between two clusters Complete-link distance between clusters Ci and Cj is the maximum distance between any object in Ci and any object in Cj The distance is defined by the two most dissimilar objects

Complete-link clustering: example Distance between clusters is determined by the two most distant points in the different clusters 1 2 3 4 5

Complete-link clustering: example 5 4 1 2 3 4 5 6 2 3 1 Nested Clusters Dendrogram

Strengths of complete-link clustering Two Clusters Original Points More balanced clusters (with equal diameter) Less susceptible to noise

Limitations of complete-link clustering Two Clusters Original Points Tends to break large clusters All clusters tend to have the same diameter – small clusters are merged with larger ones

Distance between two clusters Group average distance between clusters Ci and Cj is the average distance between any object in Ci and any object in Cj

Average-link clustering: example Proximity of two clusters is the average of pairwise proximity between points in the two clusters. 1 2 3 4 5

Average-link clustering: example 5 4 1 2 3 4 5 6 2 3 1 Nested Clusters Dendrogram

Average-link clustering: discussion Compromise between Single and Complete Link Strengths Less susceptible to noise and outliers Limitations Biased towards globular clusters

Distance between two clusters Centroid distance between clusters Ci and Cj is the distance between the centroid ri of Ci and the centroid rj of Cj

Distance between two clusters Ward’s distance between clusters Ci and Cj is the difference between the total within cluster sum of squares for the two clusters separately, and the within cluster sum of squares resulting from merging the two clusters in cluster Cij ri: centroid of Ci rj: centroid of Cj rij: centroid of Cij

Ward’s distance for clusters Similar to group average and centroid distance Less susceptible to noise and outliers Biased towards globular clusters Hierarchical analogue of k-means Can be used to initialize k-means

Hierarchical Clustering: Comparison 5 5 1 2 3 4 5 6 4 4 1 2 3 4 5 6 3 2 2 1 MIN MAX 3 1 5 5 1 2 3 4 5 6 1 2 3 4 5 6 4 4 2 2 Ward’s Method 3 3 1 Group Average 1

Hierarchical Clustering: Time and Space requirements For a dataset X consisting of n points O(n2) space; it requires storing the distance matrix O(n3) time in most of the cases There are n steps and at each step the size n2 distance matrix must be updated and searched Complexity can be reduced to O(n2 log(n) ) time for some approaches by using appropriate data structures

Divisive hierarchical clustering Start with a single cluster composed of all data points Split this into components Continue recursively Monothetic divisive methods split clusters using one variable/dimension at a time Polythetic divisive methods make splits on the basis of all variables together Any intercluster distance measure can be used Computationally intensive, less widely used than agglomerative methods

Model-based clustering Assume data generated from k probability distributions Goal: find the distribution parameters Algorithm: Expectation Maximization (EM) Output: Distribution parameters and a soft assignment of points to clusters

Model-based clustering Assume k probability distributions with parameters: (θ1,…, θk) Given data X, compute (θ1,…, θk) such that Pr(X|θ1,…, θk) [likelihood] or ln(Pr(X|θ1,…, θk)) [loglikelihood] is maximized. Every point xєX need not be generated by a single distribution but it can be generated by multiple distributions with some probability [soft clustering]

EM Algorithm Initialize k distribution parameters (θ1,…, θk); Each distribution parameter corresponds to a cluster center Iterate between two steps Expectation step: (probabilistically) assign points to clusters Maximation step: estimate model parameters that maximize the likelihood for the given assignment of points

EM Algorithm Expectation step: assign points to clusters Initialize k cluster centers Iterate between two steps Expectation step: assign points to clusters Maximation step: estimate model parameters