NingG +

AI 实践:ANN 近似最近邻检索

疑问:向量检索(embedding + ANN) , 其中的 ANN 是什么?

这个 ANN 不是人工神经网络 (Artificial Neural Network),而是:


1. 为什么需要 ANN?

在向量检索里,每个文档片段都被编码成一个高维向量(embedding)

但问题是:

所以,引入 ANN:它放弃”完全精确”,转而使用高效的数据结构和算法来快速找到近似的、但几乎一样好的最近邻


2. 常见的 ANN 算法 / 数据结构

几类主流方法:

  1. 树结构 (Tree-based)

    • KD-Tree, Ball Tree 等
    • 适合低维数据,高维失效(curse of dimensionality)
  2. 哈希 (Hash-based)

    • LSH (Locality-Sensitive Hashing)
    • 把相似向量映射到相同桶里,加速查找
  3. 图结构 (Graph-based)

    • HNSW (Hierarchical Navigable Small World)
    • 建立”向量之间的邻居图”,查询时像爬图一样跳跃搜索
    • 目前是业界主流(比如 Milvus、Faiss、Weaviate 都支持)
  4. 量化 (Quantization-based)

    • PQ (Product Quantization)、IVF-PQ 等
    • 用压缩技术减少存储,并在粗粒度的索引上缩小候选范围

3. 应用场景


4. 总结

ANN 就是”为了在海量向量库里快速找到近似的最近邻”的算法集合,是向量检索的核心基础设施。

原文地址:https://ningg.top/ai-series-ann-intro/
微信公众号 ningg, 联系我

同类文章:

微信搜索: 公众号 ningg, 联系我, 交个朋友.

Top