每日数据库知识-向量数据库

82 阅读5分钟

每日数据库知识-向量数据库

今天偶然听到朋友说起向量数据库,查了一下信息。

参考

1 什么是向量数据库? | Cloudflare (cloudflare-cn.com)

摘要

向量是一个数值数组,用于表示浮点在几个维度上的位置。

在更日常的语言中,向量是一串数字,如:{12, 13, 19, 8, 9}。这些数字表示空间中的某个位置,就像电子表格中的行和列编号表示某个单元格一样(例如:"B7")。

向量数据库中的每个向量都对应一个对象或项目,无论是单词、图像、视频、电影、文档还是其他任何数据。这些向量很可能又长又复杂,表示每个物体在几十甚至上百个维度上的位置。

例如,电影的向量数据库可以根据电影的播放时间、类型、发行年份、家长指引等级、共同演员人数、共同观众人数等维度来定位电影。如果准确创建这些向量,那么相似的电影最终很可能会在向量数据库中聚类在一起。

如何使用向量数据库?

相似度和语义搜索: 向量数据库允许应用程序将相关项目连接在一起。

机器学习和深度学习: 将信息的相关项目连接起来的能力使得构建能够完成复杂认知任务的机器学习(和深度学习)模型成为可能。

大型语言模型 (LLM) 和生成式 AI: LLM(如 ChatGPT 和 Bard 所基于的 LLM)依赖向量数据库来对文本进行上下文分析。通过将单词、句子和观点相互关联,LLM 可以理解人类的自然语言,甚至可以生成文本。

使用向量数据库有哪些优势

在没有向量数据库的情况下,单独查询机器学习模型速度又慢,又不符合成本效益。机器学习模型只能记住它们训练过的内容,记不住任何其他内容。每次都必须为它们提供上下文(许多简单的聊天机器人就是这样工作的)。

每次将查询的上下文传递给模型的速度都很慢,因为数据量可能很大;而且成本很高,因为数据必须四处移动,而且必须反复消耗计算能力来让模型解析相同的数据。另外,大多数机器学习 API 实际上在一次接受多少数据方面可能会受到限制。

这就是向量数据库的用武之地:数据集只需通过模型一次(或者定期通过,当数据集发生变化时),该数据的模型嵌入就会存储在向量数据库中。

这样可以节省大量的处理时间。它使构建围绕语义搜索、分类和异常检测的面向用户的应用程序成为可能,因为结果会在几十毫秒内返回,无需等待模型处理整个数据集。

2 什么是向量数据库?它的工作原理是怎样的?| NVIDIA

摘要

什么是嵌入模型?

嵌入模型会将各种数据 (例如文本、图像、图表和视频) 转换为数值向量,以便捕捉其在多维向量空间中的含义和细微差别。嵌入技术的选择取决于应用需求,同时要兼顾语义深度、计算效率、要编码的数据的类型、维度等因素。

通过将向量映射到多维空间,可以对向量的语义相似性进行细致的分析,从而显著提高搜索和数据分类的准确性。在使用 AI 聊天机器人大语言模型 (LLM)检索增强生成 (RAG) 和向量数据库的 AI 应用中以及在搜索引擎和许多其他用例中,嵌入模型发挥着至关重要的作用。

提取私有企业数据后,系统会将这些数据分块,创建一个向量来表示它们,并将数据块及其对应的向量同可选的元数据一起存储在向量数据库中,以供日后检索。

在收到用户、聊天机器人或 AI 应用发来的查询后,系统会对其进行解析,并使用嵌入模型来获取代表提示的各个部分的向量嵌入。然后,使用提示的向量在向量数据库中执行语义搜索,以找到确切匹配或相似度排名前 K 位的向量及其相应的数据块,这些数据块会被放入到提示的上下文中,然后被发送给 LLM。

LangChain 和 LlamaIndex 都是热门的开源框架,支持创建 AI 聊天机器人和 LLM 解决方案。热门的 LLM 包括 OpenAI GPT 和 Meta LlaMA。热门的向量数据库包括 Pinecone 和 Milvus 等。两大热门编程语言是 Python 和 TypeScript。

向量数据库中的相似性搜索是什么?

相似性搜索 (也称为向量搜索、向量相似性搜索或语义搜索) 是指人工智能应用程序根据指定的相似性度量标准,从数据库中高效地检索与给定查询的向量嵌入在语义上相似的向量的过程:

  • 欧几里得距离:测量各点之间的直接距离。这对于总体差异至关重要的密集特征集的聚类或分类非常有用。
  • 余弦相似度:关注向量之间的角度。非常适合文本处理和信息检索,根据方向 (而非传统的距离) 捕获语义相似性。
  • 曼哈顿距离:计算笛卡尔坐标中的绝对差值之和。适用于类网格结构中的路由选择和优化问题。这对于稀疏数据很有用。

相似性衡量指标有助于在 AI 聊天机器人、推荐系统和文档检索中高效检索相关项目。它们利用数据中的语义关系来指导生成式 AI 过程并执行自然语言处理 (NLP),从而增强用户体验。

...

本文的内容更加专业,本次了解就到这里。