Randomized Algorithms for Comparison-based Search
Dominique Tschopp, Suhas N. Diggavi, Payam Delgosha, Soheil Mohajer · Neural Information Processing Systems · 2011
This paper addresses the problem of finding the nearest neighbor (or one of the R-nearest neighbors) of a query object q in a database of n objects, when we can only use a comparison oracle. The comparison oracle, given two reference objects and a query object, returns the reference object most similar to the query object. The main problem we study is how to search the database for the nearest neighbor (NN) of a query, while minimizing the questions. The difficulty of this problem depends on properties of the underlying database. We show the importance of a characterization: combinatorial disorder D which defines approximate triangle inequalities on ranks. We present a lower bound of Ω(D log n/D + D2) average number of questions in the search phase for any randomized algorithm, which demonstrates the fundamental role of D for worst case behavior. We develop a randomized scheme for NN retrieval in O(D3 log2 n + D log2 n log log nD3) questions. The learning requires asking O(nD3 log2 n + D log2 n log log nD3) questions and O(n log2 n/ log(2 D)) bits to store.