cuVS: GPU上的向量搜索和聚类#

欢迎来到cuVS,这是用于GPU加速向量搜索和聚类的顶级库!cuVS提供了几个核心构建块,用于构建新算法,以及端到端的向量搜索和聚类算法,可以单独使用或通过不断增长的集成列表使用。

有用的资源#

什么是cuVS?#

cuVS 包含了多种算法的最先进实现,用于在GPU上运行近似和精确的最近邻搜索以及聚类。它可以直接使用,也可以通过集成了它的各种数据库和其他库来使用。cuVS 的主要目标是简化GPU在向量相似性搜索和聚类中的使用。

向量搜索是一种近年来日益流行的信息检索方法,部分原因是从非结构化数据创建的多媒体嵌入的重要性日益增加,以及需要在嵌入上执行语义搜索以找到语义上彼此相似的项目。

向量搜索也用于数据挖掘和机器学习任务,并且在许多聚类可视化算法中是一个重要步骤,例如UMAPt-SNE、K-means和HDBSCAN

最后,更快的向量搜索实现了密集向量和图之间的交互。将一堆密集向量转换为最近邻图,解锁了图分析算法的整个世界,例如在GraphBLAScuGraph中找到的那些算法。

以下是一些向量搜索的常见用例

数据挖掘#

  • 聚类算法

  • 可视化算法

  • 采样算法

  • 类别平衡

  • 集成方法

  • k-NN 图构建

为什么选择cuVS?#

使用cuVS和GPU进行向量搜索有几个好处,包括

  1. 快速索引构建

  2. 延迟关键和高吞吐量搜索

  3. 参数调优

  4. 成本节约

  5. 互操作性(在GPU上构建,在CPU上部署)

  6. 多语言支持

  7. 用于组合新算法或加速现有算法的构建模块

除了上述项目外,cuVS还承担着在新NVIDIA架构和CUDA版本发布时保持非平凡加速代码更新的责任。这提供了一个愉快的开发体验,确保任何基于它构建的库、数据库或应用程序始终能获得最佳性能和扩展性。

cuVS 技术栈#

cuVS 构建在 RAPIDS RAFT 高性能机器学习原语库之上,并提供了在 GPU 上进行向量搜索和聚类所需的所有必要例程。

cuVS 建立在低级别的 CUDA 库之上,并提供了许多重要的例程,使得在 GPU 上进行向量搜索和聚类成为可能

目录#