信息检索(55):SparTerm: Learning Term-based Sparse Representation for Fast Text Retrieval


发布时间(2020)


基于术语的稀疏表示

摘要

1)在完整词汇表学习稀疏表示
a)映射函数:词频和Bow表示 --》预测每个 term 的重要性分布
b)门控器:控制每个 term 的激活
2)与 DeepCT 和 Doc2query 的区别
他们两个主要是利用中间模型辅助学习稀疏表示
本文直接学习稀疏表示
基于词的稀疏表示在工业应用中占据了第一阶段文本检索的主导地位,因为它在效率、可解释性和精确词匹配方面具有优势。在本文中,我们研究了将预训练语言模型 (PLM) 的深度知识迁移到基于词的稀疏表示的问题,旨在提高词袋 (BoW) 方法在语义级匹配中的表示能力,同时仍保留其优势。具体来说,我们提出了一个新颖的框架 SparTerm,用于直接学习完整词汇空间中的稀疏文本表示。所提出的 SparTerm 包括一个重要性预测器(用于预测词汇表中每个词的重要性)和一个门控控制器(用于控制词激活)。这两个模块协同确保最终文本表示的稀疏性和灵活性,从而将词权重和扩展统一在同一框架中。在 MSMARCO 数据集上进行评估时,SparTerm 明显优于传统的稀疏方法,并在所有基于 PLM 的稀疏模型中实现了最先进的排名性能。

1 引言

响应自然语言查询的文本检索是信息检索 (IR) 系统的核心任务。最近的研究采用了两阶段流程来解决此问题,其中首先由快速检索器从文档集合中检索初始文档集,然后由更复杂的模型进一步重新排序。
对于第一阶段的检索,神经密集表示在语义匹配方面表现出巨大潜力,并且在许多 NLP 任务中优于稀疏方法,但在强调长文档检索和精确匹配的场景中,情况并不一定如此[9]。 此外,对于非常大的(例如 100 亿)候选集,密集方法必须在效率与准确性之间做出权衡。经典的基于术语的稀疏表示,也称为词袋 (BoW),例如 TF-IDF [15] 和 BM25 [14],可以有效地执行文字匹配,从而在工业 IR 系统中发挥核心作用。然而,传统的基于术语的方法通常被认为表示能力不足,不适合进行语义级匹配。
已经有人尝试将稀疏方法扩展到词汇匹配之外,同时保留其优势。SRNM [17] 基于密集神经模型学习查询和文档的潜在稀疏表示,其中“潜在”标记在倒排索引期间充当传统术语的角色。SNRM 的一个挑战是它失去了原始术语的可解释性,而这对于工业系统至关重要
最近提出的预训练语言模型 (PLM),如 ELMO [12] 和 BERT [4] 在许多 NLP 任务中表现出色,从而为将深度语境化知识从密集表示转移到稀疏模型提供了新的机会。DeepCT [2] 和 Doc2Query [11] 专注于段落/文档与相应查询之间的相关关系,学习基于 PLM 的模型来提升传统 BoW 方法的性能。不同之处在于 DeepCT 学习回归模型以使用语境化表示重新加权术语,而 Doc2query 学习编码器-解码器生成模型以扩展段落的查询术语。这两种方法都训练辅助中间模型,然后帮助细化最终的稀疏表示以实现更好的文本排名性能。
在本文中,我们提出了一个新颖的框架 SparTerm,用于直接在完整词汇空间中学习基于术语的稀疏表示。借助预先训练的语言模型,所提出的 SparTerm 可以学习一个函数,将基于频率的 BoW 表示映射到整个词汇表中的稀疏术语重要性分布,从而可以灵活地在同一框架中同时涉及术语加权和扩展。如图 1 所示,与 BoW 表示相比,SparTerm 根据上下文为高可区分性的术语分配更多权重,并扩展额外术语,以期弥补未来查询的词汇差距。我们通过实证研究表明,SparTerm 显著提高了稀疏检索方法的上限,并为将深度知识从基于 PLM 的表示转移到简单的 BoW 表示提供了新的见解。
更具体地说,SparTerm 包含一个重要性预测器和一个门控控制器。重要性预测器将原始输入文本映射到词汇空间中的密集重要性分布,这与仅考虑输入文本的字面术语的传统术语加权方法不同。为了确保最终表示的稀疏性和灵活性,引入了门控控制器以在词汇表大小维度上生成二进制和稀疏门控信号,指示应激活哪些标记。这两个模块协同产生基于输入文本与词汇表中每个术语的语义关系的基于术语的稀疏表示
我们的贡献。总之,我们提出在完整词汇空间中直接学习基于术语的稀疏表示。所提出的 SparTerm 表明,在保持 BoW 方法的可解释性和效率的同时,基于术语的表示的排名性能还有很大的提升空间。 在 MSMARCO [10] 数据集上进行评估,SparTerm 明显优于之前基于同等大小 PLM 的稀疏模型。SparTerm 的顶级排名性能甚至优于 Doc2Query-T5,后者基于 2 倍模型大小和 70 倍预训练语料库大小的预训练模型。此外,我们对如何将 PLM 的深度知识转移到稀疏方法进行了进一步的实证分析,这为稀疏表示学习提供了新的见解。

