向量检索服务——关键词感知检索详解

简介: 向量检索服务DashVector同时支持Dense Vector(稠密向量)和Sparse Vector(稀疏向量),前者用于模型的高维特征(Embedding)表达,后者用于关键词和词频信息表达。DashVector可以进行关键词感知的向量检索,即Dense Vector和Sparse Vector结合的混合检索。

背景介绍

关键词检索及其局限

在信息检索领域,“传统”方式是通过关键词进行信息检索,其大致过程为:

  1. 对原始语料(如网页)进行关键词抽取
  2. 建立关键词和原始语料的映射关系,常见的方法有倒排索引、TF-IDF、BM25等方法,其中TF-IDF、BM25通常用稀疏向量(Sparse Vector)来表示词频
  3. 检索时,对检索语句进行关键词抽取,并通过步骤2中建立的映射关系召回关联度最高的TopK原始语料

但关键词检索无法对语义进行理解。例如,检索语句为“浙一医院”,经过分词后成为“浙一”和“医院”,这两个关键词都无法有效的命中用户预期中的“浙江大学医学院附属第一医院”这个目标。


基于语义的向量检索

随着人工智能技术日新月异的发展,语义理解Embedding模型能力的不断增强,基于语义Embedding的向量检索召回关联信息的方式逐渐成为主流。其大致过程如下:

  1. 原始语料(如网页)通过Embedding模型产生向量(Vector),又称为稠密向量(Dense Vector)
  2. 向量入库向量检索系统
  3. 检索时,检索语句同样通过Embedding模型产生向量,并用该向量在向量检索系统中召回距离最近的TopK原始语料

但不可否认的是,基于语义的向量检索来召回信息也存在局限——必须不断的优化Embedding模型对语义的理解能力,才能取得更好的效果。例如,若模型无法理解“水稻灌溉”和“灌溉水稻”在语义上比较接近,就会导致无法通过“水稻灌溉”召回“灌溉水稻”相关的语料。而关键字检索在这个例子上,恰好可以发挥其优势,通过“水稻”、“灌溉”关键字有效的召回相关语料。


关键词检索+语义检索

针对上述问题,逐渐有业务和系统演化出来“两路召回、综合排序”的方法来解决,并且在效果上也超过了单纯的关键字检索或语义检索,如下图所示:


但这种方式的弊端也很明显:

  1. 系统复杂度增加
  2. 硬件资源(内存、CPU、磁盘等)开销增加
  3. 可维护性降低
  4. ......

具有关键词感知能力的语义检索

向量检索服务DashVector同时支持Dense Vector(稠密向量)和Sparse Vector(稀疏向量),前者用于模型的高维特征(Embedding)表达,后者用于关键词和词频信息表达。DashVector可以进行关键词感知的向量检索,即Dense Vector和Sparse Vector结合的混合检索。

DashVector带关键词感知能力的向量检索能力,既有“两路召回、综合排序”方案的优点,又没有其缺点。使得系统复杂度、资源开销大幅度降低的同时,还具备关键词检索、向量检索、关键词+向量混合检索的优势,可满足绝大多数业务场景的需求。


说明:Sparse Vector(稀疏向量),稀疏向量是指大部分元素为0,仅少量元素非0的向量。在DashVector中,稀疏向量可用来表示词频等信息。例如,{1:0.4, 10000:0.6, 222222:0.8}就是一个稀疏向量,其第1、10000、222222位元素(分别代表三个关键字)有非0值(代表关键字的权重),其他元素全部为0。


使用示例

前提条件


Step1. 创建支持Sparse Vector的Collection

说明:

  1. 需要使用您的api-key替换以下示例中的 YOUR_API_KEY、您的Cluster Endpoint替换示例中的YOUR_CLUSTER_ENDPOINT,代码才能正常运行。
  2. 本示例仅对Sparse Vector进行功能演示,简化起见,向量(Dense Vector)维度设置为4。


importdashvectorclient=dashvector.Client(
api_key='YOUR_API_KEY',
endpoint='YOUR_CLUSTER_ENDPOINT')
ret=client.create('hybrid_collection', dimension=4, metric='dotproduct')
collection=client.get('hybrid_collection')
assertcollection


重要:仅内积度量(metric='dotproduct')支持Sparse Vector功能。


Step2. 插入带有Sparse Vector的Doc

fromdashvectorimportDoccollection.insert(Doc(
id='A',
vector=[0.1, 0.2, 0.3, 0.4],
sparse_vector={1: 0.3, 10:0.4, 100:0.3}
))


Step3. 带有Sparse Vector的向量检索

docs=collection.query(
vector=[0.1, 0.1, 0.1, 0.1],
sparse_vector={1: 0.3, 20:0.7}
)

