Press "Enter" to skip to content

Few-Shot Conversational Dense Retrieval

本站内容均来自兴趣收集,如不慎侵害的您的相关权益,请留言告知,我们将尽快删除.谢谢.

Source: SIGIR2021; Few-Shot Conversational Dense Retrieval

 

Code: ConvDR

 

Abstract:

 

Dense Retrieval(DR)可以通过在学习到的embedding空间中进行匹配来解决会话搜索中的查询理解问题。然而, DR模型对监督信号的额外需求以及会话搜索的长尾效应存在 ,使得这种适应非常具有挑战性。

 

本文提出一个会话密集检索系统ConvDR, 学习上下文的embedding用于多轮会话查询,并且只使用嵌入点积进行文档检索 。此外, 使用一个teacher-student框架赋予模型少样本学习(few-shot)的能力 ,在该框架中,使用一个hoc DR作为teacher,学习了一个student查询编码器来模仿嵌入在Oracle重建的query中的teacher embedding,然后继承了文档编码。

 

实验证明了模型在 少样本学习和全监督设置 下的有效性。它优于以往的在稀疏词空间中操作的系统,与手动Oracle 查询重建的检索精度相匹配,并且因为其简单性而更加高效。分析表明,该模型的优势在于它 能够捕捉有信息的上下文 , 忽视在前几轮对话中不相关的上下文 。这使得ConvDR更加有效,因为对话在不断的发展,而其他研究模型可能会被之前回合中增加的噪声所干扰。

 

Intro:

 

多轮会话查询 在会话搜索中产生了一个独特的挑战。人类的对话是上下文化的、简洁的,并且假定有先验知识。会话式搜索通常意味着有省略、引用和歧义的来自之前会话回合的上下文,这使搜索系统更难理解潜在的信息需求。会话查询中存在着查询理解和词汇不匹配问题。

 

从根本上解决会话搜索中的 查询理解和词汇不匹配问题 的一个解决方案是利用 密集检索技术 。如图1所示,会话式密集检索系统首先将用户的每个会话查询编码为一个embedding,然后直接与学习到的嵌入空间中的文档匹配(做点积运算)。会话搜索的目的是从会话上下文中模拟用户的信息需求。

但是在实践中, 密集检索的极端数据短缺与会话检索的长尾分布之间有着尖锐矛盾存在 。在ad hoc search中,与其他的信息检索方法相比,密集检索需要更多的相关标签、更多的微调迭代、更复杂的微调策略。但是,会话检索可能并不能在hoc检索中拥有大规模相关性监督数据。每个会话检索序列都是长尾的并且没有足够的训练信号来完全监督当前的密集检索模型。

 

本文,作者采用一种 用于会话密集检索的少样本学习的方法ConvDR 来解决这些差异。首先,作者发现瓶颈问题依然在于 查询表示 上,而文档可以继承在ad hoc搜索中学习到的相同的稠密表示(它们的信息是相同的)。针对此问题,作者开发了一个teacher-student框架来训练一个student 会话查询编码器 来模仿来自teacher的Oracle查询重写的表示,这是一个ad hoc 密集检索模型。同时,将知识蒸馏(KD)与多任务学习中的标准排序损失结合,提高ConvDR的少样本学习能力。

 

在TREC CAsT基准上进行的实验结果表明,ConvDR表现出了很强的会话搜索优势,它在检索精度上比之前的基于查询重写的SOTA模型分别高出9%、48%,甚至比CAsT19上的人工问题重新构造的精度还要高。此外,作者在QR-QuAC上进行了实验,结果表明,本文采用的知识蒸馏也有利于全监督的ConvDR模型,并帮助我们的模型性能相比之前的SOTA准确度几乎翻了一倍。

 

研究发现,与稀疏空间中的问题重构相比,本文通过会话式问题编码器得到的embedding能够更好地模拟Oracle teacher,捕捉之前回合中的上下文。去除额外的查询重构步骤,直接在密集空间中操作这样不仅简化了模型结构,并且改善了在线延时(因为不需要进行高成本的问题生成)。

 

