faiss使用add_with_ids

逃离我推掉我的手 2022-11-27 08:47 204阅读 0赞

0.环境

  1. ubuntu16.04
  2. faiss-gpu=1.6.3

1.IndexFlatIP使用add_with_ids

  1. dimension = 30
  2. index = faiss.IndexFlatIP(dimension)
  3. index = faiss.IndexIDMap(index) #because IndexFlatIP do not support add_with_ids
  4. index.add_with_ids(g, g_pids) # works, the vectors are stored in the underlying index
  5. k = 1
  6. Distance, Index = index.search(g[:100], k)

2.IndexIVFFlat使用add_with_ids

  1. nlist = 10 #聚类中心
  2. dimension = 30
  3. quantizer = faiss.IndexFlatIP(dimension)
  4. index = faiss.IndexIVFFlat(quantizer, dimension, nlist, faiss.METRIC_INNER_PRODUCT)
  5. index.train(g)
  6. index.add_with_ids(g, g_pids)
  7. k = 1
  8. Distance, Index = index.search(g[:100], k)

发表评论

表情:
评论列表 (有 0 条评论,204人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Faiss入门及应用经验记录

    说起相似度检索TopK的问题,相信很多算法er在实际工程中会经常遇到,对此我们一般的解决方案是暴力检索,循环遍历所有向量计算相似度然后得出TopK。但当向量数量级达到百万千万甚

    相关 linux下安装Faiss

    Linux软件编译基本知识 > PS:这一部分自己也是一知半解,大家可以自行了解,仅对不太熟悉编译知识的同学进行普及。 正式安装之前先补充一些关于Linux上的开源软件

    相关 faiss的简单使用

    简介 faiss是为稠密向量提供高效相似度搜索和聚类的框架。由[Facebook AI Research][]研发。 具有以下特性。 1、提供多种检索方法