WCCI 2012 IEEE World Congress on Computational Intelligence June, 10-15, 2012 - Brisbane, Australia IEEE CEC Memetic Clustering Based on Particle Swarm Optimizer and K-Means Zexuan Zhu1 , Member, IEEE, Wenmin Liu1 , Shan He2 , and Zhen Ji1 , Member, IEEE 1 Shenzhen City Key Laboratory of Embedded System Design College of Computer Science and Software Engineering Shenzhen University, Shenzhen, China 518060 2 School of Computer Science University of Birmingham, Edgbaston, Birmingham, B15 2TT, UK Abstract—This paper proposes an efficient memetic clustering algorithm (MCA) for clustering based on particle swarm optimizer (PSO) and K-means. Particularly, PSO is used as a global search to allow fast exploration of the candidate cluster centers. PSO has strong ability to find high quality solutions within tractable time, but it suffers from slow-down convergence as the swarm approaching optima. K-means, achieving fast convergence to optimum solutions, is utilized as local search to fine-tune the solutions of PSO in the framework of memetic algorithm. The performance of MCA is evaluated on four synthetic datasets and three high-dimensional gene expression datasets. Comparison study to K-means, PSO, and PSO-KM (jointed PSO and Kmeans) indicates that MCA is capable of identifying cluster centers more precisely and robustly than the other counterpart algorithms by taking advantage of both PSO and K-means. I. I NTRODUCTION Clustering is a common unsupervised learning technique for statistical data analysis. It aims to categorize observations into groups (also known as clusters) based on similarities so that the inherent property of the data can be discovered. Clustering algorithms mainly fall into two groups: hierarchical and partitional methods. Hierarchical clustering [1] organizes data samples in a hierarchical tree using either agglomerative or divisive approach. Partitional clustering [2] seeks to determine all samples into a set of non-overlapping clusters at once, so as to optimize some evaluation of the clustering. Both hierarchical and partitional methods have achieved promising results on numerous clustering problems. On high-dimensional data such as gene expression and text data, partitional methods are shown to be better choices and they tend to obtain better performance than hierarchical clustering [3], [4]. A key issue of partitional clustering is to optimize the evaluation of cluster partition. For example, K-means [2], the most commonly used partitional clustering method, proceeds to This work was supported in part by the National Natural Science Foundation of China, under Grants 61171125, 61001185, and 61102119, in part by the NSFC-RS joint project, in part by the Fok Ying-Tung Education Foundation, Guangdong Natural Science Foundation, under Grant 10151806001000002, in part by the Foundation for Distinguished Young Talents in Higher Education of Guangdong, under Grant LYM10113, in part by Scientific Research Foundation for the Returned Overseas Chinese Scholars, Ministry of Education of China, and in part by the Shenzhen City Foundation for Distinguished Young Scientists. All correspondence should be addressed to Prof. Zhen Ji (Email: [email protected], Tel.: +86 755 26557413). U.S. Government work not protected by U.S. copyright categorize data samples into K groups while minimizing intracluster variance. K-means is popular owning to its simplicity and efficiency, whereas it has some drawbacks such as: 1) it needs a predefined number of clusters k, 2) its performance is sensitive to the choice of initial clustering centers and it could easily be trapped in local minima, 3) it can deal only with clusters with spherical symmetrical point distribution. Computational intelligence techniques provide another kind of solutions to solve the optimization problems involved in partitional clustering. Among them, PSO is one of the most widely used for clustering. Inspired by social interaction of bird flocking or fish schooling, PSO was first proposed by Dr. Eberhart and Dr. Kennedy in 1995 [5] as a population-based stochastic optimization technique. It is easy to implement with only few parameters and model equations. PSO has been successfully applied on many clustering problems [6]–[12] thanks to its key advantages. PSO is a powerful global search method and robust to the random initialization, but it suffers from slow-down of convergence as the swarm approaching optima [13]. In this study, a memetic clustering algorithm (MCA) is proposed based on PSO and K-means to take advantage of both. Memetic algorithm (MA) [14] is commonly known as a synergy of evolutionary population-based global search approaches with separate lifetime learning process, where the latter is also known as local refinement heuristic or meme. MA is shown to converge to high-quality solutions more efficiently than its conventional counterpart thanks to the advantage of using both global search and local search [14]–[22]. MCA is not designed to solve all issues of K-means and PSO based clustering, but focuses on relieving the dependence of the clustering performance on initialization and accelerating the convergence to more accurate cluster centers. Particularly, MCA is designed to evolve a particle swarm of candidate cluster centers while minimizing the intra-cluster variance. The dependency of the performance on initialization and the possibility being trapped in local optimal are reduced by using PSO based global search. A K-means based local search is applied on each particle to refine the PSO solutions and accelerate the convergence in local region. The performance of MCA is evaluated on four synthetic and three gene expression datasets. MCA is observed to identify more precise cluster centers with better clustering performance than other counterpart algorithms. The remainder of this paper is organized as follows. Section II describes the details of the proposed MCA. Section IV shows the experimental results of the new algorithm on four synthetic and three gene expression datasets. Finally, Section V concludes this study. velocity of the a particle in the search space are represented as Pi = [pi1 , pi2 , ...pij ..., piN ] and Vi = [vi1 , vi2 , ...vij ..., viN ], respectively. CLPSO updates the velocity and position of the ith particle based on: II. M EMETIC C LUSTERING A LGORITHM MA is a framework for combining global search and local search to take the advantage of both. The main inspiration of MA is Dawkins’ notion of “meme”, which defines a unit of cultural evolution and represents the evolution law of human beings. In this study, a MA based clustering method is proposed to accelerate the search convergence of the cluster centers and increase the chances of identifying global optima. The procedure of MCA is outlined in Algorithm 1. where w is the inertia weight proposed by Shi and Eberhart [24] to balance the exploration and exploitation on the search space, c is an acceleration constant, rij denotes a random number in [0, 1], and pbest(fij )j represents the jth dimension of the exemplar particle’s pbest. The index fij of the exemplar particle is decided using Algorithm 2. Algorithm 1 The procedure of MCA 1: Initialize the position and velocity of each particle in PSO swarm; 2: while Stopping criteria are not satisfied do 3: Update the velocity and position of each particle according to (2) and (3); 4: Evaluate the fitness of each particle; 5: Perform the K-means based local search on each particle; 6: end while A. Particle Encoding and Fitness Calculation In MCA, each particle is designed to encode the candidate positions of K centers for a cluster partition. The position of each particle Pi = [pi1 , pi2 , ...pij ..., piN ] is denoted as a vector of N = K × L elements, where L denotes the dimension of a data sample. The fitness of each particle is evaluated based on the mean square error (MSE), also known as the intra-cluster variance: M ∑ ˜= 1 D [d min (xi )]2 M i=1 (1) where dmin (xi ) denotes the Euclidean distance between sample xi to its closest center encoded in the particle and M is the total number of samples. B. PSO based Global Search The global search in MCA is performed based on the comprehensive learning PSO (CLPSO) proposed by Liang et al. [23]. CLPSO is one of PSO variants attempting to mitigate the issue of premature convergence. Particularly, CLPSO enlarges the search space of each particle using a novel comprehensive learning strategy whereby all other particles’ historical best information is used to update a particle’s velocity. The particles of CLPSO cooperate and evolve using the comprehensive learning strategy to search for the global optimum in the N -dimensional search space. The position and vij = wvij + crij (pbest(fij )j − pij ) (2) pij = pij + vij (3) Algorithm 2 Selection of learning exemplar 1: INPUT: pij ; 2: Calculate a learning probability based on Pl = 0.05 + exp( 3: 4: 5: 6: 7: 8: 10(i−1) )−1 ps−1 0.45 ∗ exp(10)−1 , where ps is the swarm size; ′ Generate a random number rij in [0, 1]; ′ if rij > Pl then fij = i; else Randomly select two particles (excluding particle i) from the swam and assign fij the one with better fitness. end if If ∀j ∈ {1, 2, . . . , N } fij = i, a randomly selected dimension is forced to learn from another particle’s pbest. Once the exemplars for all dimensions of a particle are selected, the particle keeps learning from these exemplars until a stagnation of m generations is detected, then fij is renewed based on Algorithm 2. Unlike the conventional PSO which updates all dimensions of a particle according to its own best previous position pbest(i) and the global best position gbest, CLPSO updates each dimension of a particle to learn from any counterpart particle’s pbest, so that the swarm diversity is considerably increased and the issue of premature convergence is mitigated. For more details of CLPSO, the reader could refer to [23]. C. K-means based Local Search In general, PSO is capable of exploring and exploiting promising regions of the local search space, however, it takes a relatively long time to locate the exact local optimum within the region of convergence [13]. To overcome this problem, MCA adopts a K-means based local search to fine-tune the cluster centers encoded in each PSO particle and accelerate the search convergence of the algorithm. In particular, given a particle Pi , a K-means clustering is initialized with each of the K centers encoded in position Ck = [pi(kL−L+1) , pi(kL−L+2) , ..., pi(kL) ] and each data point xj is assigned to the closest cluster based on Euclidean distance measure: √ (4) Distance(xj , Ck ) = ∥xj − Ck ∥2
© Copyright 2024 ExpyDoc