此外,作者进行了一系列的分析来理解ConvDR的有效性。作者发现ConvDR相比使用查询重写的模型可以 高效并稳定地在之前的会话中捕捉到重要且信息丰富的上下文 。这种处理信息量丰富、干扰多的上下文信息的能力确保了ConvDR在整个会话过程中保持其检索质量,而其他的自动检索方法可能会在该过程中受到干扰而混淆。

 

Related Work:

 

TREC CAsT为会话搜索构建了一个评估基准,其任务为 在对话中为每轮查询检索相关的段落 。其中一个用户的信息需求通过多轮的对话查询来呈现。其中的query是人工编造的,用来模仿语音搜索场景中的用户行为(去掉了语音识别部分)。最近在该基准上的研究表明,主要问题在 查询 上;其中的文档排序可以大部分继承在ad hoc搜索中的技术。但是准确的会话查询需要新的技术来解决其 上下文依赖关系和词汇表不匹配 的问题。最近针对该问题的解决方法多是将会话 查询重构 为去上下文化的、完全成熟的ad hoc queries,重构后的query其中可以包含表示用户需求的所有必要信息,之后 使用ad hoc检索就重构的query进行检索 。

 

查询重构可以通过 查询扩展 来完成,即使用一定的规则或监督分类器,在前面的回合中选择上下文信息添加到当前查询的词袋表示中。还可以通过 查询重写 来完成,利用自然语言生成模型直接将会话查询重写为去上下文的查询。TREC CAsT2019中表现最好的系统之一,其将之前和当前的查询输入进GPT-2,然后生成完全成熟的ad hoc queries。本文作者在其之前的论文中使用合成的弱监督数据进一步微调了GPT-2,提高了在少样本环境下查询重写的精度。

 

以上解决方案旨在 将会话查询重构为稀疏词袋空间中的ad hoc query,然后再利用稀疏检索模型如BM25、BERT reranker这些来进行检索 。在这样的设计下,因为额外的查询重构环节增加了错误来源,因此在这些会话检索系统中的 词汇不匹配问题更为严重 。而且,从经验上来看,使用自动查询重构的方法与使用手动Oracle查询重写的方法之间存在着显着的差异。

 

最近,密集检索在各种ad hoc搜索和开放域问答上显示出了很强的性能。与稀疏词表示不同,密集检索使用了预训练模型,比如BERT,将查询和文档编码到嵌入中,并单纯地只在密集空间中进行检索。经过微调,密集检索方法如DPR、ME-BERT和ANCE等其检索效果都显着优于稀疏检索。此外,学习一个有效的密集表示空间需要更多的相关标签,但是注意到很少有研究关注到 密集检索在少样本情境中的有效性 。

 

通过使用QuAC会话QA数据集,有研究者构建了一个会话搜索任务OR-QuAC,在该任务中其使用多来源问题作为查询,证据段落作为检索目标。OR-QuAC的合成性质导致了对话的所有相关段落都位于维基百科文档的同一部分,这与实际情景中的表现不符。但是,OR-QuAC提供了大量的合成标签,可以展示 完全监督密集检索在会话搜索中的优势 。

 

Methodology:

 

·会话式搜索:

 

该任务是在一个多轮会话Q={ } 中,根据每轮的查询从集合D中找寻出文档d。每一个会话查询 可以是上下文相关的、不相关的,并且需要更为复杂的查询理解技术,比如从以前的查询 中推断隐藏的上下文。针对该任务常见的解决方法是将对话式查询重构为一个去上下文化的、完全成熟的ad hoc query 。其中 要完全能够代表底层的信息需求。其中的重构可以通过查询扩展和查询重写来完成。查询扩展即为,从之前的查询中选择terms将查询 扩展为 。查询重写即为,使用生成模型如GPT-2直接生成目标查询

最近的会话搜索基准通常提供一个人工构造的Oracle ad hoc query ,该查询能够完全代表k轮次中的信息需求。这里的人工Oracle是一些有价值的监督信号,可以用来训练方程(1)中的查询重构模型。

 

