File Exchange

image thumbnail

Sparsified K-Means

version (860 KB) by Stephen Becker
Extremely fast K-Means for big data


Updated 18 Apr 2018

GitHub view license on GitHub

KMeans for big data using preconditioning and sparsification, Matlab implementation. This has three main features:
(1) it has good code: same accuracy and 100x faster than Matlab's K-means for some cases. It also incorporates the latest research, such as using K-Means++ for the initialization (Note: Matlab's R2015 K-Means now uses K-Means++ too). The code is well-documented and conforms to the conventions of Matlab's K-means function when possible.
(2) optionally, you can enable the precondition-and-sample feature which is a novel method to allow efficient processing when the datasets are extremely large and slow to work with.

(3) for datasets that are a few TB in size, you can use the read-from-disk option so that the entire matrix is never loaded into RAM all at once.

Installation is easy; run `setup_kmeans.m` and it will install the mex files for you if necessary, and setup the appropriate paths.

Cite As

Stephen Becker (2020). Sparsified K-Means (, GitHub. Retrieved .

Comments and Ratings (2)

xiaofan Qin

cool.thank u

ankit dixit

Thanks for the acknowledgement. Awesome work Stephen.


Fixed typos in the description, no change to code (but github version is updated regularly)

MATLAB Release Compatibility
Created with R2013a
Compatible with any release
Platform Compatibility
Windows macOS Linux
Tags Add Tags