Radius-Guided Post-Clustering for Shape-Aware, Scalable Refinement of k-Means Results
Stefan Kober
TL;DR
The paper addresses the limitations of k-means in handling non-convex cluster shapes and fixed k by introducing a radius-based post-processing step. After running an initial k-means with a potentially overestimated $k$, it assigns each cluster a radius $r_i = \max_{x \in C_i} \|x - c_i\|_2$ and merges clusters whose centers satisfy $\|c_i - c_j\|_2 \le r_i + r_j$, enabling recovery of complex shapes. It also enables scalable clustering via recursive partitioning: clustering within tiles followed by a global radius-based merge preserves global structure across partitions. Experiments on the FCPS benchmark show high median clustering success across various overestimated $k$ values, demonstrating the method's effectiveness as a lightweight, drop-in refinement for k-means suitable for distributed and large-scale pipelines, with straightforward integration into existing scikit-learn workflows.
Abstract
Traditional k-means clustering underperforms on non-convex shapes and requires the number of clusters k to be specified in advance. We propose a simple geometric enhancement: after standard k-means, each cluster center is assigned a radius (the distance to its farthest assigned point), and clusters whose radii overlap are merged. This post-processing step loosens the requirement for exact k: as long as k is overestimated (but not excessively), the method can often reconstruct non-convex shapes through meaningful merges. We also show that this approach supports recursive partitioning: clustering can be performed independently on tiled regions of the feature space, then globally merged, making the method scalable and suitable for distributed systems. Implemented as a lightweight post-processing step atop scikit-learn's k-means, the algorithm performs well on benchmark datasets, achieving high accuracy with minimal additional computation.