在将会话查询重构为一个ad hoc query之后, 会话搜索问题就被改造为一个ad hoc搜索问题 。然后我们就可以使用 经典的检索-重排架构 了,比如使用BM25首先从集合D中检索前K个文档D*: (2)

 

然后使用BERT通过计算ranking score来对D*中的候选文档d进行排序。其中在BERT的[CLS]embedding上使用了一个MLP层,用来对重构查询 和文档d之间的连接进行编码。

将会话搜索查询重构为ad hoc搜索查询为会话搜索提供了一个飞跃,但是它也通过ad hoc 搜索限制了会话搜索系统的有效性,因为其并 没有利用多轮对话中的上下文来为下一次搜索提供经验 。在实际应用中,查询重构的使用步骤也并不完善,这也进一步降低了会话搜索的准确性。

·会话式密集检索:

 

与改造为ad hoc 检索不同,针对使用密集检索的会话搜索任务,ConvDR提供了一种端到端的解决方案。通常,ConvDR首先将会话搜索查询和文档映射到一个嵌入空间中:

然后通过简单的对查询embedding和文档embedding做 点积 来计算检索得分 (7)

 

由于检索函数只是一个简单的点积,因此模型主要容量在于 查询和文档编码器 中。在密集检索中,常使用BERT-Siamese/Dual-Encoder体系结构来对会话回合和文档进行编码。

这里使用了BERT[CLS]embedding来作为查询和文档的编码向量。同时,作者 将当前的查询与以前所有的查询串联到了查询编码器 ,这是在一个上下文化的embedding中捕捉信息需求的先决条件。

 

通过负对数似然(NLL)排名损失优化模型,使其学习面向检索的表示。

在重排阶段,不再使用查询重构的方法,而是 直接在所有查询 和文档d的连接上使用BERT

然后应用一个MLP层(方程4)来计算ranking score

 

·Few-Shot from Ad Hoc Teacher:

 

密集检索的一个关键问题是:密集检索模型需要 更多面向相关性的监督信号 才能保证其有效性(甚至在ad hoc 检索中也存在该问题)。在会话式搜索中,ConvDR需要根据当前和以往的查询来构建一个上下文化的查询表示,与编码一个ad hoc query相比, 计算上下文相关性需要额外的训练信号 。 此外,会话搜索比ad hoc 搜索更难积累相关性标签,会话搜索的信息需求也会更加复杂和个性化。

 

为克服这种限制,本文构建了一个teacher-student结构,通过从一个 ad hoc密集检索器中学习来提高ConvDR的少样本学习能力。对于一个手工的Oracle查询 ,使用ad hoc密集检索编码器 来编码得到查询嵌入 。具体遵循下面的teacher-student学习框架来获得ConvDR模型中的查询和文档的embedding:

这里作者使用了一个SOTA的ad hoc 密集检索器ANCE来作为teacher。在该teacher-student框架中引入了两个假设:1、手工Oracle 构造的查询 与会话查询 中的底层信息需求是一样的,因此他们的embedding是一样的2、在进行ad hoc检索和会话检索时,文档d中的有用信息是一样的,因此这两种场景中的文档embedding是可以共享的。遵循第一个假设,作者使用MSE损失函数从ANCE中知识蒸馏到ConvDR中。遵循第二个假设,作者将ANCE中的文档embedding继承到ConvDR。

 

知识蒸馏KD损失函数与多任务学习中的排名损失相结合。 (14)

 

为构建 中的负样本文档集合 ,检索了ANCE模型中对于Oracle查询 的排名靠前的负样本。

 

因此,该teacher-student训练,通过继承来自于ad hoc 密集检索的文档embedding和模仿人工Oracle查询的查询embedding, 减少了ConvDR对于大规模相关性标签的需要。 其中排名损失使用可用的会话搜索标签来监督ConvDR,而不是仅仅改造ad hoc 密集检索。

 

Experimental Methodologies:

 

·Datasets:

实验中使用三个会话检索基准:TREC CAsT2019&2020(包含有少量的TREC-quality的相关标签用于少样本学习)OR-QuAC(其搜索任务是合成的,但是包含有大量的标签,即有监督的)

 

