Approximate Nearest Neighbors in Limited Space
Abstract
We consider the $(1+\epsilon)$approximate nearest neighbor search problem: given a set $X$ of $n$ points in a $d$dimensional space, build a data structure that, given any query point $y$, finds a point $x \in X$ whose distance to $y$ is at most $(1+\epsilon) \min_{x \in X} \xy\$ for an accuracy parameter $\epsilon \in (0,1)$. Our main result is a data structure that occupies only $O(\epsilon^{2} n \log(n) \log(1/\epsilon))$ bits of space, assuming all point coordinates are integers in the range $\{n^{O(1)} \ldots n^{O(1)}\}$, i.e., the coordinates have $O(\log n)$ bits of precision. This improves over the best previously known space bound of $O(\epsilon^{2} n \log(n)^2)$, obtained via the randomized dimensionality reduction method of Johnson and Lindenstrauss (1984). We also consider the more general problem of estimating all distances from a collection of query points to all data points $X$, and provide almost tight upper and lower bounds for the space complexity of this problem.
 Publication:

arXiv eprints
 Pub Date:
 June 2018
 arXiv:
 arXiv:1807.00112
 Bibcode:
 2018arXiv180700112I
 Keywords:

 Computer Science  Data Structures and Algorithms;
 Computer Science  Computational Geometry
 EPrint:
 COLT 2018