2 相关工作

我们的工作涉及两个研究领域:词袋表示和用于文本检索的预训练语言模型。

2.1 Bow 方法

词袋方法(BoW)在第一阶段的检索中扮演着核心角色。这些方法将文档或查询转换为一组单个术语,每个术语关联一个权重来表征其权重。早期的常见做法大多采用 TF-IDF 风格的模型来计算权重。Robertson [14] 提出了著名的方法 BM25,进一步提高了原始 TF-IDF 的性能。后来提出的方法,如 [7]、[18]、[16],并没有显示出比 BM25 更大的优势。最近,Hamed Zamani [17] 提出了 SRNM,使用弱监督在隐藏空间中学习稀疏编码,这在解决“词汇不匹配”问题方面表现出良好的潜力。然而,潜在的无法解释的标记不能确保可以检索到具有精确匹配术语的文档。

2.2 密集文本检索的预训练语言模型

BERT [4] 等预训练语言模型为文本检索带来了新的可能性。基于密集表示,Lee [8] 提出了采用双编码器架构的 ORQA,以使用 FAISS [5] 检索问答候选段落。然而,[9] 的分析得出结论,基于密集表示的双编码器在强调长文档检索和精确匹配的场景中会受到容量限制。遵循后期交互范式,Khattab [6] 提出了 Col-BERT 来在查询和文档之间进行有效交互,其运行速度比完全交互 BERT 快 150 倍,但精度相当。虽然比 BERT 快得多,但由于后期交互层的存在,Col-BERT 在大规模第一阶段检索方面仍然不具备计算可行性。

2.3 稀疏文本检索的预训练语言模型

为了改进传统的稀疏 BoW 表示,出现了几种基于 PLM 的模型。Dai [2] 提出了 DeepCT 来估计术语的权重,同时考虑其上下文信息,这项工作后来被扩展用于生成文档级术语权重 [3]。另一项工作 Doc2query [11] 尝试“翻译”潜在查询以扩展文档内容,与传统的 BM25 方法相比,这也显示出了很大的改进。我们的工作与这两种方法的最大区别在于,DeepCT 和 Doc2Query 训练了一个辅助中间模型来帮助细化稀疏表示,而 SparTerm 旨在直接学习整个词汇表中的稀疏表示。

3 稀疏表示学习

1)重要性预测器:利用 bert 的预测层将隐藏表示映射成一个 vocabulary-size 的向量
2)门控
a)纯文字门控:控制只输出原 doc 中的 token 为1
b)扩展增强门控:在纯文字门控的基础上,再加上额外的术语
3)训练过程
deepct:term 重要性直接拟合
本文:term 重要性不显式使用,使用passage相似度来控制
PPS:Masked Language Prediction layer 这个是隐藏状态的最后一层映射层
本节介绍SparTerm的模型架构和相应的训练策略。

3.1 概述

