网站看不到排版怎么办,哪个网站可以宣传做的蛋糕,wordpress主题范例,免费创建论坛Milvus 介绍 Milvus 矢量数据库是什么#xff1f;关键概念非结构化数据嵌入向量向量相似度搜索 为什么是 Milvus?支持哪些索引和指标#xff1f;索引类型相似度指标(Similarity metrics) 应用示例Milvus 是如何设计的#xff1f;开发者工具API访问Milvus 生态系统工具 本页… Milvus 介绍 Milvus 矢量数据库是什么关键概念非结构化数据嵌入向量向量相似度搜索 为什么是 Milvus?支持哪些索引和指标索引类型相似度指标(Similarity metrics) 应用示例Milvus 是如何设计的开发者工具API访问Milvus 生态系统工具 本页面旨在通过回答几个问题来让您大致了解 Milvus。读完本页后您将了解 Milvus 是什么、它是如何工作的、关键概念、为什么使用 Milvus、支持的索引和指标、示例应用程序、架构和相关工具。
Milvus 矢量数据库是什么
Milvus 于 2019 年创建其目标只有一个存储、索引和管理由深度神经网络和其他机器学习 (ML) 模型生成的大量嵌入向量。
作为专门为处理输入向量查询而设计的数据库它能够对万亿规模的向量进行索引。与现有的关系数据库主要处理遵循预定义模式的结构化数据不同Milvus 是自下而上设计的用于处理从非结构化数据转换而来的嵌入向量。
随着互联网的发展和发展非结构化数据变得越来越普遍包括电子邮件、论文、物联网传感器数据、Facebook 照片、蛋白质结构等等。为了让计算机理解和处理非结构化数据使用嵌入技术将这些数据转换为向量。 Milvus 存储并索引这些向量。 Milvus 能够通过计算两个向量的相似距离来分析它们之间的相关性。如果两个嵌入向量非常相似则意味着原始数据源也相似。 关键概念
如果您不熟悉矢量数据库和相似性搜索领域请阅读以下关键概念的解释以获得更好的理解。
了解有关 Milvus 术语表的更多信息。
非结构化数据
非结构化数据包括图像、视频、音频和自然语言是不遵循预定义模型或组织方式的信息。这种数据类型约占全球数据的 80%并且可以使用各种人工智能 (AI) 和机器学习 (ML) 模型转换为向量。
嵌入向量
嵌入向量是非结构化数据的特征抽象例如电子邮件、物联网传感器数据、Instagram 照片、蛋白质结构等等。从数学上来说嵌入向量是浮点数或二进制数的数组。现代嵌入技术用于将非结构化数据转换为嵌入向量。
向量相似度搜索
向量相似性搜索是将向量与数据库进行比较以查找与查询向量最相似的向量的过程。近似最近邻ANN搜索算法用于加速搜索过程。如果两个嵌入向量非常相似则意味着原始数据源也相似。
为什么是 Milvus?
在海量数据集上进行矢量搜索时具有高性能。一个开发者优先的社区提供多语言支持和工具链。即使发生中断云的可扩展性和高可靠性也是如此。通过将标量过滤与向量相似性搜索配对来实现混合搜索。
支持哪些索引和指标
索引是数据的组织单位。您必须先声明索引类型和相似性度量然后才能搜索或查询插入的实体。如果不指定索引类型Milvus 将默认进行暴力搜索(brute-force search)。
索引类型
FLATFLAT 最适合在小型、百万级数据集上寻求完全准确且精确的搜索结果的场景。IVF_FLATIVF_FLAT是一种基于量化的索引最适合在精度和查询速度之间寻求理想平衡的场景。还有一个 GPU 版本 GPU_IVF_FLAT。IVF_SQ8IVF_SQ8 是基于量化的索引最适合寻求显着减少磁盘、CPU 和 GPU 内存消耗的场景因为这些资源非常有限。IVF_PQIVF_PQ是一种基于量化的索引最适合追求高查询速度甚至不惜牺牲准确性的场景。还有一个 GPU 版本 GPU_IVF_PQ。HNSWHNSW是基于图的索引最适合对搜索效率要求较高的场景。
有关详细信息请参阅向量索引。
相似度指标(Similarity metrics)
在 Milvus 中相似度度量用于衡量向量之间的相似度。选择良好的距离度量有助于显着提高分类和聚类性能。根据输入数据形式选择特定的相似性度量以获得最佳性能。
广泛用于浮点嵌入的指标包括
欧氏距离(Euclidean distance)L2该度量通常用于计算机视觉CV领域。内积(Inner product)IP该指标一般用于自然语言处理NLP领域。
广泛用于二进制嵌入的指标包括
Hamming该指标一般用于自然语言处理NLP领域。Jaccard这个指标一般用在分子相似性搜索领域。
有关更多信息请参阅相似性度量。
应用示例
Milvus 可以轻松地将相似性搜索添加到您的应用程序中。 Milvus 的示例应用包括
图像相似性搜索图像可搜索并立即从海量数据库中返回最相似的图像。视频相似度搜索通过将关键帧转换为向量然后将结果输入 Milvus可以近乎实时地搜索和推荐数十亿视频。音频相似度搜索快速查询语音、音乐、音效等海量音频数据表面相似声音。推荐系统根据用户行为和需求推荐信息或产品。问答系统交互式数字 QA 聊天机器人自动回答用户问题。DNA序列分类通过比较相似的DNA序列在毫秒内准确梳理出基因的分类。文本搜索引擎通过将关键字与文本数据库进行比较帮助用户找到他们正在寻找的信息。
更多 Milvus 应用场景请参见 Milvus 教程和 Milvus 采用者。
Milvus 是如何设计的
Milvus 作为云原生向量数据库在设计上将存储和计算分离。为了增强弹性和灵活性Milvus 中的所有组件都是无状态的。
该系统分为四个级别
访问层访问层由一组无状态代理组成作为系统的前端层和用户的端点。协调器服务协调器服务将任务分配给工作节点充当系统的大脑。工作节点工作节点充当手臂和腿是哑执行器遵循协调器服务的指令并执行用户触发的 DML/DDL 命令。存储存储是系统的骨骼负责数据的持久化。它包括元存储、日志代理和对象存储。
有关更多信息请参阅架构概述。 开发者工具
Milvus 有丰富的 API 和工具支持以促进 DevOps。
API访问
Milvus 有封装在 Milvus API 之上的客户端库可用于通过应用程序代码以编程方式插入、删除和查询数据 PyMilvus Node.js SDK Go SDK Java SDK
我们正在努力启用更多新的客户端库。如果您愿意贡献请前往 Milvus 项目相应的存储库。
Milvus 生态系统工具
Milvus 生态系统提供了有用的工具包括 Milvus 命令行界面 Attu, Milvus 的图形化管理系统。 MilvusDM Milvus 数据迁移一款专门用于使用 Milvus 导入和导出数据的开源工具。 Milvus sizing tool, Milvus 估算工具可帮助您估算指定数量的各种索引类型向量所需的原始文件大小、内存大小和稳定磁盘大小。