TREC CAsT2019:提供了一系列用于会话检索的对话(主题)。其中有30个训练对话,20个测试对话。每个对话包含平均9-10个自然语言形式的查询。对话中的查询是手工构造的,来模仿某个主题的真实对话,其具有共同的自然语言特征,包括引用、缩写、省略。后面的查询通常之前的上下文相关。 它为所有的测试查询提供手动Oracle去上下文化的查询 ,并且为20个测试对话中的173个查询 提供相关性判断 。

 

TREC CAsT2020:包含25个验证对话,使用与2019相同的文档集。查询参考以前回合的系统响应的答案,使得数据集更加真实。其中加入了两个版本的基线系统返回的规范响应:使用手动查询重写的手动规范响应,和使用会话查询重写器查询重写的自动规范响应。 CAsT-20为所有的查询提供了手动重写查询,为大部分查询提供了相关性判断 。

 

OR-QuAC:是建立在会话QA数据集QuAC上的大规模合成会话检索数据集。在其中,雇佣各领域的工作者 对给定的维基百科实体及其描述进行多轮提问 ,最终合成一个 对话式 的QA任务。CANARD招募了多领域的工作者来手动地编写去上下文化的查询。该数据集从英文维基百科建立语料,使用包含明显答案的段落作为相关段落,并将其扩展到开放域检索。需要注意的是, 在该数据集中,对话主题中所有回合的答案段落都保证来自给定实体的维基百科页面,实体被添加到第一个对话回合 。

 

·Evaluation Metrics:

 

TREC CAsT上,使用MRR和[email protected](main)评价,此外还报告了average hole rate at cutoff10(排名前十的结果的得分没有进行判断)以此来显示评价的不确定性。

 

OR-QuAC上,使用[email protected][email protected][email protected]评价。

 

·Baseline:

 

两组baselines,一组是已经发布的研究模型,其中都使用问题重构和检索-排序这样的pipeline;一组是作者实现的。

 

在CAsT-19上作者首次引入了三个表现极好的系统:pgbert、h2oloo_RUN2和CFDA_CLIP_RUN7。

 

pgbert使用CANARD的手动重写来进行查询重写,使用Anserini BM25和BERT reranker;

 

h2oloo_RUN2在其BM25检索中添加主题标题,使用启发式来扩展查询,使用BERT进行重排;

 

CFDA_CLIP_RUN7添加了doc2query到h2oloo_RUN2中。

 

此外,在CAsT-19上引入两种取得SOTA的系统:RRF和Auto-Rewriter。

 

RRF融合了h2oloo_RUN2和神经转移重构(NTR)的结果。NTR使用了一个基于T5的查询重写器;

 

Auto-Rewriter作为自动查询重写器对GPT-2进行微调。其检索和重排使用经典的BM25-BERT结构。

 

在CAsT-20上,介绍了两种使用自动规范响应的性能极好的baseline:quretecQR和h2oloo_RUN2∗。

 

quretecQR利用QuReTeC模型来就要添加到当前查询中的历史查询terms进行分类;

 

h2oloo_RUN2∗使用启发式方法从系统响应中提取内容,并使用T5对查询进行排序。

 

在OR-QuAC上,作者与目前的SOTA模型ORConvQA进行对比。这是一个神经QA系统,其中包括一个密集检索器、一个重排器和一个读取器。密集检索器将当前与历史话语结合起来进行检索。

 

(以上是发布的模型,下面是作者自己实现的)

 

作者使用不同的检索模型实现了一些baseline,比如Anserini BM25、ANCE检索、BERT reranker,然后使用BERT reranker进行排序。输入进这些模型的查询可能是原始查询(RAW)、来自训练过的GPT-2的自动查询重写(Query Rewriter)和手动Oracle重写(Manual)。在CAsT-19上,训练GPT-2,使用Rule-based+CV方法训练基于规则的弱监督数据的查询重写器。在CAsT-20上,使用前一个查询的答案,在CANARD上训练GPT-2查询重写器。在OR-QuAC上,在其训练集上训练查询重写器。

 

