English

k-Means Clustering of Lines for Big Data

Computational Geometry 2019-11-26 v3 Data Structures and Algorithms

Abstract

The input to the kk-median for lines problem is a set LL of nn lines in Rd\mathbb{R}^d, and the goal is to compute a set of kk centers (points) in Rd\mathbb{R}^d that minimizes the sum of squared distances over every line in LL and its nearest center. This is a straightforward generalization of the kk-median problem where the input is a set of nn points instead of lines. We suggest the first PTAS that computes a (1+ϵ)(1+\epsilon)-approximation to this problem in time O(nlogn)O(n \log n) for any constant approximation error ϵ(0,1)\epsilon \in (0, 1), and constant integers k,d1k, d \geq 1. This is by proving that there is always a weighted subset (called coreset) of dkO(k)log(n)/ϵ2dk^{O(k)}\log (n)/\epsilon^2 lines in LL that approximates the sum of squared distances from LL to any given set of kk points. Using traditional merge-and-reduce technique, this coreset implies results for a streaming set (possibly infinite) of lines to MM machines in one pass (e.g. cloud) using memory, update time and communication that is near-logarithmic in nn, as well as deletion of any line but using linear space. These results generalized for other distance functions such as kk-median (sum of distances) or ignoring farthest mm lines from the given centers to handle outliers. Experimental results on 10 machines on Amazon EC2 cloud show that the algorithm performs well in practice. Open source code for all the algorithms and experiments is also provided. This thesis is an extension of the following accepted paper: "kk-Means Clustering of Lines for Big Data", by Yair Marom & Dan Feldman, Proceedings of NeurIPS 2019 conference, to appear on December 2019.

Keywords

Cite

@article{arxiv.1903.06904,
  title  = {k-Means Clustering of Lines for Big Data},
  author = {Yair Marom and Dan Feldman},
  journal= {arXiv preprint arXiv:1903.06904},
  year   = {2019}
}