Edge Rewrite
// HTMLRewriter · presentation

This page was redesigned at the edge.

Cloudflare fetched the original article and streamed it through HTMLRewriter to apply an entirely new visual system without rebuilding the source page.

// request.cf · coarse context

A page that knows where it met you.

Only coarse request metadata is shown. This demo does not display or persist visitor IP addresses.

Country
US
Cloudflare location
CMH
Connection
HTTP/2
Language
Not provided

Ray ID: a21e6d9b8c773a24

Jump to content

Coreset

From Wikipedia, the free encyclopedia

In computational geometry and approximation algorithms, a coreset is a small, possibly weighted subset of an input point set that approximately preserves the value of a specified optimization problem. Solving the problem on the coreset yields a solution whose cost is provably close to the optimal solution for the full dataset. Coresets are widely used in geometric optimization, cluster analysis, data streams, and large-scale machine learning to reduce computational complexity while maintaining theoretical guarantees.[1][2]

Many geometric optimization problems admit coresets of size bounded by a function of the approximation parameter ε and the dimension, but independent of the input size. When such a coreset can be constructed in linear or near-linear time, it yields a polynomial-time approximation scheme (PTAS) or efficient approximation algorithm.

The concept of coresets emerged in the late 1990s and early 2000s within computational geometry, as part of a broader effort to develop approximation schemes for high-dimensional geometric problems. Early work connected coresets to ε-approximations and ε-nets in range spaces and VC dimension theory. Subsequent research extended the framework to clustering, streaming models, and distributed computation. Over time, coresets became a central tool in large-scale data analysis, particularly for clustering and regression problems, where exact computation on massive datasets is computationally infeasible.

Definition

[edit]

Let P be a finite set of points and let f(P, x) denote the cost of a candidate solution x to an optimization problem defined on P. For example, in k-means clustering, x may represent a set of k centers and f(P, x) the sum of squared distances from points in P to their nearest center.

A (strong) ε-coreset for P with respect to f is a (possibly weighted) subset S ⊆ P such that for all candidate solutions x,

where ε > 0 is a user-defined approximation parameter.

In many constructions, S is equipped with weights w(p) so that

where c(p, x) is the contribution of point p to the cost.

Some literature distinguishes between:

  • Strong coresets: The approximation guarantee holds uniformly for all candidate solutions x.
  • Weak coresets: The guarantee holds only for solutions near the optimum.

Construction techniques

[edit]

Coresets are typically constructed using one or more of the following techniques:

  • Importance sampling: Points are sampled with probability proportional to their sensitivity (their maximum relative influence on the objective function).
  • Random sampling and ε-approximations: Techniques from VC theory are used to guarantee uniform convergence.
  • Geometric partitioning: Space is partitioned and representative points are selected from each region.
  • Merge-and-reduce frameworks: Used in streaming and distributed settings to maintain coresets over time.

For many problems, the size of the coreset is O(g(ε, d)), where d is the dimension and the bound does not depend on the input size n.

Applications

[edit]

Clustering

[edit]

Coresets are widely used in clustering problems such as k-means clustering, k-median, and metric k-center.[3] For example, in k-means clustering in Euclidean space, one can construct a coreset of size O(k / ε²) (up to logarithmic factors in some settings), independent of n. Running an exact or heuristic clustering algorithm on the coreset yields a (1 + ε)-approximation for the original dataset.

This enables scalable clustering in large datasets and forms the basis of several practical machine learning systems.

Geometric optimization

[edit]

Coresets have been developed for problems including:

  • Minimum enclosing ball
  • Facility location
  • Projective clustering
  • Shape fitting

In low-dimensional settings, coresets often yield polynomial-time approximation schemes.

Regression and machine learning

[edit]

In regression problems such as least-squares fitting, coresets provide smaller weighted datasets that preserve the objective value. They are also used in:

  • Support vector machines
  • Subspace approximation
  • Hyperparameter optimization

More recently, coresets have been explored for dataset summarization and acceleration of training in large-scale machine learning pipelines.

Streaming and distributed computation

[edit]

In streaming models, data points arrive sequentially and storage is limited. Merge-and-reduce techniques maintain a small coreset whose size depends only on ε and problem parameters. Similarly, in distributed systems, composable coresets allow each machine to compute a local coreset, which can then be combined centrally while preserving approximation guarantees.

[edit]

Coresets are related to:

  • ε-approximations and ε-nets in range spaces
  • Randomized sketching techniques
  • Dimensionality reduction
  • Sublinear and streaming algorithms

References

[edit]
  1. Agarwal, Pankaj K.; Har-Peled, Sariel; Varadarajan, Kasturi R. (2005), "Geometric approximation via coresets", Combinatorial and Computational Geometry, Mathematical Sciences Research Institute Publications, vol. 52, pp. 1–30
  2. Feldman, Dan (2020). "Introduction to core-sets: an updated survey". arXiv:2011.09384 [cs.DS].
  3. Nijsten, Sam (2024-07-10). "Range-Centric Coresets in Dynamic Geometric Streams". Research Portal Eindhoven University of Technology. Retrieved 2025-02-21.