A Comprehensive Survey and Experimental Comparison of Graph-Based Approximate Nearest Neighbor Search
Mengzhao Wang, Xiaoliang Xu, Qiang Yue, Yuxiang Wang
TL;DR
This work surveys graph-based ANNS methods, introducing a four-base-graph taxonomy and a seven-component evaluation pipeline to enable fair, fine-grained comparisons of 13 algorithms. It conducts extensive experiments across eight real-world and 12 synthetic datasets, revealing that RNG- and MST-based approaches often offer superior search performance, especially on hard datasets, while graph quality alone does not guarantee best results. The authors provide practical guidelines, performance trade-off analyses, and a design for an optimized method, highlighting the importance of neighbor distribution and efficient routing. They also discuss ML-based optimizations and hardware considerations as future directions to bridge the gap between research and scalable, real-time systems.
Abstract
Approximate nearest neighbor search (ANNS) constitutes an important operation in a multitude of applications, including recommendation systems, information retrieval, and pattern recognition. In the past decade, graph-based ANNS algorithms have been the leading paradigm in this domain, with dozens of graph-based ANNS algorithms proposed. Such algorithms aim to provide effective, efficient solutions for retrieving the nearest neighbors for a given query. Nevertheless, these efforts focus on developing and optimizing algorithms with different approaches, so there is a real need for a comprehensive survey about the approaches' relative performance, strengths, and pitfalls. Thus here we provide a thorough comparative analysis and experimental evaluation of 13 representative graph-based ANNS algorithms via a new taxonomy and fine-grained pipeline. We compared each algorithm in a uniform test environment on eight real-world datasets and 12 synthetic datasets with varying sizes and characteristics. Our study yields novel discoveries, offerings several useful principles to improve algorithms, thus designing an optimized method that outperforms the state-of-the-art algorithms. This effort also helped us pinpoint algorithms' working portions, along with rule-of-thumb recommendations about promising research directions and suitable algorithms for practitioners in different fields.
