美文网首页
2020-09-22 faiss聚类接口

2020-09-22 faiss聚类接口

作者: snow_14b5 | 来源:发表于2020-09-22 15:22 被阅读0次

Linux下,利用conda安装faiss也比较简单,几个命令即可:

安装cpu版本

更新conda

conda update conda

先安装mkl

conda install mkl

安装faiss-cpu

conda install faiss-cpu -c pytorch

测试安装是否成功

python -c "import faiss"

聚类的时候,可以利用faiss自带的接口:
import faiss
import pickle
import numpy as np
import time

x = np.random.random((100000, 2048)).astype('float32')
ncentroids = 10
niter = 500
verbose = True
d = x.shape[1]

start_time = time.time()

'''
d:向量维度
ncentroids:聚类中心
niter:迭代次数
verbose:是否打印迭代情况
gpu:是否使用GPU
'''
kmeans = faiss.Kmeans(d, ncentroids, niter=niter, verbose=verbose, gpu=False)
kmeans.train(x)

train_time = time.time()
print(train_time - start_time)

cluster_cents = kmeans.centroids
cluster_wucha = kmeans.obj

print(cluster_cents) //各类中心点向量

print(cluster_wucha)

D, I = kmeans.index.search(x, 1)
print(np.unique(np.array(I))) # 共有1000张数据,形状为[1000,2048]

search_time = time.time()
print(search_time - train_time)

index = faiss.IndexFlatL2 (d)
index.add (x)
D, I = index.search (kmeans.centroids, 15)
print(D)

相关文章

  • 2020-09-22 faiss聚类接口

    Linux下,利用conda安装faiss也比较简单,几个命令即可: 安装cpu版本 更新conda conda ...

  • faiss简介及示例

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

  • UML图之类图

    1.类图中包含几种模型元素 类,接口以及类之间的关系 1.1类 1.2接口 1.3类中的关系 泛化,实现,关联,聚...

  • Faiss学习:一

    在多个GPU上运行Faiss以及性能测试 一、Faiss的基本使用 1.1在CPU上运行 Faiss的所有算法都是...

  • faiss的安装使用

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

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

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

  • 聚类:原型聚类、层次聚类、密度聚类

    首先介绍三种类型的聚类方法: 原型聚类:假设聚类结构能够通过一组原型求解。通常算法先对原型进行初始化,然后进行迭代...

  • Clustering

    本文结构安排 经典聚类算法:线性聚类 Kmeans 经典聚类算法:非线性聚类 DBSCAN、谱聚类 新兴聚类算法:...

  • 数据分析方法,寻找规律的第一步,聚类分析法!第1辑

    聚类——寻找规律的第一步 聚类的基本逻辑 聚类的因子和主成分 聚类的步骤 有序聚类与时间序列聚类 什么是聚类?聚类...

  • 聚类

    K-means算法(理论+opencv实现) OpenCV3.3中K-Means聚类接口简介及使用

网友评论

      本文标题:2020-09-22 faiss聚类接口

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