Precise Zero-Shot Dense Retrieval without Relevance Labels论文阅读

《Precise Zero-Shot Dense Retrieval without Relevance Labels》ACL2023论文阅读

代码 https://github.com/texttron/hyde

这篇论文提出了一种名为 HyDE(Hypothetical Document Embeddings) 的方法,用于在零样本(zero-shot)环境下进行稠密检索(dense retrieval),且不需要任何相关性标签(relevance labels)。稠密检索是一种通过语义嵌入相似性来检索文档的方法,广泛应用于网页搜索、问答系统和事实核查等任务。

传统的稠密检索方法通常依赖于大量的相关性标签进行监督学习,但在实际应用中,获取这些标签是非常困难的。为了解决这个问题,HyDE 提出了一种新的方法,通过生成假设文档(hypothetical document)来捕捉查询的相关性模式,然后使用无监督的对比学习编码器(如 Contriever)将这些假设文档编码为嵌入向量,最后通过向量相似性在文档库中检索出最相关的真实文档。
 

具体来说,HyDE 的工作流程分为两步:

  1. 生成假设文档:给定一个查询,HyDE 使用一个指令遵循的语言模型(如 InstructGPT)生成一个假设文档。这个文档可能包含虚假信息,但它能够捕捉到与查询相关的模式。

  2. 编码与检索:生成的假设文档通过一个无监督的对比学习编码器(如 Contriever)编码为嵌入向量,然后通过向量相似性在文档库中检索出最相关的真实文档。

实验结果表明,HyDE 在多个任务(如网页搜索、问答、事实核查)和多种语言(如斯瓦希里语、韩语、日语)上显著优于现有的无监督稠密检索方法,并且表现接近经过微调的检索模型。

摘要

尽管稠密检索(dense retrieval)在多种任务和语言中已被证明是有效且高效的,但在没有相关性标签的情况下,创建有效的完全零样本(zero-shot)稠密检索系统仍然具有挑战性。在本文中,我们认识到零样本学习和编码相关性的困难。相反,我们提出通过假设文档嵌入(Hypothetical Document Embeddings, HyDE)来实现这一目标。给定一个查询,HyDE 首先通过一个指令遵循的语言模型(如 InstructGPT)生成一个假设文档。该文档捕捉了相关性模式,但它并非真实存在,可能包含错误的细节。然后,一个无监督的对比学习编码器(如 Contriever)将该文档编码为一个嵌入向量。该向量在文档库的嵌入空间中标识出一个邻域,基于向量相似性检索出相似的真实文档。第二步将生成的文档与实际文档库进行关联,编码器的稠密瓶颈过滤掉了不正确的细节。我们的实验表明,HyDE 在多个任务(如网页搜索、问答、事实核查)和多种语言(如斯瓦希里语、韩语、日语)上显著优于当前最先进的无监督稠密检索模型 Contriever,并且表现接近经过微调的检索模型。

1. 引言

稠密检索是一种通过语义嵌入相似性来检索文档的方法,已在网页搜索、问答系统和事实核查等任务中取得了成功。为了提高监督稠密检索模型的效果,研究者们提出了多种方法,如负样本挖掘、蒸馏以及任务特定的预训练。

另一方面,零样本稠密检索仍然具有挑战性。许多最近的研究考虑了迁移学习的替代方案,即稠密检索模型在一个高资源数据集上进行训练,然后在来自新任务的查询上进行评估。MS-MARCO 数据集是一个大规模的人工标注数据集,包含了大量的查询-文档对,是最常用的数据集之一。然而,正如 Izacard et al. (2021) 所指出的,在实践中,这种大规模数据集的存在并不能总是被假设。即使 MS-MARCO 也限制了商业用途,无法在许多现实世界的搜索场景中使用。

在本文中,我们的目标是构建有效的完全零样本稠密检索系统,这些系统不需要相关性监督,能够开箱即用,并且能够跨任务泛化。由于没有监督信号,我们从自监督表示学习方法入手。现代深度学习提供了两种不同的学习算法。在词元级别,生成式LLM在大规模语料库上进行预训练,展示了强大的自然语言理解(NLU)和生成(NLG)能力。在文档级别,通过对比目标预训练的文本(块)编码器学习将文档-文档相似性编码为内积。在此基础上,我们还借鉴了 LLM 的一个额外洞察:经过进一步训练以遵循指令的 LLM 可以零样本泛化到各种未见过的指令。Ouyang et al. (2022) 表明,通过少量数据,GPT-3模型可以对齐人类意图以遵循指令。

