### faiss
AI相似性搜索工具
能使开发者快速搜索相似多媒体文件的算法库。
faiss的所有算法都是围绕index展开的。不管运行搜索还是聚类,首先都要建立一个index。
- 相似性搜索的本质
传统数据库由包含符号信息的机构表组成,比如,一个图像集,会用每行一张索引照片的列表表示。
很多AI工具都会产生高维**矢量**,比如像 **word2vec** 这样的文本嵌入工具,以及用深度学习训练的CNN描述符。
这些表示比固定的符号表示更加强大灵活。但用SQL来检索的传统数据库并没有适配这些新型表示。
首先,海量的新多媒体流创造了数十亿的矢量。其次,而且更为重要的是,找到相似的条目意味着找到相近的高维矢量。
而对于当下的标准检索语言,这是极度低效、甚至无法实现的。
- 如何使用矢量表示?
分类器的训练
- 软件包
现有的软件工具,不足以完成上述数据库搜索操作。传统的SQL数据库系统可用性不高,因为它们是 hash-based searches 或 1D interval searches 而优化。
#### 1. faiss的优缺点
- 提供数个相似性搜索方法,这些方法针对不同使用情况,提供跨度很大的功能取舍。
- 为内存的使用和速度而优化。
- 为相关索引方法提供了最前沿的GPU执行方案。
#### 2. 相似性搜索评估
一旦这些矢量被学习机提取出来(从图像、视频、文本文件或者其他渠道),它们就已经可以被输入进相似性搜索库。
#### 3. 十亿个矢量的评估
#### 4. 选择索引
[ubuntu 16.04 环境安装faiss](https://blog.csdn.net/cym1990/article/details/79528822)
- 在看的书和文章
- Java程序员手册
- 思维方式
- 面向服务
- Dubbo
- StringBoot
- 001.应用部署
- 002.注解学习
- SpringCloud
- SpringCloud入门
- Dbs
- 分布式
- Ffp
- 多线程
- 多线程小知识
- Java锁认识
- Netty
- Netty学习目录
- 读写事件流程分析与相关API
- 数据
- 大数据学习
- 学习目录
- Hadoop学习
- Hadoop组建安装
- ssh配置免密登陆
- Hadoop伪集群模式
- HBase伪集群模式
- Hive安装
- 常用操作命令
- 问题记录
- DOLIST
- 学习资料
- Spark
- 一些概念介绍
- 数据库
- Oracle相关
- 批量测试数据生成
- MySQL相关
- Redis
- 常用操作
- 机器学习
- 认识
- Kafka
- 监控
- 分布式相关
- RPC
- 中间件
- ElasticSearch
- ES环境搭建
- Python客户端创建索引
- Es的api常用操作
- SQL查询引擎
- Es数DB的数据同步
- ActiveMQ
- ActiveMQ介绍
- 分享
- Skyeye
- 组件安装配置
- Dubbo服务Demo应用部署
- Kafka安装配置
- RabbitMq配置
- Docker
- Docker学习文章
- Docker的大数据平台之路
- Docker环境搭建
- ubuntu16安装docker
- Docker镜像加速
- 使用Docker快速搭建中间件
- Docker环境使用mysql
- Docker环境的中间件搭建汇总
- Docker镜像容器管理
- Docker镜像创建
- Docker创建可用的系统容器
- Kubernetes
- etcd安装
- flanneld安装
- kubernetes环境安装
- kubernetes源码编译
- Linux相关
- Linux操作系统
- Deepin操作系统
- 新系统环境准备
- Linux系统小工具
- Linxu配置时间服务器同步
- DNS服务器dnsmasq
- Linux命令
- 常用命令
- 计算机基础
- README
- 数据结构
- 面试题总结
- 计算机组层原理
- 计算机组层原理
- 其它语言
- Python
- Python环境搭建
- Python学习总结
- Python语法学习
- Python模块学习
- MySQLdb
- scrapy
- Python的exception
- PythonNLP入门
- Go
- 工具组件
- Jenkins
- Jenkins认识
- Jenkins安装配置
- Jenkins插件使用
- Jenkins项目常用配置
- Git
- Git使用说明
- NLP
- 入门级别
- 一些概念
- faiss介绍
- WMD介绍