BERT在文档级排序中的应用
简介
近年来 BERT 的出现,让预训练模型在各大自然语言处理任务上实现了屠榜。但是由于 BERT 模型本身的设计,使其在处理长度大于 512 个 token 的文本时面临着一些挑战。所以直接将 BERT 应用于文档级排序(document ranking)任务存在一定的困难,具体来说主要体现在以下两个方面:
训练阶段,我们尚不清楚要向模型提供什么形式内容。关键问题是在文档级别的数据集提供了用于文档排序的相关性判断(例如 TREC 集合),即它们是整个文档的注释。显然,对“相关”的判断来自包含“相关内容”的文档,但是未知该内容如何在整个文档中分布。
推断阶段,如果文档太长而无法全部输入 BERT,我们必须决定如何预处理文档。我们可以将其分段,但是有很多设计选择:例如,使用固定宽度的跨度还是诸如句子之类的自然单位?此外,对文档中的不同片段完成推断仍然需要一些聚合分数的方法。
Birch:基于句子的文档级排序
Birch [1] 针对上述两个问题的解决方案可以总结如下:
通过利用不存在长度问题的数据进行训练,然后将这些相关性匹配模型迁移到目标域/任务中,从而完全避免训练问题。 对于推段问题,将估计文档相关性的任务转换为估计单个句子的相关性的任务,然后汇总结果分数。
BERT 具有强大的 zero-shot 跨域相关性分类能力。也就是说,我们可以使用来自一个域的相关性判断来训练 BERT 模型,并将该模型直接应用于不同域中的相关性分类,并实现高水平的有效性。
文档中评分最高的句子的相关性得分可以很好地代表整个文档的相关性。换句话说,似乎可以通过仅考虑几个最重要的句子来准确地估计文档级别的相关性。
BERT-MaxP:基于段落分数聚合的文档级排序
BERT-MaxP [2] 针对上述两个问题的解决方案可以总结如下:
对于训练阶段,作者将文档分割成重叠的段落(passage):将相关文档中的所有段落视为相关,将不相关文档中的所有段落视为不相关。 对于推理阶段,以相同的方式分割文档,估计每个段落的相关性,然后对段落相关性分数进行简单汇总,以得出文档相关性分数。
BERT–MaxP:使用最大的段落级相关分数作为文档级相关分数。
BERT–FirstP:使用第一段的段落级相关分数作为文档级相关分数。
BERT–SumP:使用全部的段落级相关分数和作为文档级相关分数。
简单将所有段落相关分数中的最大值作为文档相关分数效果不错。
BERT 可以利用信息需求的丰富语言描述(包括非内容词)来估计相关性,这与以前的关键字搜索技术有所不同。
PCGM:基于段落分数累积的文档级排序
作为 BERT–MaxP 的扩展,PCGM [3] 考虑了在训练时对段落级别相关性判断进行分级是否可以得到更有效的排名。针对这一问题,作者在中文新闻语料库中标注了段落级别的累积收益,定义为读者阅读文档至指定段落后会积累的相关信息量。该工作将自然段作为段落。因此,根据定义,文档级别的累积增益是最高的段落级别的累积增益。
基于这些人类注释,作者发现了以下结论:
平均而言,高度相关的文档要比其他类型的文档更长,无论是段落数还是单词数。 文档级别的累积增益越高,用户在通过段落级别的累积增益达到文档级别的累积增益之前需要阅读的段落越多。
这些发现表明,可以从最相关的段落中准确地预测文档是否相关,这与 BERT–MaxP 和 Birch 以及上面引用的用户研究一致。但是,为了准确地区分不同的相关性等级(例如,相关性与高度相关性),模型可能需要积累来自多个段落的分数,这表明 BERT–MaxP 可能不够。直观上,观察多个段落的重要性与整个文档中积累的相关性信息有关。
为了利用其段落级别的相关标签,作者提出了 PCGM 模型,该模型首先应用 BERT 获得单独的查询-段落表示(即 [CLS])。然后,将查询-段落表示的顺序输入 LSTM 进行汇总,并对模型进行训练以预测每个段落的收益。作者将之前段落的预测增益的嵌入与查询段落的表示形式相连,以完成模型。
PARADE [4] 是一系列模型,可以将长文本分成多个段落,并对每个段落的 [CLS] 表示形式进行汇总。具体来说,PARADE 将长文本分割为固定数量的固定长度的段落。当文本包含较少的段落时,将在表示聚合过程中对段落进行填充和屏蔽。当文本包含更多段落时,始终保留第一个和最后一个段落,而其余段落将被随机采样。连续的段落部分重叠,以最大程度地减少将相关信息与其上下文分离的机会。
作者提出了四种将一串段落表示聚合为文档表示的变种,具体如下:
对段落表示进行平均池化:
对段落表示执行最大池化:
通过使用前馈网络为每个段落生成注意力权重,计算段落表示的加权平均值:
使用两个随机初始化的 transformer 编码器的小堆栈来聚合段落表示,这些编码器将段落表示作为输入。与 BERT 相似,[CLS] 被添加到传递给 transformer 编码器堆栈的通道表示之前;但是,没有 [SEP] 来终止序列。最终 transformer 编码器的 [CLS] 输出表示用作文档表示:
前三种方法将段落表示的每个维度视为独立特征。在所有情况下,最终文档表示都被馈送到具有两个输出节点的全连接层,然后再馈入 softmax 以产生最终相关性得分。
总结
参考文献
[1] Z. Akkalyoncu Yilmaz, W. Yang, H. Zhang, and J. Lin. Cross-domain modeling of sentence-level evidence for document retrieval. In Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing (EMNLP-IJCNLP), pages 3490–3496, Hong Kong, China, 2019.
[2] Z. Dai and J. Callan. Deeper text understanding for ir with contextual neural language modeling. In
Proceedings of the 42nd International ACM SIGIR Conference on Research and Development in Information Retrieval, pages 985–988. ACM, 2019b.
[3] Z. Wu, J. Mao, Y. Liu, J. Zhan, Y. Zheng, M. Zhang, and S. Ma. Leveraging passage-level cumulative gain for document ranking. In Proceedings of The Web Conference 2020 (WWW 2020), pages 2421–2431, 2020b.
[4] C. Li, A. Yates, S. MacAvaney, B. He, and Y. Sun. PARADE: Passage representation aggregation for document reranking. arXiv:2008.09093, 2020a.
更多阅读
#投 稿 通 道#
让你的论文被更多人看到
如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。
总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。
PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学习心得或技术干货。我们的目的只有一个,让知识真正流动起来。
📝 来稿标准:
• 稿件确系个人原创作品,来稿需注明作者个人信息(姓名+学校/工作单位+学历/职位+研究方向)
• 如果文章并非首发,请在投稿时提醒并附上所有已发布链接
• PaperWeekly 默认每篇文章都是首发,均会添加“原创”标志
📬 投稿邮箱:
• 投稿邮箱:hr@paperweekly.site
• 所有文章配图,请单独在附件中发送
• 请留下即时联系方式(微信或手机),以便我们在编辑发布时和作者沟通
🔍
现在,在「知乎」也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」订阅我们的专栏吧
关于PaperWeekly
PaperWeekly 是一个推荐、解读、讨论、报道人工智能前沿论文成果的学术平台。如果你研究或从事 AI 领域,欢迎在公众号后台点击「交流群」,小助手将把你带入 PaperWeekly 的交流群里。