基于这些要素,我们提出了通过假设文档嵌入(HyDE)进行检索的方法,并将稠密检索分解为两个任务:一个是由指令遵循的语言模型执行的生成任务,另一个是由对比编码器执行的文档-文档相似性任务(图 1)。首先,我们将查询输入生成模型,并指示它“写一个回答问题的文档”,即一个假设文档。我们期望生成过程通过给出一个示例来捕捉“相关性”;生成的文档不是真实的,可能包含事实错误,但它类似于一个相关文档。在第二步中,我们使用一个无监督的对比编码器将该文档编码为一个嵌入向量。在这里,我们期望编码器的稠密瓶颈充当一个有损压缩器,将额外的(虚构的)细节从嵌入中过滤掉。我们使用该向量在文档库的嵌入空间中进行搜索。检索出最相似的真实文档并返回。检索利用了对比训练期间编码在内积中的文档-文档相似性。值得注意的是,通过 HyDE 分解,查询-文档相似性分数不再显式建模或计算。相反,检索任务被转化为两个 NLU 和 NLG 任务。

HyDE 看起来是无监督的。在 HyDE 中没有训练任何模型:生成模型和对比编码器都保持不变。监督信号仅涉及我们骨干 LLM 的指令学习。

在实验中,展示了使用 InstructGPT和Contriever作为骨干模型的HyDE在11个查询集上显著优于之前最先进的无监督零样本无相关性系统Contriever,涵盖了网页搜索、问答、事实核查等任务以及斯瓦希里语、韩语、日语等语言。

2. 相关工作

  1. 稠密检索(Dense Retrieval):稠密检索通过语义嵌入进行文档检索,近年来得到了广泛研究。研究者们提出了多种改进方法,如负样本挖掘、蒸馏和任务特定的预训练。

  2. 指令遵循的语言模型(Instruction-Following Language Models):LLM 经过指令训练后,能够零样本泛化到新任务和新指令。本文的方法利用了这种能力,通过生成假设文档来捕捉查询的相关性。

  3. 零样本稠密检索(Zero-Shot Dense Retrieval):零样本检索任务通常依赖于迁移学习,即在大型数据集(如 MS-MARCO)上进行训练,然后在新的任务上进行评估。本文的研究则专注于在没有相关性标签的情况下进行零样本检索。

  4. 生成式检索(Generative Retrieval):生成式检索方法使用生成模型直接生成文档标识符,而本文的方法则通过生成假设文档并将其编码为嵌入向量来进行检索。

稠密检索(Dense Retrieval)

稠密检索自预训练的 Transformer 语言模型出现以来得到了广泛研究。研究者们研究了度量学习问题,如训练损失和负样本采样,并引入了蒸馏技术。后续的研究还探讨了专门为检索任务进行的语言模型的第二阶段预训练。

稠密检索的流行部分归功于在大规模(数十亿级别)上进行高效的最小内积搜索(MIPS)的丰富且成功的研究。

指令遵循的语言模型(Instruction-Following Language Models)

在LLM出现后不久,几组研究人员发现,经过指令及其执行数据训练的 LLM 可以零样本泛化到执行新任务和新指令。这可以通过标准的监督序列到序列学习来实现,或者更有效地通过强化学习来实现。

与我们同时,Asai et al. (2022) 研究了“任务感知的指令检索”。他们微调了稠密编码器,使其能够编码任务特定的指令,并将其附加到查询中。相比之下,我们使用无监督的编码器,并通过指令遵循的生成式 LLM 处理不同的任务及其指令,如上所述。

零样本稠密检索(Zero-Shot Dense Retrieval)

零样本(稠密)检索任务可以说是由 Thakur et al. (2021) 为神经检索社区定义的。他们的 BEIR 基准包含了多种检索任务。该论文及许多后续研究通常考虑迁移学习设置,即稠密检索器首先使用一个多样化且富含监督的语料库和查询集合(即 MS-MARCO)进行学习。

然而,正如 Izacard et al. (2021) 所指出的,这种大规模集合很少能被假设存在。因此,在本文中,我们研究了在没有相关性标签的情况下构建有效的稠密检索系统的问题。与 Izacard et al. (2021) 类似,我们也不假设在训练时能够访问测试时的语料库。这是一个更现实的设置,并防止了对测试语料库的过度工程化。

