Projection search for approximate nearest neighbor
Feng Cheng, Bo Yang · 2016
Many existing approaches to speed up the nearest neighbor search are based on spatial partition trees, which search the nearest neighbor for a query sample by traversing the tree data structure in a guided depth-first manner. However, this search manner is generally observed to find the exact nearest neighbor at a early time, and spend the remaining time checking the other part of the tree without any further improvement on the accuracy. In order to avoid the massive cost of redundant tree traversal, an intuitive strategy is to narrow the search area. As is known, it is the projection values of data under splitting directions that decide the tree traversal path. Hence, utilizing the distribution of projection data, we propose a tree-based approximate nearest neighbor search algorithm in this paper. We greatly reduce the cost of tree traversal by limiting the search area within the nearby cells where the query lies in, and excluding those far apart. Furthermore, we guarantee a theoretical lower bound on the accuracy. Experiments on various real-world datasets show that our algorithm outperforms the conventional random projection tree, as well as the locality sensitive hashing for approximate nearest neighbor search.