存根 什么是矢量相似性搜索及其有何用处? - 联合人工智能
关注我们.

AI 101

什么是矢量相似性搜索及其有何用处?

mm
更新 on
向量相似性搜索

现代数据搜索是一个复杂的领域。 矢量相似性搜索(VSS)表示具有上下文深度的数据,并根据搜索查询向消费者返回更多相关信息。 让我们举一个简单的例子。 

“数据科学”和“科幻小说”等搜索查询指的是不同类型的内容,尽管两者都有一个共同的词(“科学”)。 传统的搜索技术会匹配常用短语以返回相关结果,在这种情况下这将是不准确的。 矢量相似性搜索将考虑这些搜索查询的实际搜索意图和含义,以返回更准确的响应。

本文将讨论向量相似性搜索的各个方面,例如其组件、挑战、优点和用例。 让我们开始。

什么是向量相似度搜索 (VSS)?

向量相似性搜索通过将其转换为称为向量或嵌入的数字表示,从大量结构化或非结构化数据中查找和检索上下文相似的信息。

VSS 可以管理各种数据格式,包括数字、分类、文本、图像和视频。 它将数据语料库中的每个对象转换为与其相关格式相对应的高维向量表示(在下一节中讨论)。 

最常见的是,VSS 定位可比较的对象,例如相似的短语或段落,或者在庞大的图像检索系统中查找相关图像。 亚马逊、eBay 和 Spotify 等大型消费公司使用这项技术来改善数百万用户的搜索结果,即提供用户最有可能想要购买、观看或收听的相关内容。

矢量相似性搜索的三个主要组成部分

在我们了解向量相似性搜索的工作原理之前,让我们先看看它的主要组成部分。 实施有效的 VSS 方法主要包含三个基本组成部分:

  1. 向量嵌入:嵌入以数学格式表示不同的数据类型,即有序数组或数字集。 他们使用数学计算来识别数据中的模式。
  2. 距离或相似性度量:这些是计算两个向量的相似或密切相关程度的数学函数。
  3. 搜索算法:算法帮助找到与给定搜索查询相似的向量。 例如, K最近邻居 或 KNN 算法经常用于支持 VSS 的搜索系统中,以确定数据集中与给定输入查询最相似的 K 个向量。

现在,我们来讨论这些组件如何在搜索系统中工作。

矢量相似性搜索如何工作?

实现向量相似性搜索的第一步是将数据语料库中的对象表示或描述为向量嵌入。 它使用不同的向量嵌入方法,例如 手套, 词向量BERT,将对象映射到向量空间。 

对于每种数据格式,如文本、音频和视频,VSS 构建不同的嵌入模型,但此过程的最终结果是数值数组表示。 

下一步是创建一个索引,可以使用这些数字表示将相似的对象排列在一起。 像 KNN 这样的算法是实现搜索相似性的基础。 然而,为了索引相似的术语,搜索系统使用现代方法,例如 局部敏感哈希 (LSH)近似最近邻 (ANNOY)

此外,VSS 算法还计算相似性或距离度量,例如欧几里德距离、余弦相似性或杰卡德相似性,以比较数据集合中的所有向量表示并响应用户查询返回相似内容。

矢量相似性搜索的主要挑战和好处

总体而言,目标是找到数据对象之间的共同特征。 然而,这个过程带来了一些潜在的挑战。

实施 VSS 的主要挑战

  • 不同的向量嵌入技术和相似性度量呈现不同的结果。 为相似性搜索系统选择适当的配置是主要挑战。
  • 对于大型数据集,VSS 的计算成本较高,并且需要高性能 GPU 来创建大规模索引。
  • 维度过多的向量可能无法准确表示数据的真实结构和连接。 因此,向量嵌入过程必须是无损的,这是一个挑战。

目前,VSS技术正在不断发展和完善。 然而,它仍然可以为公司或产品的搜索体验提供许多好处。

VSS 的好处

  • VSS 允许搜索系统在不同的数据类型上以惊人的速度定位相似的对象。
  • VSS 可确保高效的内存管理,因为它将所有数据对象转换为机器可以轻松处理的数字嵌入。
  • VSS 可以对系统可能未遇到过的来自消费者的新搜索查询的对象进行分类。
  • VSS 是处理不良和不完整数据的绝佳方法,因为它可以找到上下文相似的对象,即使它们不是完美匹配。
  • 最重要的是,它可以大规模(可变数据量)检测和聚类相关对象。

矢量相似性搜索的主要业务用例

在商业业务中,VSS 技术可以彻底改变广泛的行业和应用。 其中一些用例包括:

  • 问答:向量相似度搜索可以在问答论坛中找到几乎相同的相关问题,从而为最终用户提供更准确、更中肯的答复。
  • 语义网络搜索:矢量相似性搜索可以根据矢量表示的“接近程度”来定位相关文档或网页。 它的目的是提高网络搜索结果的相关性。
  • 产品推荐:向量相似度搜索可以根据消费者的浏览或搜索历史做出个性化的产品推荐。
  • 更好的医疗服务:医疗保健研究人员和从业人员利用向量相似性搜索,通过分析相关医学研究的向量表示来优化临床试验。

如今,使用传统的基于 SQL 的技术来管理、分析和搜索数据已不再可行。 互联网消费者在网络上提出复杂的查询——对于人类来说看似简单,但对于机器(搜索引擎)来说解释起来却极其复杂。 以机器可理解的格式破译不同形式的数据对于机器来说是一个长期的挑战。 

矢量相似性搜索使搜索系统能够更好地理解商业信息的上下文。

想阅读更多有见地的人工智能相关内容吗? 访问 团结.ai.