暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

十亿级内存图索引Elpis,大幅降低HNSW构建代价|论文分享

673
今天为大家分享一篇VLDB 2023年的向量检索论文:
Elpis: Graph-Based Similarity Search for Scalable Data Science
Elpis: 基于图的可扩展数据科学相似性搜索

论文概述

随着深度学习和大语言模型在生产环境的广泛部署,越来越多的高维向量数据被生产出来。管理和使用大规模的向量数据带来了巨大的时间和空间成本。

本文提出一种新方法Elpis,针对目前性能最高的近邻图索引,以树的形式重新设计索引结构,大幅改善了图索引的构建代价,同时也带来了查询上的性能提升。
论文结果显示,在十亿级数据集上,Elpis比HNSW构建快3-8倍,内存减少40%。
论文地址:https://www.vldb.org/pvldb/vol16/p1548-azizi.pdf
代码地址:https://helios2.mi.parisdescartes.fr/~themisp/elpis/

关键算法

索引结构

Elpis采用树+图的索引结构。首先由一棵树形索引快速将空间分区,数据在此时被聚类成合适大小的簇;此后Elpis在每个簇的数据上建HNSW图。

查询时,Elpis首先找到包含query的叶子节点,并在其对应的HNSW图上进行搜索获得初始结果。之后继续在树索引中使用优先级队列进行遍历:优先搜索距离query更近的分区,通过控制搜索节点的个数来控制召回与查询时延的trade-off。

Hercules树索引

树+图索引结构的核心思想是可以降低单个图的规模:从全量降低至聚类簇的大小。由于图索引的构建复杂度是超线性的,分拆构建可以降低整体时延,而且可以提高并行度。

然而,由于查询候选只局限于一个数据子集中,树索引的聚类效果会直接影响到查询精度。因此本文选择了一个精心设计的树索引Hercules (VLDB'22)。

Hercules基于数据分布的特征,自适应地将数据分段,并在所有分段中,找出最适合代表聚类特征的某一个子段,根据在该子段上的数据均值或标准差进行空间分割。

相比于IVF/K-means等算法,Hercules不需要迭代训练,而是在构建索引时根据局部数据分布自适应寻找空间分割方式,使得Hercules构建速度快、分割质量更好。

并行算法

Elpis的构建和查询可以充分利用并行性。
在构建时,Hercules树索引可以并行构建,而不同叶子节点上的图索引可以天然无锁并行构建。
在查询时,Elpis具有查询内并行的能力,即调用多个线程服务一个查询。在访问首个叶子节点之后,可以首先快速排序得到后续的若干叶子节点,然后同时搜索实现并行。
值得一提的是,Hercules树可以提供安全的剪枝,这意味着树索引的分区在极限情况下不会带来精度损失。这一点在论文实验中得以验证,即在十亿级别数据集上仍可获得99%的召回。

精彩段落

<<< 左右滑动见更多 >>>

总结

本文设计了一个针对十亿级数据集的向量索引Elpis,在图索引的上层引入了Hercules树,首先对大数据集分区,再在分区中建图索引。Elpis在大数据集上获得了突出的性能提升。

文章给予的一个重要启示是图索引的可伸缩性,即随着数据量增长,图索引的查询性能并未获得期望的对数级别增长,反而更接近线性,这使得其存在明显的性能缺口和改善空间。

延伸阅读

[1] VLDB'22:Hercules树索引 Hercules against data series similarity search (https://arxiv.org/pdf/2212.13297)

[2] VLDB'13:DSTree树索引 A data-adaptive and dynamic segmentation index for whole matching on time series (https://vldb.org/pvldb/vol6/p793-wang.pdf)

[3] PPoPP'24: 十亿级图索引并行算法与性能比较 ParlayANN: Scalable and Deterministic Parallel Graph-Based Approximate Nearest Neighbor Search Algorithms (https://www.cs.ucr.edu/~ygu/papers/PPoPP24/parlayann.pdf)

编者简介

王泽宇

复旦大学与巴黎西岱大学联合培养博士生,研究领域为高维数据(向量、序列等)管理和分析。以第一作者在SIGMOD,VLDB,VLDBJ,TKDE等数据库领域会议/期刊发表多篇论文,并担任审稿人。

个人主页:https://zeyuwang.top/ 

谷歌学术:https://scholar.google.com.hk/citations?hl=zh-CN&user=XXGhABIAAAAJ

技术博客:https://www.jianshu.com/u/d015902c6d09
👆 关注 AI 搜索引擎,获取更多专业技术分享 ~

文章转载自向量检索实验室,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论