Cluster AnalysisWhat is Cluster Analysis?Slide 3Clustering: Rich Applications and Multidisciplinary EffortsQuality: What Is Good Clustering?Similarity and Dissimilarity Between ObjectsSimilarity and Dissimilarity Between Objects (Cont.)Major Clustering ApproachesSome Other Major Clustering ApproachesTypical Alternatives to Calculate the Distance between ClustersSlide 11Clustering ApproachesPartitioning Algorithms: Basic ConceptSlide 14The K-Means Clustering MethodK-means ClusteringSlide 17Slide 18Slide 19Slide 20Slide 21ExampleSlide 23Slide 24In class PracticeSlide 26Slide 27Comments on the K-Means MethodWhat Is the Problem of the K-Means Method?Fuzzy C-means ClusteringSlide 31Slide 32Slide 33Slide 34Slide 35Slide 36Slide 37Fuzzy C-means Clustering http://home.dei.polimi.it/matteucc/Clustering/tutorial_html/cmeans.htmlSlide 39Slide 40Slide 41Slide 42Slide 43Cluster Analysis Dr. Bernard Chen Ph.D.Assistant ProfessorDepartment of Computer Science University of Central ArkansasFall 2010What is Cluster Analysis?Cluster: a collection of data objectsSimilar to one another within the same clusterDissimilar to the objects in other clustersCluster analysisFinding similarities between data according to the characteristics found in the data and grouping similar data objects into clustersWhat is Cluster Analysis?Clustering analysis is an important human activityEarly in childhood, we learn how to distinguish between cats and dogsUnsupervised learning: no predefined classesTypical applicationsAs a stand-alone tool to get insight into data distribution As a preprocessing step for other algorithmsClustering: Rich Applications and Multidisciplinary Efforts Pattern RecognitionSpatial Data Analysis Create thematic maps in GIS by clustering feature spacesDetect spatial clusters or for other spatial mining tasksImage ProcessingEconomic Science (especially market research)WWWDocument classificationCluster Weblog data to discover groups of similar access patternsQuality: What Is Good Clustering?A good clustering method will produce high quality clusters withhigh intra-class similarity (Similar to one another within the same cluster)low inter-class similarity(Dissimilar to the objects in other clusters)The quality of a clustering method is also measured by its ability to discover some or all of the hidden patternsSimilarity and Dissimilarity Between ObjectsDistances are normally used to measure the similarity or dissimilarity between two data objectsSome popular ones include: Minkowski distance:where i = (xi1, xi2, …, xip) and j = (xj1, xj2, …, xjp) are two p-dimensional data objects, and q is a positive integerIf q = 1, d is Manhattan distanceqqppqqjxixjxixjxixjid )||...|||(|),(2211||...||||),(2211 ppjxixjxixjxixjid Similarity and Dissimilarity Between Objects (Cont.)If q = 2, d is Euclidean distance:Also, one can use weighted distance, parametric Pearson correlation, or other disimilarity measures)||...|||(|),(2222211 ppjxixjxixjxixjid Major Clustering ApproachesPartitioning approach: Construct various partitions and then evaluate them by some criterion, e.g., minimizing the sum of square errorsTypical methods: k-means, k-medoids, CLARANSHierarchical approach: Create a hierarchical decomposition of the set of data (or objects) using some criterionTypical methods: Hierarchical, Diana, Agnes, BIRCH, ROCK, CAMELEONDensity-based approach: Based on connectivity and density functionsTypical methods: DBSACN, OPTICS, DenClueSome Other Major Clustering ApproachesGrid-based approach: based on a multiple-level granularity structureTypical methods: STING, WaveCluster, CLIQUEModel-based: A model is hypothesized for each of the clusters and tries to find the best fit of that model to each otherTypical methods: EM, SOM, COBWEBFrequent pattern-based:Based on the analysis of frequent patternsTypical methods: pClusterUser-guided or constraint-based: Clustering by considering user-specified or application-specific constraintsTypical methods: COD (obstacles), constrained clusteringTypical Alternatives to Calculate the Distance between ClustersSingle link: smallest distance between an element in one cluster and an element in the other, i.e., dis(Ki, Kj) = min(tip, tjq)Complete link: largest distance between an element in one cluster and an element in the other, i.e., dis(Ki, Kj) = max(tip, tjq)Average: avg distance between an element in one cluster and an element in the other, i.e., dis(Ki, Kj) = avg(tip, tjq)Typical Alternatives to Calculate the Distance between ClustersCentroid: distance between the centroids of two clusters, i.e., dis(Ki, Kj) = dis(Ci, Cj)Centroid: the “middle” of a cluster Medoid: distance between the medoids of two clusters, i.e., dis(Ki, Kj) = dis(Mi, Mj)Medoid: one chosen, centrally located object in the clusterNtNiipmC)(1Clustering Approaches1. Partitioning Methods2. Hierarchical Methods3. Density-Based MethodsPartitioning Algorithms: Basic ConceptPartitioning method: Construct a partition of a database D of n objects into a set of k clusters, s.t., min sum of squared distance21)(mimKmtkmtCmiPartitioning Algorithms: Basic ConceptGiven a k, find a partition of k clusters that optimizes the chosen partitioning criterionGlobal optimal: exhaustively enumerate all partitionsHeuristic methods: k-means and k-medoids algorithmsk-means (MacQueen’67): Each cluster is represented by the center of the clusterk-medoids or PAM (Partition around medoids) (Kaufman & Rousseeuw’87): Each cluster is represented by one of the objects in the clusterThe K-Means Clustering Method Given k, the k-means algorithm is implemented in four steps:1. Partition objects into k nonempty subsets2. Compute seed points as the centroids of the clusters of the current partition (the centroid is the center, i.e., mean point, of the cluster)3. Assign each object to the cluster with the nearest seed point 4. Go back to Step 2, stop when no more new assignmentK-means ClusteringK-means ClusteringK-means ClusteringK-means ClusteringK-means ClusteringThe K-Means Clustering Method 0123456789100 1 2 3 4 5 6 7 8 9 100123456789100 1 2 3 4 5 6 7 8 9 100123456789100 1 2 3 4 5 6 7 8 9 100123456789100 1 2 3 4 5 6 7 8 9 100123456789100 1 2 3 4 5 6 7 8 9
View Full Document