01 2018 档案
摘要:基础索引如下所示: 精确索引(IndexFlatL2): 主要参数d;占用字节4d;是否穷尽式搜索:是; 内积精确检索(IndexFlatIP):d;4d;是; 级联式图搜索(IndexHNSWFlat):d,M; 4d+8M; 否; 倒置文件与精确后检验(IndexIVFFlat):quantiz
阅读全文
摘要:Faiss建立在一些基础算法之上,这些基础算法都使用了非常高效率的实现方式:K means聚类,PCA,PQ编码/解码。 聚类 对存储在给定的2维tensor x中的向量集合进行聚类,如下所示: 结果中心点存储在kmeans.centroids中。目标函数的值(即kmeans的平方误差)以及迭代次数
阅读全文
摘要:"原文链接" (附代码) "翻译原文" 介绍 DLL(动态链接库)允许在一个独立的模块中封装一系列功能函数,然后以一个显式的C函数列表提供给外部使用者使用。在上个世纪80年代,当Dlls面世时,对于广大开发者只有C语言是切实可行的开发手段。所以,winddows DLLs很自然的以C函数和数据的形式
阅读全文
摘要:选择Index并不明显,有几个问题可以帮助选择Index。 是否需要精确结果 使用Flat。 是唯一能保证精确结果的Index。它为其他Index提供了对比标准。它不会压缩向量,不支持带标签添加,只能顺序添加。所以,如果你需要 ,使用 。 内存是否有限制 请注意Faiss所有的Index都是存储在R
阅读全文
摘要:C标准库和C++的STL是共享元件的例子,可以被我们的程序所链接。这样的好处是:每个对象文件在链接时不需要被陈述,因为开发者可以批量引用库。这简化了应用之间的元素共享和重复利用。 库类型 1. 静态库(.a) 2. 动态库(.so):这种类型的库只有一种形式,但是有两种使用方式: 1. 在运行时动态
阅读全文

浙公网安备 33010602011771号