Faiss - 高维向量相似度检索和聚类库

作者: 北冥Master | 来源:发表于2019-06-17 00:39 被阅读0次

Facebook 开源的一个高性能的高维向量相似度检索和聚类库,开源协议为 BSD license。
github 上有 6000 多 stars。

Faiss 主要特性:

  • 支持相似度检索和聚类;
  • 支持多种索引方式;
  • 支持CPU和GPU计算;
  • 支持Python和C++调用;

Faiss 索引类型:

  • Exact Search for L2 #基于L2距离的确定搜索匹配
  • Exact Search for Inner Product #基于内积的确定搜索匹配
  • Hierarchical Navigable Small World graph exploration #分层索引
  • Inverted file with exact post-verification #倒排索引
  • Locality-Sensitive Hashing (binary flat index) #本地敏感hash
  • Scalar quantizer (SQ) in flat mode #标量量化索引
  • Product quantizer (PQ) in flat mode #笛卡尔乘积索引
  • IVF and scalar quantizer #倒排+标量量化索引
  • IVFADC (coarse quantizer+PQ on residuals) #倒排+笛卡尔乘积索引
  • IVFADC+R (same as IVFADC with re-ranking based on codes) # 倒排+笛卡尔乘积索引 + 基于编码器重排

第1个和第2个索引方式是属于精确匹配。
其他索引方式都是通过数据压缩的非精确匹配。
损失少量精度,但减少内存占用,支持大规模数据集,比如在单机上支持10亿规模的高维向量相似度检索。

开发资料:

github: https://github.com/facebookresearch/faiss
tutorial: https://github.com/facebookresearch/faiss/wiki/Getting-started

相关文章

  • Faiss - 高维向量相似度检索和聚类库

    Facebook 开源的一个高性能的高维向量相似度检索和聚类库,开源协议为 BSD license。github ...

  • faiss简介及示例

    简介 faiss是为稠密向量提供高效相似度搜索和聚类的框架。由Facebook AI Research研发。 具有...

  • faiss的安装使用

    1. Faiss简介 Faiss是Facebook开源的一款用于大规模P维向量最近邻检索的工具。 Faiss is...

  • 机器学习入门(六) — 聚类和相似度模型

    1 聚类和相似度-文档检索 2 检索感兴趣的文档 文件检索 挑战 3 用于测量相似度的单词计数表示 测量相似度 单...

  • Approximate Nearest Neighbor搜索

    典型场景:图像检索。高维检索。 本质: 很多稠密向量,要迅速找到某个点的临近点,并认为这是相似度最高的点。 原始数...

  • 手把手教你安装Faiss(Linux)

    前言 由于最近项目组引用Faiss库(Faiss是由Facebook AI Research研发的为稠密向量提供高...

  • Faiss

    Faiss核心算法实现 Faiss是FAIR出品的一个用于向量k-NN搜索的计算库,其作用主要在保证高准确度的前提...

  • 4-机器学习启蒙- 聚类和相似度模型

    4- 聚类和相似度模型 聚类和相似度: 文档检索 我们想从数据中推断出某种潜在的结构。结构是一组相关观测。对于一个...

  • 统计学习方法——修炼学习笔记14:聚类方法

    一、聚类的基本概念 1、相似度或距离 聚类的核心概念是相似度或距离。有多种相似度或距离的定义。因为相似度直接影响聚...

  • 向量组

    向量组的向量添加分量(增维)和向量组增加向量 增加维度:高维相关低维相关,低维无关高维无关 增加向量:原来无关,增...

网友评论

    本文标题:Faiss - 高维向量相似度检索和聚类库

    本文链接:https://www.haomeiwen.com/subject/ulwnfctx.html