图 2(a) 描述了 SparTerm 的总体架构,它由重要性预测器和门控控制器组成。给定原始文本段落 𝑝,我们的目标是将其映射到词汇空间中的深度和上下文稀疏表示 𝑝 ′。 映射过程可以表述为:
其中 F 是项目重要性预测器,G 是门控控制器。重要性预测器 F 生成一个密集向量,表示词汇表中每个项目的语义重要性。 门控控制器 G 生成一个二进制门控向量,以控制哪些术语出现在最终的稀疏表示中
为此,我们令 ||G (𝑝)|| < 𝜆 且 G (𝑝) ∈ {0, 1} 𝑣 ,其中 𝜆 是 𝑝 ′ 的最大非零元素数,𝑣 是词汇量。这两个模块共同确保了最终表示 𝑝 ′ 的稀疏性和灵活性。我们将在以下部分讨论 F 和 G 的详细模型架构和学习策略。

3.2 重要性预测器

给定输入段落 𝑝,重要性预测器输出词汇表中所有术语的语义重要性,将术语权重和扩展统一到框架中。如图 2(b) 所示,在重要性预测之前,使用基于 BERT 的编码器帮助获取段落 𝑝 中每个术语 𝑤𝑖 的深度语境化嵌入 ℎ𝑖。每个 ℎ𝑖 从某个位置 𝑖 建模周围上下文,从而提供哪些术语在语义上与当前段落主题相关的不同视图。使用逐个标记的重要性预测器,我们为每个 ℎ𝑖 获得维度 𝑣 的密集重要性分布 𝐼𝑖:
其中 𝑇 𝑟𝑎𝑛𝑠 𝑓 𝑜𝑟𝑚 表示具有 GELU 激活和层归一化的线性变换,𝐸 是共享词嵌入矩阵,𝑏 是偏差项。请注意,token-wise 重要性预测模块类似于 BERT 中的 masked 语言预测层,因此我们可以直接从预训练的 BERT 中初始化这部分参数。最终的段落重要性分布可以通过将所有 token-wise 重要性分布相加来获取:
其中𝐿是第𝑝段的序列长度,并且利用Relu激活函数来确保重要性逻辑的非负性。

3.3 门控

门控控制器生成一个二进制门控信号,决定激活哪些术语来表示文章。首先,控制器默认激活原始文章中出现的术语(我们称之为文字术语)。除了文字术语外,还希望激活一些与文章主题相关的其他术语,以解决 BOW 表示的“词汇不匹配”问题。据此,我们提出了两种门控控制器:仅文字门控和扩展增强门控,可应用于对词汇匹配有不同要求的场景。
仅文字门控。如果简单地设置 G (𝑝) = 𝐵𝑂𝑊 (𝑝),其中 𝐵𝑜𝑊 (𝑝) 表示段落 𝑝 的二进制 BoW 向量,我们就会得到仅文字门控控制器。在此设置中,只有原始段落中存在的那些术语才被视为对段落表示激活。如果不扩展非文字术语,稀疏表示学习就会简化为纯术语重新加权方案。尽管如此,在实验部分,我们通过经验表明,该门控控制器可以通过学习文字术语的重要性来实现具有竞争力的检索性能。
扩展增强门控。扩展增强门控控制器激活了有望弥补“词汇不匹配”差距的术语。与方程 (2) 和方程 (3) 所表达的重要性预测过程类似,我们获得了具有独立网络参数的维度为 𝑣 的逐段密集术语门控分布 𝐺,如图 2© 所示。请注意,尽管门控分布 𝐺 和重要性分布 𝐼 共享相同的维度 𝑣,但它们在 logit 尺度和数学含义上有所不同。𝐼 表示词汇表中每个术语的语义重要性,而 𝐺 量化每个术语参与最终稀疏表示的概率。为了确保 𝑝 ′ 的稀疏性,我们对 𝐺 应用二值化器:
其中 𝐵𝑖𝑛𝑎𝑟𝑖𝑧𝑒𝑟 表示仅输出 0 或 1 的二元激活函数。扩展项 𝐺𝑒 的门控向量通过以下方式获得:
其中,按位取反向量 ¬𝐵𝑜𝑊 (𝑝) 用于确保与仅文字门控正交。只需将扩展门控和仅文字门控相加,我们便可得到最终的扩展增强门控向量 𝐺𝑙𝑒 :
最终的稀疏表示既包含字面术语,又包含扩展术语,因此可以在词汇空间中“自由”分布。 请注意,在 SparTerm 框架中,扩展术语并非直接附加到原始段落中,而是用于控制是否允许术语参与最终表示的门控信号。这确保了 BERT 编码器的输入文本始终是原始段落的自然语言。

