Concepedia

TLDR

Large training sets are essential for computer vision and machine learning, yet the most computationally expensive step is finding nearest‑neighbor matches for high‑dimensional vectors. The authors propose several new approximate nearest‑neighbor algorithms—including a binary‑feature multi‑tree method and a distributed framework—and evaluate them against existing approaches. They introduce randomized k‑d forests, priority‑search k‑means trees, and a multi‑tree hierarchical clustering method, and implement these in a distributed framework for large‑scale data. Their results show that randomized k‑d forests and priority‑search k‑means trees are the most efficient for high‑dimensional features, that the binary‑feature method outperforms current techniques, that algorithm choice depends on dataset characteristics, and that an automated configuration procedure and the open‑source FLANN library are now widely adopted.

Abstract

For many computer vision and machine learning problems, large training sets are key for good performance. However, the most computationally expensive part of many computer vision and machine learning algorithms consists of finding nearest neighbor matches to high dimensional vectors that represent the training data. We propose new algorithms for approximate nearest neighbor matching and evaluate and compare them with previous algorithms. For matching high dimensional features, we find two algorithms to be the most efficient: the randomized k-d forest and a new algorithm proposed in this paper, the priority search k-means tree. We also propose a new algorithm for matching binary features by searching multiple hierarchical clustering trees and show it outperforms methods typically used in the literature. We show that the optimal nearest neighbor algorithm and its parameters depend on the data set characteristics and describe an automated configuration procedure for finding the best algorithm to search a particular data set. In order to scale to very large data sets that would otherwise not fit in the memory of a single machine, we propose a distributed nearest neighbor matching framework that can be used with any of the algorithms described in the paper. All this research has been released as an open source library called fast library for approximate nearest neighbors (FLANN), which has been incorporated into OpenCV and is now one of the most popular libraries for nearest neighbor matching.

References

YearCitations

Page 1