·Implementation Details:

 

对于ConvDR和BERT reranker,作者进行了三种训练范式,还介绍了这两种模型的三个变体:KD、Rank、Multi-Task(两者的结合)。此外,还比较了它们只在ad hoc检索上训练的少样本学习变体(Zero-Shot)。

 

第一阶段检索使用开源的ANCE的检查点作为teacher。在CAsT上,使用MARCO段落在检查点进行检查(第600k步)。在OR-QuAC上,使用其在Natural Questions和TriviaQA上训练的Multi-Task检查点。此外,在训练集OR-QuAC上对ANCE不断训练,通过手动查询重写使模型适应该数据集。

 

所有的文档嵌入都是由ANCE编码的,并且在实验中固定使用。查询编码器是在ANCE中热身然后对其进行微调。针对CAsT-20数据不足,进一步在CANARD上对ConvDR模型进行了热身。将历史查询与当前查询连接起来,如果超过了256个token,则放弃前面的回合。在CAsT-20上,遵循自动规范设置,并将自动规范响应添加到前一个会话转换的查询之前。对于ConvDR(Rank)和ConvDR(Multi-Task)使用vanillaANCE通过手动查询重写来进行文档检索。

 

BERT Reranker:使用手动重构的查询,在MS MARCO段落和OR-QuAC任务上训练BERT reranker。然后使用相同的三种训练范式对BERT rankers进行微调,得到BERT (KD),BERT (Rank)和BERT (Multi-Task)。使用RRF将最好的BERT ranker和ConvDR的结果结合起来,得到BERT(RRF)。

 

Result:

 

五组实验:ConvDR的整体性能;少样本学习策略;学习到的查询表示;上下文建模的能力;案例研究

 

1、Overall Performance:

 

·Few-Shot Accuracy:

在CAsT上,ConvDR在第一阶段的检索中比所有的baseline表现都要好。相比BM25-Query Rewriter提高了68%、113%,表现了密集检索相比BM25稀疏检索的优势。因为直接将查询映射到嵌入空间中,而不是在稀疏空间中进行重构。使得ConvDR比ANCE-Query Rewriter性能更好也更简单。而且注意到ConvDR在该数据集上的的hole rates很高,这表明其性能可能被低估了。

 

ConvDR的性能与ANCE-Manual在CAsT-19上是相似的,这是很好的。后续的实验进一步研究了ConvDR如何在表示空间中模仿手动的Oracle查询,同时还有效地捕获了显着的上下文信息。

 

在CAsT-19上,ConvDR仅使用点积的性能就已经超越了最好的系统CFDA_CLIP_RUN7。(这是一个设计良好的系统,其实现了 SOTA的稀疏检索表现 和神经信息检索技术)

 

ConvDR在第一阶段检索的有效性可以通过BERT reranker将其转移到重排阶段。在CAsT-19上,ConvDR->BERT的表现优于查询重写的baseline。结合使用RRF的ConvDR的结果ConvDR->BERT (RRF),进一步优于之前的SOTA模型RRF(Reranking)(该SOTA模型使用来自CANARD的 额外查询重写监督信号 和更强大的预训练模型T5)。

 

在CAsT-20上,ConvDR->BERT比除了h2oloo_RUN2之外的所有baseline都表现得更好,h2oloo_RUN2使用了一个密集-稀疏混合检索模型,然后使用了一个强大的T5排序模型,其具有基于T5的查询重构。还观察到,在对密集检索候选集进行重排时,与第一阶段检索相比,自动-手动重排存在更大的差距。因此,密集检索上的重排还需要进一步的研究。

 

·Supervised Accuracy:

 

在OR-QuAC上,有大量可用的合成标签,全监督的ConvDR的性能比所有之前的方法都要高。 只在第一阶段检索时,ConvDR几乎将最好的系统ORConvQA reranker的准确率翻了一倍,ConvDR->BERT甚至优于ANCE-Manual->BERT-Manual。

 