根据 Sachan et al. (2022) 的定义,我们的设置可以大致被认为是“无监督的”。严格来说,与 Sachan et al. (2022) 一样,唯一的监督存在于 LLM 中,即在学习遵循指令的过程中。

生成式检索(Generative Retrieval)

生成式检索是一类新的检索方法,使用神经生成模型作为搜索索引。这些模型使用(受限的)解码来生成文档标识符,如 id 和子字符串,这些标识符直接映射到真实文档。它们必须通过特殊的相关性数据训练过程;有效的搜索可能还需要使用新形式的搜索索引。相比之下,我们的方法使用标准的 MIPS 索引,并且不需要训练或训练数据。我们的生成模型生成一个中间假设文档,该文档被输入到稠密编码器中,而不是直接生成真实文档。

3. 方法论

这一部分具体可以看https://zhuanlan.zhihu.com/p/654503734,讲的比较详细

首先,作者定义了零样本稠密检索的问题,指出在没有相关性标签的情况下,学习查询和文档的嵌入函数是非常困难的。为了解决这个问题,HyDE 通过生成假设文档来捕捉查询的相关性模式,并使用无监督的对比编码器将生成的文档编码为嵌入向量。具体步骤如下:

  1. 生成假设文档:使用指令遵循的语言模型(如 InstructGPT)生成一个假设文档,该文档捕捉了查询的相关性模式,但可能包含不准确的细节。

  2. 编码与检索:使用无监督的对比编码器(如 Contriever)将生成的假设文档编码为嵌入向量,并通过向量相似性在文档库中检索出最相关的真实文档。

HyDE 的核心思想是将稠密检索任务分解为生成任务和文档-文档相似性任务,从而避免了显式的查询-文档相似性建模。通过这种方法,HyDE 能够在没有相关性标签的情况下进行有效的零样本稠密检索。

在本节中,我们首先正式定义(零样本)稠密检索的问题,然后介绍 HyDE 如何设计来解决这一问题。

3.1 预备知识

在信息检索中,相关性(relevance) 是指查询(query) 和 文档(document) 之间的匹配程度。具体来说:

  • 查询 是用户输入的问题或关键词,例如“如何修复电脑蓝屏?”。

  • 文档 是检索系统中的一个文本片段,例如一篇技术文章、一个网页或一段百科内容。

相关性 衡量的是某个文档是否回答了用户的查询,或者是否与查询的主题相关。

在传统的监督学习中,模型会根据人工标注的相关性标签(如“相关”或“不相关”)来学习如何判断查询和文档的相关性。但在零样本学习中,模型没有这些标签,因此需要通过其他方式(如生成假设文档)来捕捉相关性。

稠密检索模型通过内积相似性来衡量查询和文档之间的相似性。给定一个查询 q和文档 d,它使用两个编码函数enc_qenc_d将它们映射到 d 维向量 v_q和 v_d​,其内积用作相似性度量。

\text{sim}({\bf q},{\bf d})=\langle\text{enc}_{q}({\bf q}),\text{enc}_{d}({\bf d})\rangle=\langle\mathbf{v_{q}},\mathbf{v_{d}}\rangle \qquad(1)

对于零样本检索,我们考虑 L个查询集 Q_1,Q_2,...,Q_L 及其对应的搜索语料库,文档集D_1,D_2,...,D_L。将第i个查询集中的第 j个查询表示为 q_{ij}我们需要在没有访问任何查询集 Q_i、文档集 D_i 或任何相关性判断 r_{ij} 的情况下,完全定义映射函数enc_q 和 enc_d

在信息检索任务中,通常会有多个不同的查询集(query sets),每个查询集对应一个特定的任务或领域。例如:

  • 一个查询集可能是关于网页搜索的查询(如 TREC DL19/DL20)。

  • 另一个查询集可能是关于科学事实验证的查询(如 SciFact)。

  • 还有一个查询集可能是关于金融问答的查询(如 FiQA)。

每个查询集中包含多个查询(queries),每个查询都有一个唯一的编号。因此,“第i个查询集中的第j个查询” 表示在第i个任务或领域中,第j个具体的查询。

这种分层的表示方式是为了方便处理多个任务和多个查询,尤其是在零样本学习(zero-shot learning)中,模型需要在没有见过这些查询的情况下进行检索。

零样本稠密检索的困难之处在于公式 (1):它需要学习两个嵌入函数(分别用于查询和文档)到同一个嵌入空间,其中内积捕捉相关性。如果没有相关性判断/分数来拟合,学习就变得难以处理。

3.2 HyDE

