1 / 79

Efficient Spatial Data Clustering with PC-tree Technology

Introducing a novel clustering method using Peano Count Tree (PC-tree) for efficient analysis of large spatial datasets. Learn about spatial data background, bSQ format benefits, and major clustering methods including K-means and K-medoids. Explore CLARA and CLARANS algorithms for large applications. Discover a unique approach to clustering with interval P-trees for outlier removal in spatial data analysis.

janieb
Download Presentation

Efficient Spatial Data Clustering with PC-tree Technology

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Clustering Analysis of Spatial Data Using pTrees(pTree technology is patented by NDSU)

  2. Introduction • Existing methods are not suitable for cluster analysis due to the large size. • Peano Count Tree (PC-tree) provides a lossless, compressed representation of a spatial dataset. • We introduce an efficient clustering methods using this structure.

  3. Background on Spatial Data • Band – attribute • Pixel – transaction (tuple) • Value – 0~255 (one byte) • Different kinds of images have different numbers of bands • TM4/5: 7 bands (B, G, R, NIR, MIR, TIR, MIR2) • TM7: 8 bands (B, G, R, NIR, MIR, TIR, MIR2, PC) • TIFF: 3 bands (B, G, R) • Ground data: individual bands (Yield, Moisture, Nitrate, Temperature)

  4. bSQ Format • Reasons of using bSQ format • Different bits contribute to the value differently. • bSQ format facilitates the representation of a precision hierarchy (from 1 bit up to 8 bit precision). • bSQ format facilitates the creation of an efficient data structure P-tree, P-tree algebra. • Example • A Landsat Thematic Mapper satellite image, is in BSQ format with 7 bands, B1,…,B7, (Landsat-7 has 8) and ~40,000,000 8-bit data values. In this case, the bSQ format will consist of 56 separate files, B11,…,b78, each containing ~40,000,000 bits.

  5. Clustering Methods A Categorization of Major Clustering Methods • Partitioning methods • Hierarchical methods • Density-based methods • Grid-based methods • Model-based methods

  6. Clustering Methods based on Partitioning • Partitioning method: Construct a partition of a database D of n objects into a set of k clusters • Given a k, find a partition of k clusters that optimizes the chosen partitioning criterion • k-means (MacQueen’67): Each cluster is represented by the center of the cluster • k-medoids or PAM (Partition around medoids) (Kaufman & Rousseeuw’87): Each cluster is represented by one of the objects in the cluster

  7. The K-Means Clustering Method • Given k, the k-means algorithm is implemented in 4 steps: • Partition objects into k nonempty subsets • Compute seed points as the centroids of the clusters of the current partition. The centroid is the center (mean point) of the cluster. • Assign each object to the cluster with the nearest seed point. • Go back to Step 2, stop when no more new assignment.

  8. The K-Means Clustering Method • Strength • Relatively efficient: O(tkn), where n is # objects, k is # clusters, and t is # iterations. Normally, k, t << n. • Weakness • Applicable only when mean is defined. • Need to specify k, the number of clusters, in advance. • It is sensitive to noisy data and outliers since a small number of such data can substantially influence the mean value.

  9. The K-Medoids Clustering Method • Find representative objects, called medoids, in clusters • PAM (Partitioning Around Medoids, 1987) • starts from an initial set of medoids and iteratively replaces one of the medoids by one of the non-medoids if it improves the total distance of the resulting clustering • PAM works effectively for small data sets, but does not scale well for large data sets • CLARA (Kaufmann & Rousseeuw, 1990) • CLARANS (Ng & Han, 1994): Randomized sampling

  10. PAM (Partitioning Around Medoids) (1987) • PAM (Kaufman and Rousseeuw, 1987), built in Splus • Use real object to represent the cluster • Select k representative objects arbitrarily • For each pair of non-selected object h and selected object i, calculate the total swapping cost TCih • For each pair of i and h, • If TCih < 0, i is replaced by h • Then assign each non-selected object to the most similar representative object • repeat steps 2-3 until there is no change

  11. CLARA (Clustering Large Applications) (1990) • CLARA (Kaufmann and Rousseeuw in 1990) • It draws multiple samples of the data set, applies PAM on each sample, and gives the best clustering as the output • Strength: deals with larger data sets than PAM • Weakness: • Efficiency depends on the sample size • A good clustering based on samples will not necessarily represent a good clustering of the whole data set if the sample is biased

  12. CLARANS (“Randomized” CLARA) (1994) • CLARANS (A Clustering Algorithm based on Randomized Search) (Ng and Han’94) • CLARANS draws sample of neighbors dynamically • The clustering process can be presented as searching a graph where every node is a potential solution, that is, a set of k medoids • If the local optimum is found, CLARANS starts with new randomly selected node in search for a new local optimum • It is more efficient and scalable than both PAM and CLARA

  13. Our Approach • Representing the original data set as interval P-trees by using higher-order-bits concept hierarchy • These P-trees can be viewed as groups (units) of data • Pruning out outliers by disregard those sparse values Input: total number of objects (N), all interval P-trees, percentage of outliers (t) Output: interval P-trees after prune (1) Choose the interval P-tree with smallest root count (Pv) (2) outliers:=outliers+RootCount(Pv) (3) if (outliers/N<= t) then remove Pv and repeat (1)(2) • Finding clusters using PAM method; each interval P-tree is an object

  14. Distance Function X11 … X1f … X1p . . . . . . . . . Xi1 … Xif … Xip . . . . . . . . . Xn1 … Xnf … Xnp 0 d(2,1) 0 d(3,1) d(3,2) 0 . . . . . . . . . . . . . . . d(n,1) d(n,2) … d(n,n-1) 0 • Data Matrix n objects × p variables • Dissimilarity Matrix n objects × n objects

  15. Example BSQ: 0,0 | 0011| 0111| 1000| 1011 0,1 | 0011| 0011| 1000| 1111 0,2 | 0111| 0011| 0100| 1011 0,3 | 0111| 0010| 0101| 1011 1,0 | 0011| 0111| 1000| 1011 1,1 | 0011| 0011| 1000| 1011 1,2 | 0111| 0011| 0100| 1011 1,3 | 0111| 0010| 0101| 1011 2,0 | 0010| 1011| 1000| 1111 2,1 | 0010| 1011| 1000| 1111 2,2 | 1010| 1010| 0100| 1011 2,3 | 1111| 1010| 0100| 1011 3,0 | 0010| 1011| 1000| 1111 3,1 | 1010| 1011| 1000| 1111 3,2 | 1111| 1010| 0100| 1011 3,3 | 1111| 1010| 0100| 1011 bSQ: B11B12B13B14 0000 0011 1111 1111 0000 0011 1111 1111 0011 0001 1111 0001 0111 0011 1111 0011 B21, B22, B23, B24 B21, B22, B23, B24 B21, B22, B23, B24 Basic P-trees: P11 , P12 , P13 , P14 P21 , P22 , P23 , P24 P31 , P32 , P33 , P34 P41 , P42 , P43 , P44 P11’, P12’, P13’, P14’ P21’, P22’’, P23 , P24’ P31’, P32’, P33’, P34’ P41’, P42’, P43’ , P44’ Value P-trees: P1,0000 P1,0100 P1,1000 P1,1100 P1,0010 P1,0110 P1,1010 P1,1110 P1,0001 P1,0101 P1,1001 P1,1101 P1,0011 P1,0111 P1,1011 P1,1111 P2,0000 P2,0100 P2,1000 P2,1100 P2,0010 P2,0110 P2,1010 P2,1110 P2,0001 P2,0101 P2,1001 P2,1101 P2,0011 P2,0111 P2,1011 P2,1111 P3,0000 P3,0100 P3,1000 P3,1100 P3,0010 P3,0110 P3,1010 P3,1110 P3,0001 P3,0101 P3,1001 P3,1101 P3,0011 P3,0111 P3,1011 P3,1111 P4,0000 P4,0100 P4,1000 P4,1100 P4,0010 P4,0110 P4,1010 P4,1110 P4,0001 P4,0101 P4,1001 P4,1101 P4,0011 P4,0111 P4,1011 P4,1111

  16. Example (Cont.) • Next, if the noise and outliers are estimated at about 25%, we delete the sparse groups. Tuple P-trees: (non-zero root count) P-0010,1011,1000,1111 3 0 0 3 0 1110 P-1010,1010,0100,1011 1 0 0 0 1 1000 P-1010,1011,1000,1111 1 0 0 1 0 0001 P-0011,0011,1000,1011 1 1 0 0 0 0001 P-0011,0011,1000,1111 1 1 0 0 0 0100 P-0011,0111,1000,1011 2 2 0 0 0 1010 P-0111,0010,0101,1011 2 0 2 0 0 0101 P-0111,0011,0100,1011 2 0 2 0 0 1010 P-1111,1010,0100,1011 3 0 0 0 3 0111

  17. Example (Cont.) • Assuming closeness is defined in terms of Euclidean distance of feature values, we use PAM method to partition the pixels into k clusters. (Let k=4) P-0010,1011,1000,1111 3 0 0 3 0 1110 P-0011,0111,1000,1011 2 2 0 0 0 1010 P-0111,0010,0101,1011 2 0 2 0 0 0101 P-0111,0011,0100,1011 2 0 2 0 0 1010 P-1111,1010,0100,1011 3 0 0 0 3 0111

  18. Conclusion & Discussion • P-tree is a lossless, data-mining ready data structure • We know PAM is not efficient in dealing with medium and large data sets. • CLARA and CLARANS draw samples from the original data randomly. • Our algorithm did not draw samples, but group the data first (each interval P-tree can be viewed as a group) • The PAM we use now only need to deal with the P-trees, and the number of P-trees are much smaller than the data set CLARA and CLARANS need to deal with. • Because the fast implementation of P-trees, the cost of our algorithm is very small. • Although the pruning method is somehow arbitrary, it works effectively.

  19. The K-Means Clustering Method • Example

  20. PAM Clustering: Total swapping cost TCih=jCjih j t t j h i h i h j i i h j t t

  21. Hierarchical Clustering Step 0 Step 1 Step 2 Step 3 Step 4 agglomerative (AGNES) a a b b a b c d e c c d e d d e e divisive (DIANA) Step 3 Step 2 Step 1 Step 0 Step 4 • Use distance matrix as clustering criteria. This method does not require the number of clusters k as an input, but needs a termination condition

  22. AGNES (Agglomerative Nesting) • Introduced in Kaufmann and Rousseeuw (1990) • Implemented in statistical analysis packages, e.g., Splus • Use the Single-Link method and the dissimilarity matrix. • Merge nodes that have the least dissimilarity • Go on in a non-descending fashion • Eventually all nodes belong to the same cluster

  23. A Dendrogram Shows How the Clusters are Merged Hierarchically • Decompose data objects into a several levels of nested partitioning (tree of clusters), called a dendrogram. • A clustering of the data objects is obtained by cutting the dendrogram at the desired level, then each connected component forms a cluster.

  24. DIANA (Divisive Analysis) • Introduced in Kaufmann and Rousseeuw (1990) • Implemented in statistical analysis packages, e.g., Splus • Inverse order of AGNES • Eventually each node forms a cluster on its own

  25. More on Hierarchical Clustering Methods • Major weakness of agglomerative clustering methods • do not scale well: time complexity of at least O(n2), where n is the number of total objects • can never undo what was done previously • Integration of hierarchical with distance-based clustering • BIRCH (1996): uses CF-tree and incrementally adjusts the quality of sub-clusters • CURE (1998): selects well-scattered points from the cluster and then shrinks them towards the center of the cluster by a specified fraction • CHAMELEON (1999): hierarchical clustering using dynamic modeling

  26. BIRCH (1996) • Birch: Balanced Iterative Reducing and Clustering using Hierarchies, by Zhang, Ramakrishnan, Livny (SIGMOD’96) • Incrementally construct a CF (Clustering Feature) tree, a hierarchical data structure for multiphase clustering • Phase 1: scan DB to build an initial in-memory CF tree (a multi-level compression of the data that tries to preserve the inherent clustering structure of the data) • Phase 2: use an arbitrary clustering algorithm to cluster the leaf nodes of the CF-tree • Scales linearly: finds a good clustering with a single scan and improves the quality with a few additional scans • Weakness: handles only numeric data, and sensitive to the order of the data record.

  27. Clustering Feature:CF = (N, LS, SS) N: Number of data points LS: Ni=1=Xi SS: Ni=1=Xi2 Clustering Feature Vector CF = (5, (16,30),(54,190)) (3,4) (2,6) (4,5) (4,7) (3,8)

  28. CF Tree CF1 CF2 CF3 CF6 child1 child2 child3 child6 Root B = 7 L = 6 Non-leaf node CF1 CF2 CF3 CF5 child1 child2 child3 child5 Leaf node Leaf node prev CF1 CF2 CF6 next prev CF1 CF2 CF4 next

  29. CURE (Clustering Using REpresentatives ) • CURE: proposed by Guha, Rastogi & Shim, 1998 • Stops the creation of a cluster hierarchy if a level consists of k clusters • Uses multiple representative points to evaluate the distance between clusters, adjusts well to arbitrary shaped clusters and avoids single-link effect

  30. Drawbacks of Distance-Based Method • Drawbacks of square-error based clustering method • Consider only one point as representative of a cluster • Good only for convex shaped, similar size and density, and if k can be reasonably estimated

  31. Cure: The Algorithm • Draw random sample s. • Partition sample to p partitions with size s/p • Partially cluster partitions into s/pq clusters • Eliminate outliers • By random sampling • If a cluster grows too slow, eliminate it. • Cluster partial clusters. • Label data in disk

  32. Data Partitioning and Clustering y y y x y y x x • s = 50 • p = 2 • s/p = 25 • s/pq = 5 x x

  33. Cure: Shrinking Representative Points y y x x • Shrink the multiple representative points towards the gravity center by a fraction of . • Multiple representatives capture the shape of the cluster

  34. Clustering Categorical Data: ROCK • ROCK: Robust Clustering using linKs,by S. Guha, R. Rastogi, K. Shim (ICDE’99). • Use links to measure similarity/proximity • Not distance based • Computational complexity: • Basic ideas: • Similarity function and neighbors: Let T1 = {1,2,3}, T2={3,4,5}

  35. Rock: Algorithm • Links: The number of common neighbours for the two points. • Algorithm • Draw random sample • Cluster with links • Label data in disk {1,2,3}, {1,2,4}, {1,2,5}, {1,3,4}, {1,3,5} {1,4,5}, {2,3,4}, {2,3,5}, {2,4,5}, {3,4,5} 3 {1,2,3} {1,2,4}

  36. CHAMELEON • CHAMELEON: hierarchical clustering using dynamic modeling, by G. Karypis, E.H. Han and V. Kumar’99 • Measures the similarity based on a dynamic model • Two clusters are merged only if the interconnectivityand closeness (proximity) between two clusters are high relative to the internal interconnectivity of the clusters and closeness of items within the clusters • A two phase algorithm • 1. Use a graph partitioning algorithm: cluster objects into a large number of relatively small sub-clusters • 2. Use an agglomerative hierarchical clustering algorithm: find the genuine clusters by repeatedly combining these sub-clusters

  37. Overall Framework of CHAMELEON Construct Sparse Graph Partition the Graph Data Set Merge Partition Final Clusters

  38. Density-Based Clustering Methods • Clustering based on density (local cluster criterion), such as density-connected points • Major features: • Discover clusters of arbitrary shape • Handle noise • One scan • Need density parameters as termination condition • Several interesting studies: • DBSCAN: Ester, et al. (KDD’96) • OPTICS: Ankerst, et al (SIGMOD’99). • DENCLUE: Hinneburg & D. Keim (KDD’98) • CLIQUE: Agrawal, et al. (SIGMOD’98)

  39. Density-Based Clustering: Background p MinPts = 5 Eps = 1 cm q • Two parameters: • Eps: Maximum radius of the neighbourhood • MinPts: Minimum number of points in an Eps-neighbourhood of that point • NEps(p): {q belongs to D | dist(p,q) <= Eps} • Directly density-reachable: A point p is directly density-reachable from a point q wrt. Eps, MinPts if • 1) p belongs to NEps(q) • 2) core point condition: |NEps (q)| >= MinPts

  40. Density-Based Clustering: Background (II) p q o • Density-reachable: • A point p is density-reachable from a point q wrt. Eps, MinPts if there is a chain of points p1, …, pn, p1 = q, pn = p such that pi+1 is directly density-reachable from pi • Density-connected • A point p is density-connected to a point q wrt. Eps, MinPts if there is a point o such that both, p and q are density-reachable from o wrt. Eps and MinPts. p p1 q

  41. DBSCAN: Density Based Spatial Clustering of Applications with Noise Outlier Border Eps = 1cm MinPts = 5 Core • Relies on a density-based notion of cluster: A cluster is defined as a maximal set of density-connected points • Discovers clusters of arbitrary shape in spatial databases with noise

  42. DBSCAN: The Algorithm • Arbitrary select a point p • Retrieve all points density-reachable from p wrt Eps and MinPts. • If p is a core point, a cluster is formed. • If p is a border point, no points are density-reachable from p and DBSCAN visits the next point of the database. • Continue the process until all of the points have been processed.

  43. OPTICS: A Cluster-Ordering Method (1999) • OPTICS: Ordering Points To Identify the Clustering Structure • Ankerst, Breunig, Kriegel, and Sander (SIGMOD’99) • Produces a special order of the database wrt its density-based clustering structure • This cluster-ordering contains info equiv to the density-based clusterings corresponding to a broad range of parameter settings • Good for both automatic and interactive cluster analysis, including finding intrinsic clustering structure • Can be represented graphically or using visualization techniques

  44. OPTICS: Some Extension from DBSCAN • Index-based: • k = number of dimensions • N = 20 • p = 75% • M = N(1-p) = 5 • Complexity: O(kN2) • Core Distance • Reachability Distance D p1 o p2 o Max (core-distance (o), d (o, p)) r(p1, o) = 2.8cm. r(p2,o) = 4cm MinPts = 5 e = 3 cm

  45. Reachability-distance undefined ‘ Cluster-order of the objects

  46. DENCLUE: using density functions • DENsity-based CLUstEring by Hinneburg & Keim (KDD’98) • Major features • Solid mathematical foundation • Good for data sets with large amounts of noise • Allows a compact mathematical description of arbitrarily shaped clusters in high-dimensional data sets • Significant faster than existing algorithm (faster than DBSCAN by a factor of up to 45) • But needs a large number of parameters

  47. Denclue: Technical Essence • Uses grid cells but only keeps information about grid cells that do actually contain data points and manages these cells in a tree-based access structure. • Influence function: describes the impact of a data point within its neighborhood. • Overall density of the data space can be calculated as the sum of the influence function of all data points. • Clusters can be determined mathematically by identifying density attractors. • Density attractors are local maximal of the overall density function.

  48. Gradient: The steepness of a slope • Example

  49. Density Attractor

  50. Center-Defined and Arbitrary

More Related