3.4 训练

在本节中,我们介绍了重要性预测器和扩展增强门控控制器的训练策略
训练重要性预测器。重要性预测器通过优化排名目标进行端到端训练。设 𝑅 = {(𝑞1, 𝑝1,+, 𝑝1,−), …, (𝑞𝑁 , 𝑝𝑁 ,+, 𝑝𝑁 ,−)} 表示一组 N 个训练实例;每个实例包含一个查询 𝑞𝑖 、一个正向候选段落 𝑝𝑖,+ 和一个负向候选段落 𝑝𝑖,−,表示 𝑝𝑖,+ 与查询的相关性高于 𝑝𝑖,−。损失函数是正向段落的负对数似然:
其中 𝑞 ′ 𝑖 , 𝑝 ′ 𝑖,+ , 𝑝 ′ 𝑖,− 是通过公式 (1) 得到的 𝑞𝑖 , 𝑝𝑖,+, 𝑝𝑖,− 的稀疏表示,𝑠𝑖𝑚 表示任何相似性测量,例如点积。与 DeepCT ?? 的训练目标不同,我们不直接拟合统计术语重要性分布,而是将重要性视为可以通过远程监督信号学习的中间变量,用于段落排名。端到端学习可以将每个术语纳入优化过程,从而产生更平滑的重要性分布,同时也具有足够的可区分性
训练扩展增强门控控制器。我们在表 1 中总结了四种类型的术语扩展,所有这些类型都可以在我们的 SparTerm 框架中进行优化。直观地看,预训练的 BERT 已经具备通过掩码语言模型 (MLM) 预训练任务扩展同义词和共现词的能力。因此,在本文中,我们专注于扩展 passage2query-alike 和摘要术语。给定一个 passagequery/summary 平行语料库 C,其中 𝑝 是一段话,𝑡 是相应的目标文本,维度 𝑣 的 𝑇 是 𝑡 的二进制词袋向量。我们使用二元交叉熵损失来最大化词汇表中所有术语的概率值:
端到端联合训练。直观地讲,监督排名信号也可以用来指导门控控制器的训练,因此我们可以联合训练重要性预测器和门控控制器:

4 实验设置

4.1 数据集和指标

4.2 实现

4.3 基线和实验设置

5 实验结果

5.1 文章完整排名表现

表 2 显示了我们的模型和基线在 MSMARCO 段落检索数据集上的全排序性能。SparTerm(扩展增强)在 MRR 上的表现优于所有基线,在所有稀疏模型中实现了最佳排序性能,并且在召回率上优于除 Doc2query-T5 之外的所有基线。我们发现 SparTerm 在 MRR 和 Recall@10-100 上实现了更显著的性能改进,这表明我们的模型与之前的稀疏模型相比,在顶级排序方面具有更显著的能力。此外,基于预训练语言模型 (PLM) 的方法(DeepCT、Doc2query-T5 和 SparTerm)的表现优于没有 PLM 的方法,表明 PLM 可以促进段落全排序并具有更好的表示。考虑到 T5 为 Doc2query 带来的改进,我们相信 SparTerm 可以通过更先进的 PLM 得到进一步改进。 即使不进行任何扩展,SparTerm(literal-only) 在 MRR 和 Recall 上的表现也优于 DeepCT,表明 SparTerm 可以产生更有效的词权重,从而促进检索。 我们还在 5.4 节分析了 SparTerm 和 DeepCT 在词权重方面的差异。仅使用扩展的单词,SparTerm 与 BM25 相比取得了明显的改进,尤其是在 Recall 上。这一改进证明了段落扩展对提高检索的 Recall 的有效性。

