A distributed framework for trimmed Kernel k-Means clustering. Issue 8 (August 2015) - Tsapanos, Nikolaos; Tefas, Anastasios; Nikolaidis, Nikolaos; Pitas, Ioannis
Abstract Data clustering is an unsupervised learning task that has found many applications in various scientific fields. The goal is to find subgroups of closely related data samples (clusters) in a set of unlabeled data. Kernel k-Means is a state of the art clustering algorithm. However, in contrast to clustering algorithms that can work using only a limited percentage of the data at a time, Kernel k-Means is a global clustering algorithm. It requires the computation of the kernel matrix, which takes <alternatives><inline-graphic xlink:href="ark:/27927/pgjjxkjt68" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink" />O(n2d)</alternatives> time and <alternatives><inline-graphic xlink:href="ark:/27927/pgjjxkm560" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink" />O(n2)</alternatives> space in memory. As datasets grow larger, the application of Kernel k-Means becomes infeasible on a single computer, a fact that strongly suggests a distributed approach. In this paper, we present such an approach to the Kernel k-Means clustering algorithm, in order to make its application to a large number of samples feasible and, thus, achieve high performance clustering results on very big datasets. Our distributed approach follows the MapReduce programming model and consists of 3 stages, the kernel matrix computation, a novel kernel matrix trimming method and the Kernel k-Means clustering algorithm.