[论文解读] OOD-DiskANN: Efficient and Scalable Graph ANNS for Out-of-Distribution Queries
OOD-DiskANN 提出了一种改进的基于图的近似最近邻搜索(ANNS)索引,通过在索引构建过程中利用少量分布外(OOD)查询样本,高效处理分布外(OOD)查询。通过集成查询感知的乘积量化(product quantization)与并行化的图重排序算法,该方法在保持高召回率及与现有方法相当的构建时间和内存占用的前提下,使 OOD 查询的延迟降低了高达 40%。
State-of-the-art algorithms for Approximate Nearest Neighbor Search (ANNS) such as DiskANN, FAISS-IVF, and HNSW build data dependent indices that offer substantially better accuracy and search efficiency over data-agnostic indices by overfitting to the index data distribution. When the query data is drawn from a different distribution - e.g., when index represents image embeddings and query represents textual embeddings - such algorithms lose much of this performance advantage. On a variety of datasets, for a fixed recall target, latency is worse by an order of magnitude or more for Out-Of-Distribution (OOD) queries as compared to In-Distribution (ID) queries. The question we address in this work is whether ANNS algorithms can be made efficient for OOD queries if the index construction is given access to a small sample set of these queries. We answer positively by presenting OOD-DiskANN, which uses a sparing sample (1% of index set size) of OOD queries, and provides up to 40% improvement in mean query latency over SoTA algorithms of a similar memory footprint. OOD-DiskANN is scalable and has the efficiency of graph-based ANNS indices. Some of our contributions can improve query efficiency for ID queries as well.
研究动机与目标
- 为解决 ANNS 系统在查询分布外(OOD)时性能显著下降的问题,例如跨模态的文本到图像检索。
- 在不牺牲分布内(ID)查询性能或增加内存与构建时间开销的前提下,提升 OOD 查询的搜索效率。
- 开发一种可扩展的基于磁盘的 ANNS 系统,仅在索引构建阶段使用少量 OOD 查询样本,即可适应 OOD 查询分布。
- 通过引入查询感知与自适应的枢轴学习,改进产品量化方案以适应 OOD 场景。
- 并行化并优化 DiskANN 中的图重排序步骤,以提升基于磁盘的、大规模 ANNS 工作负载下的 I/O 效率与搜索性能。
提出的方法
- 扩展 DiskANN 的图构建过程,在索引构建阶段引入少量(索引大小的 1%)OOD 查询,以实现对 OOD 查询更优的路由。
- 提出查询感知产品量化(APQ)与自适应 OQ(AOPQ),学习能最小化基础数据与 OOD 查询重建误差的量化中心。
- 适配并并行化最先进的图重排序算法,以降低基于磁盘的 ANNS 系统中 I/O 开销,提升搜索效率。
- 使用马氏距离直方图作为代理,识别 OOD 查询集合,从而系统性地评估分布偏移的影响。
- 搜索阶段采用宽度为 4 的束搜索(beam search),并使用 16 个搜索线程以优化多核硬件上的延迟表现。
- 保持固定的 200 GB 内存预算,并根据内存驻留或磁盘驻留存储选择 M = D 或 M = D/4 的 8 位产品量化。
实验结果
研究问题
- RQ1能否仅使用少量 OOD 查询样本,显著提升 ANNS 系统对分布外查询的效率,同时不降低分布内查询的性能?
- RQ2如何改进产品量化方法,以降低来自与基础数据分布不同的查询的量化误差?
- RQ3并行化的图重排序对基于磁盘的 ANNS 系统中 OOD 查询的 I/O 与延迟有何影响?
- RQ4通过引入对查询分布敏感的索引构建技术,能否显著缩小分布内与分布外查询延迟之间的性能差距?
- RQ5所提方法能否在保持内存与构建时间效率的同时,实现 OOD 查询的最先进召回率与延迟权衡?
主要发现
- 与最先进 ANNS 方法相比,OOD-DiskANN 在 OOD 查询上将平均查询延迟降低了 10–25%,在相同召回目标下延迟最高降低 40%。
- 搜索过程中 I/O 请求数量减少了 15–40%,直接贡献于延迟降低。
- 仅导致构建时间增加 7–12%,峰值内存与磁盘使用量未增加。
- 查询感知产品量化(APQ)与自适应 OQ(AOPQ)显著降低了 OOD 查询的量化误差,提升了搜索效率。
- 并行化图重排序算法有效降低了 I/O 开销,并在基于磁盘的、大规模数据集上保持了高性能。
- 在三个大规模数据集——Yandex Text-to-Image-1B、Turing Text-to-Image 与 Web Ads 上,该方法在 OOD 查询上持续优于现有 ANNS 系统。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。