Sparse Vector生成工具

  • DashText,向量检索服务DashVector推荐使用的SparseVectorEncoder,DashText
相关文章
|
2月前
|
机器学习/深度学习 自然语言处理 搜索推荐
阿里云向量检索服务:重塑大数据检索的未来
阿里云向量检索服务是一款强大且易于使用的云服务产品,专为大数据检索而设计。通过深度学习模型和高效的索引结构,该服务提供了快速、准确的检索能力,适用于多种业务场景。在评测中,我们对其功能、性能和业务场景适配性进行了全面评估,认为其具有出色的性能和良好的业务场景适配性。未来,阿里云向量检索服务有望持续发展和创新,拓展更多应用领域,为用户带来更加卓越的体验。
1609 5
|
2月前
|
人工智能 自然语言处理 Cloud Native
向量检索服务在语义检索、知识库搭建、AI多模态搜索等场景中有着广泛的应用
向量检索服务在语义检索、知识库搭建、AI多模态搜索等场景中有着广泛的应用
135 0
|
2月前
|
存储 数据库 Python
阿里云向量检索服务 | 全性能搜索方案
【1月更文挑战第13天】阿里云向量检索服务 | 全性能搜索方案
阿里云向量检索服务 | 全性能搜索方案
|
2月前
|
人工智能 大数据 API
阿里云向量检索服务测评
在当今的大数据时代,向量检索技术已成为处理海量数据、实现高效信息检索的重要手段。阿里云作为国内领先的云计算服务提供商,推出了自己的向量检索服务。本文将对阿里云的向量检索服务进行深入的测评,探讨其在语义检索、知识库搭建、AI多模态搜索等场景的最佳实践,并分析其与其他向量检索工具的优劣。
659 1
|
2月前
|
人工智能 自然语言处理 搜索推荐
基于阿里云向量检索服务搭建AI智能问答机器人
基于阿里云向量检索服务搭建AI智能问答机器人
123462 38
|
2月前
|
人工智能 API 数据处理
阿里云向量检索服务评测报告
本评测报告对阿里云向量检索服务进行了全面而深入的分析,包括最佳实践探索、产品体验评测以及与其他向量检索工具的对比。评测结果显示,阿里云向量检索服务在语义检索、知识库搭建、AI多模态搜索等场景中表现出色,具有高效、易用、可扩展等优点。同时,该服务还提供了丰富的功能和优化选项,满足了复杂业务需求。然而,也存在一些可以改进的地方,如优化大规模数据处理性能、提供更多自定义配置选项等。总体而言,阿里云向量检索服务是一款值得推荐的向量检索解决方案。
|
2月前
|
存储 人工智能 算法
【阿里云产品测评】揭秘阿里云向量检索服务:赋予智能时代搜索新“维度”
【1月更文挑战第3天】在数字化洪流席卷全球的今天,信息的表达与检索方式正在悄然变革。从字符到图像,再到复杂的多维度数据,我们正在步入一个深度理解、精准匹配的智能搜索新时代。此刻,阿里云推出的向量检索服务正以前沿技术之力,引领这一领域的创新潮流。 阿里云向量检索服务,内核采用自研的Proxima引擎,其强大之处在于能够实现水平拓展、全托管和云原生的高效向量检索。这就好比构建了一个可以无限延伸的“知识宇宙”,无论是大规模图像识别、语音识别模型生成的特征向量,还是复杂的大模型知识库结构化信息,都能通过向量化的形式被管理和高效检索。
|
2月前
|
存储 人工智能 大数据
阿里云向量检索服务评测报告
随着人工智能和大数据技术的飞速发展,向量检索技术在语义检索、知识库搭建、AI多模态搜索等领域的应用越来越广泛。阿里云推出的向量检索服务基于自研的Proxima内核,旨在为用户提供高效、全托管的向量检索解决方案。本报告将从最佳实践、产品体验和对比测评三个方面对阿里云向量检索服务进行全面评测。
|
2月前
|
存储 人工智能 Cloud Native
阿里云向量检索服务测评:高效、易用、强大的向量管理与查询能力
摘要:本文对阿里云向量检索服务进行了全面的测评,从其基于自研Proxima内核的高性能、全托管、云原生特性,到简洁易用的SDK/API接口,再到在多种应用场景下的集成能力,为读者提供了一个全面了解阿里云向量检索服务的机会。
1145 0
|
2月前
|
人工智能 监控 算法
阿里云向量检索服务最佳实践测评
随着大数据和人工智能的快速发展,向量检索技术在各个领域的应用越来越广泛。阿里云作为国内领先的云计算服务提供商,也推出了自己的向量检索服务。本文将对阿里云的向量检索服务进行最佳实践测评,探讨其在语义检索、知识库搭建、AI多模态搜索等方面的应用,并与其它向量检索工具进行比较。
1323 4