113

Dual-tree kk-means with bounded iteration runtime

Abstract

k-means is a widely used clustering algorithm, but for kk clusters and a dataset size of NN, each iteration of Lloyd's algorithm costs O(kN)O(kN) time. Although there are existing techniques to accelerate single Lloyd iterations, none of these are tailored to the case of large kk, which is increasingly common as dataset sizes grow. We propose a dual-tree algorithm that gives the exact same results as standard kk-means; when using cover trees, we use adaptive analysis techniques to, under some assumptions, bound the single-iteration runtime of the algorithm as O(N+klogk)O(N + k log k). To our knowledge these are the first sub-O(kN)O(kN) bounds for exact Lloyd iterations. We then show that this theoretically favorable algorithm performs competitively in practice, especially for large NN and kk in low dimensions. Further, the algorithm is tree-independent, so any type of tree may be used.

View on arXiv
Comments on this paper