©作者 | 刘璐
学校 | 北京邮电大学
研究方向 | 问题生成与QA
论文标题:
Phrase Retrieval Learns Passage Retrieval, Too
论文来源:
EMNLP 2021
代码链接:
https://arxiv.org/abs/2109.08133
代码链接:
https://github.com/princeton-nlp/DensePhrases
Abstract
在许多 NLP 场景中,稠密检索相比于稀疏检索展示出更好的前景。片段(phrase,代表文档中单词数量不超过定值的任意连续文本片段,包括单个单词)作为最细粒度的检索单元,可以直接当作问答、槽填充任务的输出,因此稠密片段检索十分具有吸引力。本文探究了片段检索是否可以作为更粗粒度检索(段落或文档)的基础。
实验表明一个未经重新训练的稠密片段检索系统可以提升段落检索的准确率,同时也可优化端到端 QA 的表现。本文对此现象进行了解释,即与段落级别的监督相比,片段级别的监督有助于更好地学习细粒度的限定。此外,本文表明片段检索可以在实体链接和基于知识的对话等文档检索任务中获得有竞争力的性能。此外,作者还使用片段过滤和向量量化来减少索引的内存占用,使密集片段检索成为多粒度检索中一个实用而通用的解决方案。
Introduction
稠密检索在一系列知识密集型 NLP 任务上的表现超越了稀疏检索。稠密检索方法在设计时需考虑检索单元的设置,如 DPR 将包含 100 个词语的段落作为基础检索单元。近期一些工作(Real-time open-domain question answering with dense-sparse phrase index, ACL 2019)提出可以将片段作为检索单元,并有相关工作(Learning dense representations of phrases at scale, ACL 2021)表明片段的稠密检索(DensePhrases)在 OpenQA 和槽填充任务中可获得有竞争力的性能,这些工作值得我们关注的原因是片段可以直接作为输出,这省去了使用额外的阅读器来处理检索段落的步骤。
片段作为对应文本上下文的一部分,通过对上下文的编码进行表示。如果检索器可以定位片段,那我们能否直接利用其进行段落或文档的检索呢?本文定义了基于片段的段落检索,段落的分数由段落内片段的最高分决定。
通过评估,DensePhrases 无需调整直接应用于段落检索,就可以取得与 DPR 相比可竞争甚至更好的性能,当 k 较小时,top-k 精度的提高尤其明显,这也使提升了在给生成式阅读模型输入少量段落的情况下 OpenQA 的准确率。
作
者对此现象进行了充分分析,并
进一步探索片段检索是否可以扩展至更粗粒度的检索或应用于其他 NLP 任务
。
通过对查询编码器进行微调,模型能够在
KILT
基准上的实体链接和基于知识的对话检索任务上获得具有竞争力的性能。
此外,作者还
使用片段过滤和向量量化来减少索引的内存占用
,使密集片段检索成为多粒度检索中一个实用而通用的解决方案。
Phrase Retrieval for Passage Retrieval
片段自然有其被提取的源文本,基于此事实,本文定义了一种简单的基于片段的段落检索策略,即段落的分数由段落内片段的最高分决定:
具体做法为:首先检索少量的片段,计算每个段落的分数,并返回前 k 个段落。分数合并的计算开销可忽略,基于片段的段落检索的推理速度与片段检索相同,因此十分高效。
本文在 NQ 和 TriviaQA 上进行了实验,使用 Top-k(前 k 个检索段落中至少包含一个黄金答案的问题的比例)、MRR@k(在前 k 篇段落中,第一篇相关段落的排名倒数平均值)、P@k(在前 k 个检索段落中相关段落所占比例的平均值)作为评估指标。
使用 DensePhrases 检索段落作为近期提出的 FiD 生成式阅读模型(Leveraging passage retrieval with generative models for open domain question answering, EACL 2021)的训练数据来实现 OpenQA。
A Unified View of Dense Retrieval
此部分对 DPR 和 DensePhrases 的训练目标进行了比较并解释了 DensePhrases 是如何学习段落检索的。
DPR 和 DensePhrases 均使用对比损失进行训练,负样本的选取至关重要。
批内负样本:由于批次内段落是从训练集中随机采样构成的,批内的负样本通常是主题负的,也就是说,模型可以只根据主题区分正负样本。
困难负样本:尽管主题相关特征在识别广泛相关的段落时很有用,但它们往往缺乏在语料库中找到包含答案的准确段落的精确性。DPR 使用具有较高 BM25 词汇重叠却不包含答案的段落作为困难负样本来促使 DPR 学习更细粒度的特征从困难负样本中找到正样本。与之相比,DensePhrases 可使用段落内负样本作为困难负样本,即出现在同一段落中但却不是答案的片段。作者假设基于片段的段落检索可能是从这种片段级监督中得到收益的。
Improving Coarse-grained Retrieval
前文表明 DensePhrases 可能不适用于主题比细粒度隐含线索更重要的检索任务,如应用于实体链接的文档检索。针对此问题,作者提出一种简单的方法来调整 DensePhrases 模型。
调整 DensePhrases 中的查询端精调模块,由于在建立索引后调整片段表示不太现实,因此选择对查询编码器进行精调。选择损失为:
经过精调,模型被进一步训练来检索包含在相关文档中的任何片段。
DensePhrases as a Multi-Vector Passage Encoder
DensePhrases 使用一系列片段向量来表示段落,这与多向量段落编码的思想类似。而之前工作使用固定数量的向量或 token 级别的向量表示文档,DensePhrases 则使通过过滤片段(二元分类器实现,答案标注作为监督)用动态数量来表示段落。
多向量段落编码的瓶颈在于多个向量作索引带来的存储压力。本文在保证性能的基础上引入基于量化的方法来降低内存占用。
Conclusion
本文证明了片段检索模型可以在不作任何修改的情况下学习段落检索,并通过与 DPR 训练目标的比较对此进行了解释。此外,DensePhrases 可以被精调用于更粗粒度的检索单元的检索。
片段检索器其实类似于闭卷式 QA 生成模型,在模型参数中存储知识来直接回答问题。本文思路与 Generation-Augmented Retrieval for OpenQA(ACL 2021)类似,均是通过对真实答案(或相关上下文)的检索(片段检索器)或生成(闭卷式 QA)为检索模型引入额外的知识以提升其性能。由于答案在这里只作为辅助文本,因此即使不准确但只要与检索内容相关即可提升检索性能。
感谢 TCCI 天桥脑科学研究院对于 PaperWeekly 的支持。TCCI 关注大脑探知、大脑功能和大脑健康。
如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。
总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。
PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析、科研心得或竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。
📝 稿件基本要求:
• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注
• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题
• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算
📬 投稿通道:
• 投稿邮箱:hr@paperweekly.site
• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者
• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿
△长按添加PaperWeekly小编
🔍
现在,在「知乎」也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」订阅我们的专栏吧