5.2 文档排名的表现

5.3 不同查询表示方法的比较

我们进行了实验来评估使用不同查询表示方法的 SparTerm 的性能:• Query-tf 是一个单塔模型,使用基于 tf 的向量来表示查询,同时使用该模型来表示文档。 • Query-neural-symmetric 是一个对称的双塔模型,用于表示查询和段落,其中具有相同架构的两个塔共享相同的权重。 • Query-neural-asymmetric 是一个非对称双塔模型,其中两个塔不共享权重。查询和段落用不同的塔表示。 结果报告在表 4 中,从中我们发现使用对称双塔模型对查询的神经表示在我们构建的 Dev 集上带来了更好的 MRR 和召回率性能。对称模型比非对称模型表现更好,因为非对称双塔架构导致参数数量增加一倍,这使得模型更难收敛。我们进一步分析了不同查询表示方法下段落术语权重的分布,发现基于 tf 的查询表示比神经表示的分布更为尖锐。原因可能是查询表示在训练期间是固定的,模型需要为正向段落中的相关术语赋予更多权重。

5.4 词项权重分析

为了进一步评估 SparTerm 的术语加权能力,我们将 DeepCT 和 SparTerm(仅限文字)加权的段落术语权重标准化到相同范围,并在图 3 中对其进行可视化。图 3 展示了三个不同的查询(第一列)和最相关的段落。颜色的深度代表术语的权重,颜色越深,权重越高。我们发现 DeepCT 和 SparTerm 都能找出最重要的术语并赋予它们更高的权重。然而,DeepCT 获得的分布更稀疏、更尖锐,并且仅激活段落中的极少数术语,遗漏了一些重要术语,例如第一种情况下的“过敏反应”。SparTerm 可以通过激活更多未出现在查询中的术语来产生更平滑的重要性分布。这种分布允许更多查询检索到该段落。这也表明我们的模型在指出段落中的重要术语方面具有更好的能力。

5.5 术语扩展分析

图3展示了Gating Controller预测的不同段落的扩展词及其概率。每个词的概率说明了该词被扩展的可能性。很明显,我们的模型确实可以激活一些未出现在段落中但语义非常相似的重要词,尤其是出现在查询中,例如第一种情况下的“sign”和第二种情况下的“temperature”。 为了分析这些词是如何扩展的以及它们属于图3中的哪个类别,我们追溯每个扩展词的来源,并在图4中显示对扩展词有贡献的前5个词及其logits。我们可以发现扩展词基本上有三种不同的情况:(1)段落2查询词,例如“temperature”:段落中的几乎每个词都对这类词贡献很大,它们似乎更有可能从监督信号中学习。 (2) 原始术语的同义词,即“天气”和“气候”、“降雨”和“雨”、“季节、每月”和“月”、“热”和“热”。 (3) 原始术语的共现词,即“季节、热”>“夏季”、“潮湿、湿度、天气”->“雨”和“热、降雨、湿度”->“热带、季风”。 第一种情况得益于门控控制器的优化目标,而后两种情况更可能是 MLM 预训练任务的能力,因为我们在门控控制器中重用了 MLM 模块进行预测。

6 结论

在本研究中,我们提出 SparTerm 来直接学习全词汇空间中基于词的稀疏表示。SparTerm 学习一个函数,将基于频率和 BoW 的表示映射到整个词汇空间中的稀疏词重要性分布,这在同一框架中涉及词加权和扩展。在 MSMARCO 数据集上进行的实验表明,在同等大小的 PLM 基础上,SparTerm 的表现明显优于之前的稀疏模型,在所有稀疏模型中实现了最佳排名性能。我们进一步对如何将 PLM 的深度知识转移到稀疏方法进行了实证分析,这为稀疏表示学习提供了新的见解。实证结果表明,SAPRT 显著提高了稀疏检索方法的上限。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值