290 likes | 438 Views
A New Gravitational Clustering Algorithm. Jonatan Gomez, Dipankar Dasgupta , Olfa Nasraoui. Outline. Introduction Background Proposed Algorithm Analysis. Introduction. Many clustering techniques rely on the assumption that a data set follows a certain distribution and is free of noise
E N D
A New Gravitational Clustering Algorithm Jonatan Gomez, DipankarDasgupta, OlfaNasraoui
Outline • Introduction • Background • Proposed Algorithm • Analysis
Introduction • Many clustering techniques rely on the assumption that a data set follows a certain distribution and is free of noise • Given noise, several techniques (k-means, fuzzy k-means) based on a least squares estimate are spoiled • Most clustering algorithms require the number of clusters to be specified • The authors propose a novel, robust, unsupervised clustering technique based on Newton’s Law of Gravitation, and Newton’s second law of motion
Introduction • Gravitational concepts have been applied to cluster visualization and analysis before • Properties of Wright’s Gravitational Clustering [2]: • New position of a particle is found using remaining particles • When two particles are close they merge • Maximum movement of particles per iteration is capped • Algorithm terminates when only one particle remains • Improvements over Wright: • Speed, robustness, and determining number of clusters
Background • Newton’s Laws of Motion • If acceleration is constant:
Background • Newton’s Law of Gravitation
Background • Optimal Disjoint Set Union-Find Structure • A disjoint set Union-Find structure supports three operators: • MAKESET(X) FIND(X) UNION(X,Y) • Time complexity of any sequence of m Union and Find operations on n elements is at most O(m+n) in practice
Proposed Algorithm • Ideas behind applying gravitational law: • A data point exerts a higher gravitational force on other data points in the same cluster than on data points not in the same cluster. Thus, points in a cluster move toward the center of the cluster. • If a point is a noise point, the gravitational forces acting on it will be so small the point will be immobile. Thus, noise points won’t be assigned to any cluster
Proposed Algorithm Simplified equation used to move point x according to gravitational field of point y Velocity considered to be zero at all points in time Reduce G after each iteration to prevent the “big crunch”
Proposed Algorithm Use threshold to extract valid clusters which have at least a minimum number of points
Proposed Algorithm Similarities to Agglomerative Hierarchical Clustering Differences from Agglomerative Hierarchical Clustering
Proposed Algorithm Comparison to Wright [2]
Experiments Synthetic data
Experiments Results (over 10 trials) Parameters: M = 500, G = 7x10-6, ∆G = 0.01, ε = 10-4 k-Means and Fuzzy k-Means given 150 iterations
Experiments Clusters found by the G-algorithm
Experiments Clusters found by the G-algorithm (noise removed)
Experiments Movement of points over iterations
Experiments Scalability (average of 50 trails for each percentage) Do not need to use entire data set to get good results
Experiments Sensitivity to α Use α = 0.03
Experiments Sensitivity to G To big => one cluster To small => no clusters No universal value => depends on data set
Experiments Sensitivity to ∆(G) To big => no clusters To small => one cluster Best value ~0.01 based on experiments
Experiments Sensitivity to ε To big => one cluster
Experiments • Real data set • Intrusion detection benchmark data set • 42 attributes, 33 numerical, N = 492,021 • 2 classes – no intrusion (19.3%) and intrusion (80.7%) • Use only the numerical attributes • Use only 1% of the data (chosen randomly) • Parameter settings • G = 1x10-4 (based on testing) • ∆(G) = 0.01 • α = 0.03 • ε = 1x10-6 • M = 100
Experiments • Clustering-Classification Strategy • Assign to each cluster the class with more training data records assigned to that cluster • Given an unknown data point, the data point is assigned to the closest cluster (the center of the clusters is used to compute the distance)
Experiments Real data set results (over 100 trials)
Conclusions / Future Work • Successfully determines the number of clusters in noisy data sets • Can be used to pre-process data by removing noise • Three of four parameters can be set to constant values • Future Work: • Determine method to automatically set G • Extend to different distance metrics
References • [1] J. Gomez, D. Dasgupta, and O. Nasraoui, “A New Gravitational Clustering Algorithm,” In Proc. of the SIAM Int. Conf. on Data Mining, 2003. • [2] W. E. Wright, “Gravitational Clustering,” Pattern Recognition, 9:151-166, Pergamon Press, 1977.