作家
登录

Facebook开源相似性搜索类库Faiss,超越已知最快算法8.5倍

作者: 来源: 2017-11-15 10:33:44 阅读 我要评论

简而言之,对关键身分的赓续冲破在实践中异常重要,Faiss 确实袈溱工程细节方面下了很大年夜的工夫。

开端应用 Faiss

获取 Faiss:

https://github.com/facebookresearch/faiss

索引对象Faiss(包含 C++ 和 Python)供给了索引 Index 的实例。每个 Index 子类实现一个索引构造,以解释哪些向量可被参加和搜刮。比如,IndexFlatL2 是一个能应用 L2 距离搜刮的暴力索引。

类似性搜刮评估

如许会打印出索引向量的数量。增长到一个 IndexFlat 仅仅表示拷贝它们到索引的内部存储,因为后面没有其他操作会感化在该向量上。

履行一次搜刮:

I 是一个整型矩阵,输出后是如许的:

速度。找到与萌芽最类似的 10 个或更多个向量要耗时多久?期望比暴力算法耗时更少,不然索引的意义安在?

对于 xq 的第一个向量,xb 中最类似向量的索引是 0(大年夜 0 开端),第二类似的是 #393,第三是 #363。对于 xq 的第二个向量,类似向量列表是 #1, #555 等等。本例中,xq 的前三个向量看起来竽暌闺 xb 的前三个向量一样。

矩阵 D 是一个平方距离矩阵,与 I 的大年夜小一致,表示对于每个结不雅向量萌芽的平方欧氏距离。

Faiss 实现了十多个由其他索引组合的索引类型。可选的 GPU 版本有完全雷同的接口,并有通道在 CPU 和 CPU 索引之间互通。Python 接口重要由 C++ 生成以凸显 C++ 索引,所以可以很轻易地将 Python 验证代码转换为集成的 C++ 代码。

【编辑推荐】

  1. 机械进修算法实践-Platt SMO和遗传算法优化SVM
  2. 算法、数据、机械进修才能…… AI创业企业的护城河是什么?
  3. 大年夜概念到案例:初学者须知的十大年夜机械进修算法
  4. 大年夜算法实现到MiniFlow实现,打造机械进修的基本架构平台
  5. 快速控制机械进修,这3种算法你必须知道
【义务编辑:庞桂玉 TEL:(010)68476606】

  推荐阅读

  从概念走向实操 区块链的“风”真要来了

Tech Neo技巧沙龙 | 11月25号,九州云/ZStack与您一路商量云时代收集界线治理实践 按照区块链监管的请求,国内>>>详细阅读


本文标题:Facebook开源相似性搜索类库Faiss,超越已知最快算法8.5倍

地址:http://www.17bianji.com/lsqh/38866.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)