但是在该数据集上带来的增益需要 谨慎考虑 , 因为合成数据包含各种各样的伪数据,这些伪数据过度简化了检索问题 。例如,对话框的所有相关段落在第一轮都来自实体的维基百科页面。然而,当我们有大规模的用户反馈信号时,当搜索引擎变成会话式,这些合成数据又可以帮助我们了解ConvDR的潜力。

 

·Efficiency:

对ConvDR的在线推理效率进行了测试,并且与稀疏方法进行了比较。在每个查询中,BM25和ANCE有着相似的延迟,但是查询重写明显比查询编码成本要更高。因为查询重写使用代价高昂的语言生成,其中token是逐个采样的,而编码是在每个查询中使用一次前向传递即可。

 

2、Effectiveness of Training Strategies:

 

实验中,研究了ConvDR和BERT Reranker在不同训练策略下的表现(表4),包括:Zero-Shot(在会话搜索上没有进行专门的训练),KD(只使用方程12MSE Loss),Rank(只使用方程10 ranking loss),Multi-Task(两损失结合)

·少样本情景下的有效性:

 

CAsT-19上,KD是唯一一种能够有效训练ConvDR模型的方法。 其他三种策略在CAsT-19上的表现都比普通的ANCE差。对于有相关性监督的训练,无论是单独在Rank中使用还是在Multi-Task中结合使用,都使得模型表现比Zero-Shot更差。考虑到目前的密集检索器需要大量的相关监督信号,否则其性能可能会比BM25差。因此 本文使用到的teacher-student少样本学习是必要的 。相比之下,BERT reranker似乎更加健壮,可以从TREC CAsT的标签中获益。结合KD损失,BERT (Multi-Task)可以达到最好的精度。

 

需要注意的是,在检索阶段,KD与ANCE-Manual最相近,可见ConvDR可以很好地模仿teacher的内容。

 

·监督的有效性:

 

利用OR-QuAC提供的大量训练信号,直接使用Rank进行训练,在ConvDR和BERT reranker上都可以取得很好的效果。

 

当与Multi-Task结合时,本文使用KD的teacher-student学习架构可以提供额外的信号,可以帮助ConvDR在OR-QuAC上取得最好的性能。

 

3、Learned Query Representations:

 

·查询embedding:

图3a:对于同一个查询,不同方法学习到的embedding间的平均相似度(点积)。

 

如设想的那样,ANCE-Raw和ANCE-Manual是完全不同的。ConvDR(Zero-Shot)和其他所有模型都不一样,包括ANCE-Raw。说明 直接将ad hoc 密集检索应用于多轮查询的连接上并不能产生有意义的embedding。 ANCE-QR类似于ANCE-MQ和ANCE-Raw。

 

自动查询重写介于原始查询和手动Oracle查询之间。 由于不需要重构一个新的查询,ConvDR(KD)在嵌入空间中通过端到端学习有效地逼近了ANCE-Manual 。

 

图3b:通过使用t-SNE绘制了对话主题进一步展示上述的这种效果。Zero-Shot embedding位于当前(Q6)和之前回合的原始embedding中间, 其将所有查询的连接处理为一个ad hoc查询从而可以产生平均嵌入 。ConvDR(KD)与当前查询Q6的距离与它的teacher MQ距离Q6的距离相同,但是KD的位置与之前的查询的距离更加平衡。说明与手动的Oracle查询不同, KD可以访问原始查询,并且可以捕捉之前回合的信息 。之后有具体的例子进行说明。

 

·文档embedding的相似性:

对查询嵌入的影响还会影响它们与相关文档的相似性。如图4a所示, KD具有最高的相似性,甚至高于MQ 。然而,与MQ相比,自动查询重写有着较低的相似性。(稀疏空间中模仿手工Oracle查询比在密集空间中更难。)

 

图4b中进行了embedding相关性的可视化,OS嵌入位于不相关文档中间,其他三个位置都更接近于相关文档。其中,ANCE-QR可能引入了一些偏差,其更偏向于相关文档的子集,导致重写的查询只能捕获一部分需求。相比之下, MQ和KD将查询放在了更靠近相关文档的位置。在表示学习中,这种统一的表示分布意味着有更好的泛化能力 。

 