HyDE 通过在执行(文档-文档)相似性的文档嵌入空间中进行搜索,规避了上述学习问题。这可以通过无监督的对比学习轻松实现。我们将文档编码器 enc_d直接设置为对比编码器 enc_{con}

f=\text{enc}_{d}=\text{enc}_{\text{con}} \qquad(2)

为简单起见,该函数也表示为 f。这个无监督的对比编码器将被所有传入的文档语料库共享。

\mathbf{v_{d}}=f(d)\quad\forall d\in D_{1}\cup D_{2}\cup...\cup D_{L} \qquad(3)

为了构建查询向量,我们额外考虑一个指令遵循的语言模型 InstructLM。它接受一个查询 q 和一个文本指令 INST,并遵循它们执行 INST 指定的任务。为简单起见,表示为:

g(q,\text{ INST})=\text{InstructLM}(q,\text{ INST})\qquad(4)

现在我们可以使用 g 将查询映射到“假设”文档,通过从 g 中采样,设置指令 INST 为“写一个回答问题的段落”。生成的文档不是真实的,可能并且很可能在事实上是不准确的。我们只要求它捕捉相关性模式。这是通过生成文档,即提供示例来实现的。关键的是,这里我们将相关性建模从表示学习模型卸载(offload)到一个更容易、自然且有效地泛化的 NLG 模型。生成示例还取代了显式的相关性分数建模。

我们现在可以使用文档编码器 f 对生成的文档进行编码。表示为:

\mathbb{E}[\mathbf{v}_{q_{ij}}]=\mathbb{E}[f(g(q_{ij},\textsc{inst}_{i}))] \qquad (5)

 形式上,g 基于链式法则定义了一个概率分布。在本文中,我们简单地考虑期望值,假设\mathbf{v}_{q_{ij}} 的分布是单峰的,即查询不是模糊的。模糊查询和多样性的研究留待未来工作。我们通过从 g 中采样 N个文档\widehat{d_1},\widehat{d_2}, ..., \widehat{d_N}来估计公式 (5)。

\hat{\mathbf{v}}_{q_{ij}} =\frac{1}{N}\sum_{\hat{d}_{k}\sim g(q_{ij},\textsc{inst}_{i})}f(\widehat{d_{k}})] \qquad(6)

=\frac{1}{N}\sum_{k=1}^{N}f(\hat{d}_{k})\qquad \qquad(7)

我们还考虑将查询作为一个可能的假设:

\hat{\mathbf{v}}_{q_{ij}}=\frac{1}{N+1}[\sum_{k=1}^{N}f(\hat{d}_{k})+f(q_{ij})] \qquad(8)

内积在\mathbf{\widehat{v}}_{q_{ij}}和所有文档向量 \{f(d)|d\in D_i\}之间计算,检索出最相似的文档。在这里,编码函数 f 充当一个有损压缩器,输出稠密向量,其中额外的细节被过滤并从向量中剔除。它进一步将假设向量与实际语料库和真实文档关联起来。完整的 HyDE 系统如图 1 所示。

对比编码器(Contrastive Encoder) 是一种通过对比学习(contrastive learning)训练的模型,它的目标是将相似的文档映射到相近的向量空间中,而不相似的文档映射到较远的向量空间中。具体来说:

  • 对比编码器通过对比正样本(相似的文档对)和负样本(不相似的文档对)来学习文档的表示。

  • 例如,如果两篇文档都讨论“如何修复电脑蓝屏?”,它们的向量表示应该很接近;而如果一篇讨论蓝屏,另一篇讨论如何安装操作系统,它们的向量表示应该较远。

为什么要用对比编码器?

  1. 无监督学习:对比编码器可以在没有人工标注的情况下进行训练,只需要文档对(不需要查询-文档对)。这使得它非常适合零样本学习任务,因为没有相关性标签可用。

  2. 捕捉文档相似性:对比编码器能够很好地捕捉文档之间的语义相似性,即使它们没有直接的相关性标签。这对于生成假设文档后的检索非常重要,因为生成的文档可能与真实文档在语义上相似,但不完全相同。

  3. 高效检索:对比编码器生成的向量可以用于高效的向量相似性搜索(如内积搜索),这使得它在大规模文档库中检索相关文档时非常高效。

4. 实验

4.1 实验设置

