人工智能

比较量化技术用于可扩展向量搜索

mm

想象一下,基于更深入的洞察力而不是仅仅关键词来查找相似的事物。这就是向量数据库和相似性搜索的作用。 向量数据库 支持向量相似性搜索。它使用向量之间的距离来找到搜索查询中的数据点。

然而,在高维数据中进行相似性搜索可能会很慢且耗费资源。这就是量化技术的用处!它们在优化数据存储和加速向量数据库中的数据检索方面发挥着重要作用。

本文探讨了各种量化技术、其类型和实际应用场景。

什么是量化以及它如何工作?

量化是将连续数据转换为离散数据点的过程。特别是当您处理十亿级参数时,量化对于管理和处理至关重要。在向量数据库中,量化将高维数据转换为压缩空间,同时保留重要特征和向量距离。

量化显著减少了内存瓶颈并提高了存储效率。

量化过程包括三个关键过程:

1. 压缩高维向量

在量化中,我们使用诸如代码簿生成、特征工程和编码等技术。这些技术将高维向量嵌入压缩到低维子空间。换句话说,向量被分解为多个子向量。向量嵌入是音频、图像、视频、文本或信号数据的数值表示,使处理更加容易。

2. 映射到离散值

这一步涉及将低维子向量映射到离散值。映射进一步减少了每个子向量的位数。

3. 压缩向量存储

最后,子向量的映射离散值被存储在数据库中以替代原始向量。压缩数据以较少的位表示相同的信息,从而优化其存储。

量化对向量数据库的益处

量化提供了一系列益处,导致计算改进和内存占用减少。

1. 高效可扩展向量搜索

量化通过减少比较计算成本来优化向量搜索。因此,向量搜索需要较少的资源,从而提高了其整体效率。

2. 内存优化

量化向量允许您在相同的空间中存储更多数据。此外,数据索引和搜索也得到了优化。

3. 速度

随着存储和检索的高效,计算速度也会加快。降低维度允许更快的处理,包括数据操作、查询和预测。

一些流行的向量数据库,如 QdrantPineconeMilvus,提供了不同用例的各种量化技术。

应用场景

量化能够减少数据大小同时保留重要信息,使其成为一个有用的资产。

让我们深入探讨一些其应用。

1. 图像和视频处理

图像和视频数据具有更广泛的参数,从而显著增加计算复杂性和内存占用。 量化 压缩数据而不会丢失重要细节,从而实现高效存储和处理。这加快了图像和视频的搜索速度。

2. 机器学习模型压缩

在大型数据集上训练 AI 模型是一项密集型任务。量化通过减少 模型大小和复杂性 而不会损害其效率来提供帮助。

3. 信号处理

信号数据代表连续数据点,如 GPS 或监控视频。量化将数据映射到离散值,从而实现更快的存储和分析。此外,高效的存储和分析加快了搜索操作,使信号比较更快。

不同的量化技术

虽然量化允许无缝处理十亿级参数,但它存在不可逆转的信息丢失风险。然而,找到信息丢失和压缩之间的合适平衡可以提高效率。

每种量化技术都有其优缺点。在选择之前,您应该了解压缩要求以及每种技术的优缺点。

1. 二进制量化

二进制量化是一种将所有向量嵌入转换为 0 或 1 的方法。如果值大于 0,则将其映射为 1,否则将其标记为 0。因此,它将高维数据转换为显著较低维度,从而实现更快的相似性搜索。

公式

公式是:

二进制量化公式。图像由作者提供。

以下是二进制量化在向量上的工作示例。

BQ Illustration

二进制量化的图形表示。图像由作者提供。

优点

  • 最快的搜索,超过标量和产品量化技术。
  • 将内存占用减少 32 倍。

限制

  • 更高的信息丢失比率。
  • 向量组件需要一个接近零的平均值。
  • 在低维数据上表现较差,信息丢失更高。
  • 需要重新评分以获得最佳结果。

向量数据库,如 QdrantWeaviate,提供二进制量化。

2. 标量量化

标量量化将浮点数或十进制数转换为整数。它从识别每个维度的最小值和最大值开始。识别的范围然后被分成几个箱。最后,每个值在每个维度中被分配到一个箱中。

量化向量的精度或细节取决于箱的数量。更多箱可以通过捕捉更细的细节来提高准确性。因此,向量搜索的准确性也取决于箱的数量。

公式

公式是:

标量量化公式。图像由作者提供。

以下是标量量化在向量上的工作示例。

SQ Illustration

标量量化的图形表示。图像由作者提供。

优点

  • 显著的 内存 优化。
  • 小信息丢失。
  • 部分可逆过程。
  • 快速压缩。
  • 由于信息丢失较小,实现了高效的可扩展搜索。

限制

  • 略微降低的搜索质量。
  • 低维向量更容易受到信息丢失的影响,因为每个数据点都携带重要信息。

向量数据库,如 QdrantMilvus,提供标量量化。

3. 产品量化

产品量化将向量划分为子向量。对于每个部分,使用 聚类算法 计算中心点或质心。然后,每个子向量的最近质心代表每个子向量。

在产品量化中,相似性搜索通过将搜索向量划分为相同数量的子向量来工作。然后,根据每个子向量的质心与每个查询子向量的距离,创建一个相似结果列表。由于向量搜索过程比较查询子向量与量化向量的质心的距离,搜索结果的准确性较低。然而,产品量化加快了相似性搜索过程,通过增加子向量的数量可以实现更高的准确性。

公式

找到质心是一个迭代过程。它使用每个数据点到其质心的欧几里得距离的重新计算,直到收敛。n 维空间中的欧几里得距离公式是:

产品量化公式。图像由作者提供。

以下是产品量化在向量上的工作示例。

PQ Illustration

产品量化的图形表示。图像由作者提供。

优点

  • 最高的压缩比。
  • 比其他技术更好的存储效率。

限制

  • 不适用于低维向量。
  • 资源密集型压缩。

向量数据库,如 Qdrant 和 Weaviate,提供产品量化。

选择合适的量化方法

每种量化方法都有其优缺点。选择合适的方法取决于以下因素:

  • 数据维度
  • 压缩-准确性权衡
  • 效率要求
  • 资源约束。

考虑以下比较图表,以更好地理解哪种量化技术适合您的用例。该图表强调了每种量化方法的准确性、速度和压缩因素。

图像由 Qdrant 提供

从存储优化到更快的搜索,量化减轻了存储十亿级参数的挑战。然而,了解要求和权衡之前对于成功实施至关重要。

有关最新趋势和技术的更多信息,请访问 Unite AI

Haziqa 是一名具有丰富经验的数据科学家,擅长为 AI 和 SaaS 公司撰写技术内容。