问题标签 [faiss]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 在 Lambda Stack 上安装 Faiss
我想在 Lambda Stack 上安装 Faiss-GPU,conda install -c pytorch faiss-gpu
但没有安装 conda。
我尝试了这里提到的解决方案:使用此版本的 faiss https://anaconda.org/pytorch/faiss-gpu/1.6.0/download/linux-64/faiss-gpu-1.6.0-py36h1a5d453_0在 Google Colaboratory 上安装 faiss .tar.bz2但它说:
在 Lambda Stack 上安装 Faiss 的正确方法是什么?
python - faiss 错误:找不到满足要求 faiss 的版本(来自版本:无)
运行安装时:
我收到此错误:
当我使用 conda 时:
我收到此错误:
python - Faiss:如何创建大小为 1024 的 10M 向量的索引
我想创建一个大小为 1024 的近 10M 向量的索引。这是我使用的代码。
该代码适用于少量向量。但是当向量的数量大约为 2M 时,内存限制就会超过。我使用index.add()
而不是将向量附加到列表(向量 = [])。但它也没有奏效。
我想知道如何为大量向量创建索引。
k-means - k-mean 聚类 - 惯性只会变大
我正在尝试在人体关节的人体姿势数据集上使用来自faiss的 KMeans 聚类。我有 16 个身体部位,因此尺寸为 32。关节的缩放范围在 0 到 1 之间。我的数据集包含约 900.000 个实例。正如 faiss ( faiss_FAQ ) 所述:
根据经验,k-means 量化器在 20 次迭代和 1000 * k 个训练点之后没有一致的改进
将此应用于我的问题,我随机选择 50000 个实例进行训练。因为我想检查1 到 30 之间的集群k的数量。
现在到我的“问题”:
随着集群数量的增加,惯性直接增加(x轴上的n_cluster):
我尝试改变迭代次数、重做次数、详细和球形,但结果保持不变或变得更糟。我不认为这是我实施的问题;我在一个带有 2D 数据和非常清晰的集群的小示例上对其进行了测试,它确实有效。
是数据只是聚集不良还是我错过了另一个问题/错误?也许是 0 和 1 之间的值的缩放?我应该尝试另一种方法吗?
python - Facebook 库“faiss”的导入错误。它抛出 DLL 加载失败错误
Facebook 库“faiss”的导入错误。它抛出 DLL 加载失败错误
错误是:
ImportError:DLL 加载失败:找不到指定的模块。
谁能帮我这个?我已经安装了 pip install faiss-cpu 并且 python 版本是 3.7.9
它在colab中运行良好,但在本地电脑中却不行
python - 存储和检索图像特征的有效方法是什么?
我是计算机视觉的初学者,我的目标是为图像提取 K 近邻,我查看了 Annoy、Faiss、NMSLIB 算法并决定使用 Faiss 进行图像相似性。我有一个大数据集来检查最近的邻居。我目前正在使用 faiss.IndexFlatIP,因为它是一种蛮力方法,它以时间为代价提供了良好的结果。
问题:
- 除了蛮力方法,还有其他方法可以做到这一点并取得良好的效果吗?
- 目前我正在使用 pickle 来保存提取的大特征,有没有其他方法可以有效地存储和检索这些特征?
- 我目前正在使用 SIFT 进行特征提取,CNN 模型是否会胜过这个?
任何帮助将不胜感激。
python - Faiss Kmeans图像聚类中的错误
我有一组大约 200 张图像,我想将它们聚集成具有相似特征的图像组。我正在使用 Resnet50 从图像中提取特征向量,并在 Faiss Kmeans 的帮助下尝试将它们聚类成组。
我已经为 Faiss KMeans 定义了一个类,如这里的链接所示。
我将图像及其向量作为键值对存储在字典中。
我正在使用包“kneed”来确定集群的数量
现在我正在尝试使用 faiss Kmeans 将图像聚类到不同的组中,但我得到了AttributeError: 'Kmeans' object has no attribute 'fit'
on的错误kmeans.fit(feat)
当我尝试使用kmeans.train(feat)
在链接上找到的内容时,出现错误AssertionError
python - 如何以增量方式将索引添加到 python FAISS
我正在使用 Faiss 来索引我的巨大数据集嵌入,嵌入从 bert 模型生成。我想逐步添加嵌入,如果我只用 faiss.IndexFlatL2 添加它就可以了,但问题是在保存它时它的大小太大了。所以我尝试使用 faiss.IndexIVFPQ,但它需要在添加数据之前训练嵌入,所以我不能增量添加它,我必须先计算所有嵌入然后训练并添加它,它有问题,因为所有数据应该保存在 RAM 中,直到我写下来。有没有办法逐步做到这一点。这是我的代码:
当与 IndexIVFPQ 一起使用时:
python - FAISS-GPU 不能与 GPU 版本 30xx 一起使用
我正在编写 Python 源代码并使用 Faiss。我可以在 CPU、20xx GPU 上使用 Faiss,例如:RTX 2080Ti,... 但是,当我在 RTX 3060、RTX 3070 等设备上运行时,系统会死机,我无法通过 Ctrl + C 杀死程序。这是我使用的源代码:https ://github.com/facebookresearch/faiss/blob/main/tutorial/python/5-Multiple-GPUs.py
如果有人遇到此错误并成功修复它,请与我分享如何解决。
操作系统:Ubuntu 20.04
Faiss版本:发布1.7.1
运行在:GPU + Python