Skip to main content

> ML_ALGORITHM // K-MEANS-CLUSTERING_v1.0

K-Means & K-Means++ Clustering

The benchmark iterative partitioning algorithm that minimizes intra-cluster Euclidean variance around k centroid prototypes.

Partitioning Clusteringclassical-unsupervisedhigh-intrinsicmedium (1k-100k)
Back to All Algorithms
Computational Complexity
Training Complexity:O(iterations * k * n * p)
Inference Complexity:O(k * p)
Hardware Profile
CPU Friendly:Yes
Requires GPU:No
Memory Footprint:low
Interpretability & Data
Interpretability Tier:high-intrinsic
Training Data Needs:medium (1k-100k)

Interpretability Assessment

Centroids directly represent the average feature vector of all members in each cluster.

Suitable Tasks & Supported Modalities

Suitable Tasks:
clusteringvector quantization
Supported Modalities:
tabular

Implementing Libraries

scikit-learnscikit-learn Consortium / Inria · v1.5.2
View Spec
caret-r
linfa
faiss

Foundational Literature

Least squares quantization in PCMStuart P. Lloyd (1982) · IEEE Transactions on Information Theory
k-means++: The Advantages of Careful SeedingDavid Arthur, Sergei Vassilvitskii (2007) · ACM-SIAM Symposium on Discrete Algorithms (SODA)
Common Pitfalls & Warnings
  • Selecting k arbitrarily without elbow curve or silhouette validation
  • Failing on non-convex or unevenly sized clusters