向量搜索(Vector Search)通过将数据嵌入高维向量空间,用相似度度量找到最近邻。精确搜索(KNN)遍历全部数据保证100%召回但速度慢;近似最近邻(ANN)算法(HNSW/IVF/PQ)牺牲少量精度换取数百倍加速。本模块展示嵌入空间、相似度度量与精确vs近似的权衡。
相似度度量是向量搜索的核心。余弦相似度衡量方向夹角,对向量长度不敏感;点积兼顾方向与模长;L2距离(欧氏距离)衡量绝对位置差异。不同度量适合不同场景:文本语义常用余弦,图像特征常用L2。归一化后点积等价于余弦相似度。
HNSW(Hierarchical Navigable Small World)是目前最流行的图索引算法。借鉴Skip-List思想构建多层图:上层稀疏用于长距离跳跃,下层密集保证精度。搜索从顶层入口点贪心导航,逐层下沉。插入时按概率分配层数并连接邻居。查询复杂度接近O(log N)。
IVF(Inverted File)通过K-Means聚类将向量空间划分为多个桶(Voronoi单元)。查询时只搜索最近的nprobe个桶,将O(N)降为O(N×nprobe/nlist)。粗量化(Coarse Quantizer)定位候选桶,精排阶段在桶内精确计算。增大nprobe提升召回但降低速度。
乘积量化(Product Quantization)将高维向量切分为M段子向量,每段独立用K-Means学习码本(通常256个聚类中心)。每段向量用1字节码本索引替代,D维float向量压缩为M字节。压缩比可达32-64倍,距离通过查表(ADC)快速计算。是有损压缩,轻微影响精度。
实际系统常组合多种ANN技术。IVF-PQ用IVF快速定位桶+PQ压缩存储,兼顾速度与内存;HNSW-PQ用图索引导航+PQ压缩节点向量,极致内存效率;多探测(Multi-Probe)策略提升IVF召回;过滤搜索(Filter)结合元数据属性约束。混合索引是工业级向量数据库的核心。
向量搜索的核心权衡是召回率(Recall)与查询速度(QPS)的平衡。召回-速度曲线展示不同算法在相同精度下的吞吐量;内存-精度对比揭示压缩比的影响;扩展曲线展示数据量增长时的性能衰减;基准对比在标准数据集(SIFT1M/GIST1M)上横向评测各算法。
向量搜索是现代AI系统的基础设施。语义搜索将查询编码为向量检索相关文档;RAG检索从知识库召回上下文供LLM生成;推荐系统用向量相似度匹配用户与物品;去重匹配用向量距离识别近似重复内容。从搜索引擎到AI Agent,向量检索无处不在。