Counterexamples expose gaps in the proof of time complexity for cover trees introduced in 2006

Yury Elkin, Vitaliy Kurlin

View presentation:2022-10-17T20:07:00ZGMT-0600Change your timezone on the schedule page
2022-10-17T20:07:00Z
Exemplar figure, described by caption below
A comparison of different cover trees built on datasets from Example 2.4. \textbf{Left:} an implicit cover tree introduced in 2006 contains infinite repetitions of given points, see Definition 2.1. \textbf{Middle:} an explicit cover tree still includes repeated points, see Definition 2.2 \textbf{Right:} a new compressed cover tree is much smaller and includes each point only once, see [18,Definition 3.5].

The live footage of the talk, including the Q&A, can be viewed on the session page, TopoInVis: Opening, Keynote + Session 1.

Keywords

Cover tree, k-nearest neighbors, counterexample, compressed cover tree, dual-tree algorithms, parametrized time complexity

Abstract

This paper is motivated by the k-nearest neighbors search: given an arbitrary metric space, and its finite subsets (a reference set R and a query set Q), design a fast algorithm to find all k-nearest neighbors in R for every point q in Q. In 2006, Beygelzimer, Kakade, and Langford introduced cover trees to justify a near-linear time complexity for the neighbor search in the sizes of Q,R. Section 5.3 of Curtin's PhD (2015) pointed out that the proof of this result was wrong. The key step in the original proof attempted to show that the number of iterations can be estimated by multiplying the length of the longest root-to-leaf path in a cover tree by a constant factor. However, this estimate can miss many potential nodes in several branches of a cover tree, that should be considered during the neighbor search. The same argument was unfortunately repeated in several subsequent papers using cover trees from 2006. This paper explicitly constructs challenging datasets that provide counterexamples to the past proofs of time complexity for the cover tree construction, the k-nearest neighbor search presented at ICML 2006, and the dual-tree search algorithm published in NIPS 2009. The corrected near-linear time complexities with extra parameters are proved in another forthcoming paper by using a new compressed cover tree simplifying the original tree structure.