4、Effectiveness in Capturing Contexts:

 

研究ConvDR学习 多轮会话 中的查询表示的能力。

 

·多回合的准确性:

作者首先根据模型每回合的检索精确度和会话回合间的查询相似度,研究了密集检索模型在不同会话回合中的行为。如图5a, ANCE的准确度随着会话的进行而下降 ,这与之前的会话搜索系统相同。后面会话回合中的查询更可能依赖于前面的回合,因此增加的推理空间、对话回合, 使得上下文依赖更难解决 。然而, KD在整个对话中保持其准确性 ,并且在所有回合中与MQ的执行相同。这进一步证实了 本文的少样本学习策略帮助ConvDR理解用户信息需求所需要的上下文信息 。

 

图5b也可以体现出 ConvDR更好的查询理解能力 ,KD的查询表示在相邻的回合中更加相似,这表明了在嵌入空间中进行会话转换时的平滑过渡。相比之下,去上下文化的手动查询MQ关联较少。在会话过程中, 自动重写的查询嵌入变化更大。这说明添加查询重写会引入新的错误源,直接学习上下文化的查询嵌入更加有效 。

 

·对之前对话回合的依赖性:

为了研究ConvDR模型在前面的回合中如何对上下文进行建模,作者进行了入侵测试,在会话中随机丢弃掉前一个回合,跟踪 查询嵌入前后的变化 。将这个 变化 与丢弃turn和当前turn的手动Oracle查询间的术语重叠 term overlap 进行比较,term overlap可以代表被丢弃回合中上下文的重要性。结果如图6,OS受其影响最小,因为其不能获取更多的情景信息,删除前一个回合也不会让其变得多糟糕。ANCE-QueryRewriter受其影响比较严重, 因为语言生成模型是脆弱的,输入的微小变化都可能导致输出的巨大差异 。

 

在嵌入变化与上下文回合和手动Oracle间的术语重叠间,KD表现出了平滑的相关性。 其学习捕捉重要的上下文(high term overlap),更少关注不相关的上下文。因此其对于嵌入变化很微妙,很多查询嵌入改变了,但大多数只改变了一点点,表现了其对于上下文移除的鲁棒性。 情境术语可能出现在多个前一个回合中,有效的模型应该能够使用重复的情境来从删除一个回合中恢复过来。同时发现,在该入侵测试中,ConvDR (Multi-Task)具有更多的变异,说明有限的相关标签的排名损失是不可靠的。

 

5、Case Study:

在case1中,原始查询并不明显地依赖于上下文,它本身可以是一个ad hoc查询。手动oracle构造的查询与原始查询相同。然而,缩写“ACL”是模糊的,通过使用前面的会话转换进行编码, ConvDR正确地消除了它的歧义 。

 

Case2是典型的由自动查询重写器造成的 共引用错误 。ConvDR正确地在其潜在空间中识别正确的上下文,并检索正确的段落。

 

最后一种情况很有趣,因为它反映了自动查询重写器的“保守”行为。当它不能解决上下文依赖时,便倾向于重复原始查询。通过对前面的所有会话回合的建模, ConvDR提供了一个更有意义的查询表示,如分数下降所示,通过更多地关注会话第一轮,并在检索中捕获突出的上下文术语“Darwin” 。

 

Conclusion:

 

在本文中,作者提出了一个会话密集检索器——ConvDR,它完全在密集嵌入空间中进行会话搜索的第一阶段检索。作者提出了一个few-shot策略,训练ConvDR的查询编码器模仿从一个训练良好的ad hoc密集检索器中得到的手动oracle查询embedding。我们在TREC CAsT和OR-QuAC上的实验表明,ConvDR在第一阶段检索中达到了最先进的性能。详细的分析表明,这种简单方法可以在few-shot会话搜索设置中更好地从之前的会话转向中获取突出的上下文信息,并极大地提高在线延迟。

Be First to Comment

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注