实现(Implementation)
我们使用 InstructGPT和 Contriever 模型实现了 HyDE。InstructGPT 是 GPT-3 模型的一个指令系列。我们从 InstructGPT 中采样,使用 OpenAI Playground 默认的温度参数 0.7 进行开放式生成。对于英语检索任务,我们使用仅支持英语的 Contriever 模型,对于非英语任务,我们使用多语言的mContriever。我们使用 Pyserini 工具包进行检索实验。

数据集(Datasets)
我们考虑了网页搜索查询集 TREC DL19和 DL20,它们基于 MS-MARCO 数据集(网页文档数据集)。我们还使用了来自 BEIR 数据集的 6 个低资源数据集。对于非英语检索,我们考虑了来自 Mr.Tydi 数据集的斯瓦希里语、韩语、日语和孟加拉语。

我们为每个数据集使用了不同的指令。它们具有相似的结构,但有不同的量化器来控制生成的假设文档的确切形式。这些指令可以在附录 A.1 中找到。

对比系统(Compared Systems)
Contriever 模型(Contriever 和 mContriever)作为我们的主要基线。它们使用无监督的对比学习进行训练。HyDE 检索器与它们共享完全相同的嵌入空间。唯一的区别是如何构建查询向量。这些比较使我们能够轻松地检验 HyDE 的效果。经典的基于启发式的词汇检索器 BM25 也被包括在内。

我们还包含了一些涉及在大规模相关性数据上进行微调的系统作为参考。我们考虑了在 MS-MARCO 上进行微调并迁移的模型,如 DPR 和 ANCE,来自 BEIR 论文。对于多语言任务,我们包括了来自 Mr.Tydi 论文的 mDPR 模型,以及在 MS-MARCO 上微调的 mBERT 和 XLM-R,来自 Contriever 论文。我们还包括了最先进的迁移学习模型:在 MS-MARCO 上微调的 Contriever 和 mContriever,分别称为 ContrieverFT 和 mContrieverFT。这些模型经过了最先进的检索模型训练流程,包括第二阶段的检索特定预训练和几轮微调;它们应被视为经验上的上限。

4.2 网页搜索(Web Search)

在表 1 中,我们展示了在 TREC DL19 和 TREC DL20 上的检索结果。我们看到 HyDE 在 Contriever 的基础上带来了显著的改进,无论是面向精度的指标还是召回率指标。虽然无监督的 Contriever 可能表现不如经典的 BM25 方法,但 HyDE 以较大的优势超越了 BM25。

即使与经过微调的模型相比,HyDE 仍然具有竞争力。需要注意的是,TREC DL19/20 是基于 MS-MARCO 的搜索任务,所有经过微调的模型都在此基础上进行了丰富的监督训练。在 TREC DL19 上,HyDE 在 map 和 ndcg@10 上与 ContrieverFT 表现相当,并且在 recall@1k 上表现最佳。在 DL20 上,HyDE 的 map 和 ndcg@10 比 ContrieverFT 低约 10%,但 recall@1k 相似。ANCE 模型在 ndcg@10 上表现优于 HyDE,但召回率较低,表明它可能偏向于一部分查询和/或相关文档。

nDCG@10 是衡量检索系统在前 10 个检索结果中的相关性排序质量的指标。

它考虑了检索结果的相关性得分以及结果的排序位置,越相关的结果排在越前面,得分越高。
 

Recall@1k 是衡量检索系统在前 1000 个检索结果中能够找到多少相关文档的指标。

它关注的是检索系统的覆盖率,即系统是否能够找到尽可能多的相关文档。

4.3 低资源检索(Low Resource Retrieval)

在表 2 中,我们展示了在 BEIR 的低资源任务上的检索结果。与网页搜索类似,HyDE 再次在 Contriever 的基础上带来了显著的改进,无论是 ndcg 还是召回率。HyDE 仅在一个数据集 TREC-Covid 上表现不如 BM25,但差距仅为 0.2;相比之下,底层的 Contriever 表现差了 50% 以上。

我们还观察到 HyDE 在与经过微调的模型相比时表现出色。HyDE 通常表现优于 ANCE 和 DPR,尽管这两者都在 MS-MARCO 上进行了微调,并且 ANCE 还涉及一些复杂的硬负样本技术。ContrieverFT 在 FiQA 和 DBPedia 上表现出性能优势。这些任务涉及检索金融帖子或实体。我们认为性能差异可以归因于指令的不足;更详细的指令可能会有所帮助。

4.4 多语言检索(Multilingual Retrieval)

