Empirical complexity of comparator-based nearest neighbor descent
Jacob D. Baron, R. W. R. Darling

TL;DR
This paper presents an empirical analysis of a parallel Java implementation of the K-nearest neighbor descent algorithm, demonstrating its complexity, convergence behavior, and accuracy across different data distributions and dimensions.
Contribution
It introduces a parallel Java implementation with a natural termination criterion and provides empirical complexity and accuracy results for various data types.
Findings
Complexity is approximately O(n K^2 log_K(n)) for studied examples.
Number of update rounds is bounded by twice the diameter of the underlying graph.
Accuracy remains high up to 20 dimensions, then declines as predicted by theory.
Abstract
A Java parallel streams implementation of the -nearest neighbor descent algorithm is presented using a natural statistical termination criterion. Input data consist of a set of objects of type V, and a Function<V, Comparator<V>>, which enables any to decide which of is more similar to . Experiments with the Kullback-Leibler divergence Comparator support the prediction that the number of rounds of -nearest neighbor updates need not exceed twice the diameter of the undirected version of a random regular out-degree digraph on vertices. Overall complexity was in the class of examples studied. When objects are sampled uniformly from a -dimensional simplex, accuracy of the -nearest neighbor approximation is high up to , but declines in higher dimensions, as theory would predict.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsMachine Learning and Algorithms · Machine Learning and Data Classification · Algorithms and Data Compression
