BMC Bioinformatics

official impact factor 3.03

Open Access Methodology article

MULTI-K: accurate classification of microarray subtypes using ensemble k-means clustering

Eun-Youn Kim1, Seon-Young Kim2, Daniel Ashlock3 and Dougu Nam1*

Author Affiliations

1 National Institute for Mathematical Sciences (NIMS), Yuseong, Daejeon 305–340, Republic of Korea

2 Korea Research Institute of Bioscience and Biotechnology (KRIBB), PO Box 115, Yuseong, Daejeon 305–600, Republic of Korea

3 Department of Mathematics and Statistics, University of Guelph, Ontario, N1G 2R4, Canada

For all author emails, please log on.

BMC Bioinformatics 2009, 10:260 doi:10.1186/1471-2105-10-260

Published: 22 August 2009

Abstract

Background

Uncovering subtypes of disease from microarray samples has important clinical implications such as survival time and sensitivity of individual patients to specific therapies. Unsupervised clustering methods have been used to classify this type of data. However, most existing methods focus on clusters with compact shapes and do not reflect the geometric complexity of the high dimensional microarray clusters, which limits their performance.

Results

We present a cluster-number-based ensemble clustering algorithm, called MULTI-K, for microarray sample classification, which demonstrates remarkable accuracy. The method amalgamates multiple k-means runs by varying the number of clusters and identifies clusters that manifest the most robust co-memberships of elements. In addition to the original algorithm, we newly devised the entropy-plot to control the separation of singletons or small clusters. MULTI-K, unlike the simple k-means or other widely used methods, was able to capture clusters with complex and high-dimensional structures accurately. MULTI-K outperformed other methods including a recently developed ensemble clustering algorithm in tests with five simulated and eight real gene-expression data sets.

Conclusion

The geometric complexity of clusters should be taken into account for accurate classification of microarray data, and ensemble clustering applied to the number of clusters tackles the problem very well. The C++ code and the data sets tested are available from the authors.