多语言设置对 HyDE 提出了几个额外的挑战。随着语言数量的增加,小规模的对比编码器会变得饱和。与此同时,我们的生成式 LLM 面临一个相反的问题:对于资源不如英语或法语丰富的语言,高容量的 LLM 可能会训练不足。

尽管如此,在表 3 中,我们仍然发现 HyDE 能够改进 mContriever 模型。它能够优于在 MS-MARCO 上进行微调并迁移的非 Contriever 模型。另一方面,我们也观察到 HyDE 与经过微调的 mContrieverFT 之间存在一些差距。由于 HyDE 和 mContrieverFT 使用相似的对比编码器,我们假设这是因为我们所考虑的非英语语言在预训练和指令学习阶段都训练不足。

5. 分析

生成式LLM和对比编码器构成了 HyDE 的核心。在本节中,我们研究了改变它们的实现方式的效果。特别是,我们考虑了更小的语言模型和经过微调的编码器。我们在 TREC DL19/20 上进行了研究。

不同生成模型的效果:

  • 实验表明,使用更大的生成模型(如 InstructGPT)能够显著提升 HyDE 的性能。较小的模型(如 FLAN-T5)虽然也能带来改进,但效果不如大模型明显。
  • 生成模型的能力(如生成假设文档的质量)对 HyDE 的性能有重要影响。

使用微调编码器的HyDE:

  • 虽然 HyDE 的设计初衷是在无监督环境下使用,但实验表明,即使在使用微调编码器的情况下,HyDE 仍然能够进一步提升性能。

  • 生成模型(如 InstructGPT)能够捕捉到一些微调编码器未能捕捉到的相关性模式,这表明生成模型和对比编码器在 HyDE 中起到了互补的作用。

5.1 不同生成模型的效果

在表 4 中,我们展示了使用其他指令遵循语言模型的 HyDE。特别是,我们考虑了一个 520 亿参数的 Cohere 模型(command-xlarge-20221108)和一个 110 亿参数的 FLAN 模型(FLAN-T5-xxl)。一般来说,我们观察到所有模型都为无监督的 Contriever 带来了改进,较大的模型带来了更大的改进。在撰写本文时,Cohere 模型仍然是实验性的,没有太多细节公开。我们只能暂时假设训练技术可能也在性能差异中起到了一定的作用。

5.2 使用微调编码器的 HyDE

首先,使用微调编码器的 HyDE 并不是预期的使用方式:当几乎没有相关性标签时,HyDE 更强大且不可替代。在这里,我们感兴趣的是了解 HyDE 嵌入是否以及如何影响微调编码器。在表 4 中,我们看到较弱的指令 LM 可能会对微调检索器的整体性能产生负面影响。(提醒我们的读者,ContrieverFT 是针对 TREC DL19/20 进行领域内监督微调的。)性能下降仍然很小。另一方面,我们还观察到 InstructGPT 模型能够进一步提升性能,尤其是在 DL19 上。这表明可能仍然存在某些因素未被微调编码器捕捉到,而只能由生成模型捕捉到。

6. 结论

在本文的最后,我们鼓励读者花点时间反思一下 HyDE 模型。将其与最近看到的一些其他检索器或重排序器进行比较。这些其他模型可能在架构、训练方法和/或任务上有所不同,但它们可能都涉及对查询和文档对之间的相关性分数进行建模。相比之下,HyDE 中的相关性概念是由一个 NLG 模型和语言生成过程捕捉的。我们在许多情况下证明,HyDE 可以与学习建模数值相关性分数的稠密检索器一样有效。那么,数值相关性仅仅是语言理解的统计产物吗?随着 NLU 和 NLG 模型迅速变得更强大,理论上一个弱检索器是否就足够了?急于下结论并不明智;需要更多的工作来找到答案。

具体来说,在本文中,我们介绍了一种新的 LLM 与稠密编码器/检索器之间的交互范式。我们证明了(部分)相关性建模和指令理解可以委托给更强大和灵活的 LLM。因此,不再需要相关性标签。我们很高兴看到这种方法如何进一步推广到更复杂的任务,如多跳检索/问答和对话搜索。

我们认为 HyDE 也具有实际用途,尽管不一定在整个搜索系统的生命周期中都使用。在搜索系统的初始阶段,使用 HyDE 提供查询服务可以提供与经过微调的模型相当的性能,这是其他无相关性模型无法提供的。随着搜索日志的增长,可以逐步推出监督稠密检索器。随着稠密检索器变得更强大,更多的查询将被路由到它,只有较少见的和新兴的查询会转到 HyDE 后端。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值