230 likes | 388 Views
Clustering Aggregation. Nir Geffen 021537980 Yotam Margolin 039719729 Supervisor Professor Zeev Volkovich. ORT BRAUDE COLLEGE – SE DEPT. 16.01.2012. Purposes. Our goal is to study the results of different clustering ensemble techniques and to present the distinction
E N D
Clustering Aggregation Nir Geffen 021537980 Yotam Margolin 039719729 Supervisor Professor ZeevVolkovich ORT BRAUDE COLLEGE – SE DEPT. 16.01.2012
Purposes Our goal is to study the results of different clustering ensemble techniques and to present the distinction between the cluster ensemble and clustering aggregation approaches via self learning methodology – implemented for image segmentation.
Table of Contents • Introduction • What Does It Do? • Clustering • Spectral Clustering • Cluster Ensembles. • Consensus • HGPA • MCLA • Volkovich-Yahalom • Main Algorithm • SE Documents
What does it do? VYCAA HGPA Comparison Preprocess MCLA
Introduction – Clustering • Clustering is a method of the unsupervised learning aimed at partitioning a given data set into subsets named clusters, so that items belonging to the same cluster are similar to each other while items belonging to different clusters are not similar.
Introduction – SpectralClustering • What is wrong with classic clustering? • Spectral Clustering • Eigenvectors and eigenvalues • Noise removed Clustered by Spectral Clustered by K-Means
Introduction – Cluster Ensembles • As no clustering algorithm is agreed to be superior for any data set, a common practice is to construct several cluster solutions and to aggregate them. • We use the Consensus function approach to combine the resulting partitions into a new one, in order t increase the robustness of the clustering process. Spectral EM K-Means
Consensus • Algorithms that solve the Cluster Ensemble problem, are also known as Consensus functions, most of which rely on Graph theory.
Consensus II • Cluster-based Similarity Partitioning Algorithm (CSPA) • Simple. • Considered the brute-force. • Hyper Graph Partitioning Algorithm (HGPA), • Balanced. • Not always optimal. • Meta-CLustering Algorithm (MCLA) • high-end solution. • yields robust results.
Consensus III • A criteria by which to choose any specific consensus function is ANMI. ANMI (or Average Normalized Mutual Information) is defined as the average of the NMI which the final Clustering shares with the solutions. • Mutual Information I(X,Y )≤min(H(X),H(Y )).
HGPA – Steps • Create hyper-graph (hyper-edges are clusters from all clusterings). • Repeat K -1 times: • Obtain sub-set (Cluster) by min-cutting the hyper-graph while maintaining a vertex imbalance of at most 5%.
MCLA – Steps • Create hyper-graph G. • Expand hyper edges. (Create meta-graph from G). • Collapse meta-graph (Cluster meta graph to K clusters). • Compete for Objects
Volkovich-Yahalom - Purpose • Use various partitions of the same data set in order to define a new metric on the data set. • Using the new metric as an enhanced input for a clustering algorithm will produce better and more robust partitions. • This process can be utilizedrepeatedly, where in each step the metric is updated using the original data as well as the new cluster partition.
Volkovich-Yahalom – Steps Given m partitions, and the original dataset. Returns a new clustering . • For each partition , calculate to be the new metric learned by clustering results. • Combine by statistical means to complete R. • Calculate S to be the square root of R. • Cluster original data by new metric S, and k the desired number of clusters.
Main Algorithm - Steps • Produce r individual spectral partitions • Use MCLA to obtain Sc MCLA(x); • Use HGPA to obtain Sc HGPA(x); • Use Volkovich-Yahalom to obtain SC VYCAA(x); • By ANMI criterion, get the final decision Sc*(x) from Sc MCLA(x) and Sc HGPA(x) and Sc VYCAA (x).
Gui 1 GUI – Main window
Gui 2 GUI – Results window
SE Documents SE Documents
SE Documents SE Documents
SE Documents SE Documents
Test Plan • Unit test is our first line in the test plan(Test Driven Development) • Coding conventions . • Lint the code for errors such as dead-code or uninitialized pointers. • Usage and code coverage Test.
References [1] Z. Volkovich, O. Yahalom, "Clustering aggregation via the self-learning approach" , work in preparation 2010-2012 [2] A. Strehl, J Ghosh, "Cluster Ensembles – a knowledge Reuse Framework for Combining Multiple Partitions", Journal of machine Learning Research 3 (2002) 583- 617. [3] Y. Ng, M, Jordan, Y Weish, "On spectral clustering: analysis and an algorithm", 2002, Advances in neural information processing systems 14: proceedings of the 2002 conference, Sec.2, 849. [4] X. Ma, W. Wan, L. Jiao, “Spectral Clustering Ensemble for Image Segmentation”, 2009 GEC '09 Proceedings of the first ACM/SIGEVO Summit on Genetic and Evolutionary Computation. [5] I.S. Dhilon, Y. Guan, B. Kulis, “Kernel k-means, Spectral Clustering and Normalized Cuts”, 2004 http://www.cs.utexas.edu/~kulis/pubs/spectral_kdd.pdf [6] E. David, “Spectral Clustering”, 2008 Image Processing Seminar.
THE END! Thank you for listening!