Core-set selection is the diversity-sampling half of active learning: instead of asking "which point is the model least sure about?" it asks "which small set of points, once labeled, best represents every point in feature space?" The classic algorithm is greedy k-center:
d(x, S) = min_{s in S} ||x - s||
pick next = argmax_{x in U} d(x, S)
S ← S ∪ {next}
coverage radius r(S) = max_{x} d(x, S)
Each step, the point that is currently farthest from every labeled point is added to the labeled set S. That greedily shrinks the covering radius r(S) — the worst-case distance from any unlabeled point to its nearest labeled neighbor. Greedy k-center is a proven 2-approximation to the optimal k-center radius, and it is exactly the acquisition rule behind the "Core-Set" batch active-learning method (Sener & Savarese, 2018): a batch chosen this way spreads labeling budget across every cluster and outlier region instead of clumping around one decision boundary, which is what pure uncertainty sampling tends to do.
- +1 point — runs one greedy k-center step and highlights the point it picked.
- Run batch — runs k consecutive greedy steps, animated.
- Coverage rings — draws a disc of radius r(S) around every labeled point; the disc shrinking each round is the covering radius decreasing.
- Random-baseline radius — the average covering radius of a same-size randomly chosen labeled set over several trials, computed on the same dataset. It is almost always larger than the core-set radius at equal budget — the numeric proof that greedy diversity sampling covers feature space more efficiently than picking labels blindly.
Real-world use: teams training models on huge unlabeled pools (image classifiers, LLM fine-tuning data, molecule screening) use core-set or hybrid uncertainty+diversity batches so each expensive round of human labeling covers new territory instead of re-confirming what the model already senses near one boundary.