赞
踩
WSDM'21
为 ad-hoc 检索定制的预训练目标还没被很好地探索。我们为ad-hoc检索提出 Pre-training with Representative words Prediction(PROP)。PROP的灵感来自于IR的经典统计语言模型,尤其是查询似然模型,其假定:文档作为“理想”文档的代表文本片段被生成。
给定一个输入文档,我们根据文档语言模型采样一对词集,其中可能性较高的词集被认为更具有文档的代表性。然后,我们对Transformer模型进行预训练,以预测两个词集之间的成对偏好,并结合掩码语言模型(MLM)目标。通过进一步在多种有代表性的下游 ad-hoc 检索任务上进行 fine-tune,PROP在不进行预训练或使用其他预训练方法的情况下,比 baseline 取得了显著的提升。我们还展示了PROP在零资源和低资源IR设置下都可以达到令人兴奋的性能。
尽管预训练模型在IR上有很好的的性能,但是为 ad-hoc 检索定制的预训练目标还没有很多研究。
一方面大部分源于NLP的预训练目标可以分成两类:
另一方面,IR任务比如 ad-hoc 检索通常处理短查询和长文档,不只是需要理解查询和文档的文本内容,还需要对二者的相关关系进行建模。
当我们从IR的角度来看这些现有的预训练目标时,我们可能会发现:
一般假设使用更接近下游任务的预训练目标可以获得更好的微调性能。
前面也有过针对 ad-hoc 类似的工作,在这一方向上最相关的工作关注QA中的段落检索,其中提出的三种预训练任务都是尝试模拟自然语言问题与回答片段之间的相关关系。
本文,我们希望提出一个为 IR 定制的新颖的预训练目标,更接近在ad-hoc检索中的查询与文档间的相关关系。想法受传统统计语言模型启发,尤其是查询似然模型。查询似然模型假设查询作为“理想”文档的代表文本片段被生成。基于贝叶斯定理,在给定的文档语言模型下,在一定的先验假设下,查询与文档之间的关联关系可以用查询似然近似表示。给定一个输入文档,我们根据文档语言模型采样一对词集,该文档语言模型由一个流行的多项式unigram语言模型定义,使用了Dirichlet prior smoothing。高可能性的词集被认为对文档更有代表性。之后我们训练 Transformer 模型来在两个词集间预测成对的偏好,同时也使用MLM目标。PROP核心优点是:立足与一个IR很好的理论基础,不需要任何特殊的文档结构(超链接等)就可以在大规模的文本语料库上进行普遍训练。
本文贡献:
查询似然模型:给一个查询 Q = q 1 , ⋯ , q m Q=q_1,\cdots,q_m Q=q1,⋯,qm 和文档 D = w 1 , ⋯ , w n D=w1,\cdots,w_n D=w1,⋯,wn,我们有
文档对于一个查询的相关性 P ( D ∣ Q ) P(D|Q) P(D∣Q) 可以通过查询似然 P ( Q ∣ θ D ) P(Q|\theta_D) P(Q∣θD) 来估计。
假设一个多项语言模型,我们可以通过独立生成每个单词来生成单词序列,查询似然可以写成:
Dirichlet先验平滑(对关键词查询很有效):
**Representative Word Sets Sampling:**给定一个文档,我们根据文档语言模型采样一对词集,每个都当做一个生成的伪查询。为了模拟[1,3]中各种恶样的查询长度,我们首先用了一个 泊松分布来采样一个正整数 l l l 作为词集的 size,定义为:
然后,通过文档语言模型并行采样两个大小相同的词集 S 1 , S 2 S_1,S_2 S1,S2。 l l l 个词被从语料库词汇 V = { w i } 1 N V = \{w_i\}^N_1 V={wi}1N中 独立采样。
**Representative Words Prediction(ROP):**给定上面采样的一对词集,我们使用公式(2)计算每个集合的可能性,高可能性被认为对文档更有代表性。然后,预训练模型来预测两个词集之间的成对偏好。
将词集 S S S ,文档 D D D 连接成一个输入序列,添加特殊定界toke([CLS] + S + [SEP] + D + [SEP]),放入Transformer 中。序列中的每个词都被表示为 分布 embedding,segment embedding,位置 embedding 的和。[CLS] 隐藏层状态被表示为:
最后, P ( S ∣ D ) P(S|D) P(S∣D) ,代表词集对文档多具有代表性,通过在 H [ C L S ] H^{[CLS]} H[CLS] 应用 MLP 来得到。
现在,将一对词集和对应的文档作为一个三元组 ( S 1 , S 2 , D ) (S_1,S_2,D) (S1,S2,D),假设 S 1 S_1 S1 得分更高,ROP任务可以写成典型的成对 loss(hinge loss)来预训练:
**Masked Language Modeling(MLM):**PROP除了成对偏好预测目标外,还将 MLM 作为预训练目标之一:
提出的预训练模型 PROP 与IR中的弱监督方法[2,10,21]可能存在一定的混淆,这些方法也利用一些经典模型(如BM25)来训练神经排序模型。事实上,有三个主要的不同。
对于弱监督方法:
对于 PROP:
在预训练目标中,PROP中的 ROP 目标属于基于模型的预训练目标范畴,其中标签是通过某些自动的模型生成的,而不是统建简单的 MASK。
预训练数据:用了 English Wikipedia 和 MS MARCO Document Ranking dataset,因此分别训练出了两个模型 P R O P W i k i p e d i a , P R O P M S M A R C O PROP_{Wikipedia}, PROP_{MSMARCO} PROPWikipedia,PROPMSMARCO。
下游任务数据:
用了三种 baseline 方法来进行比较,包括:传统检索模型,预训练模型,以前的 SOTA 神经排序模型
用了 5-折交叉验证来保证在不减少学习实例数量的情况下最小化过拟合
两种度量:nDCG 和 precision
用了 Transformer encoder 架构,与 B E R T b a s e BERT_{base} BERTbase 类似:12层,hidden size=768,前向层size=3072,nheads=12,总参数量 110M。
代表词集采样时,区间 λ \lambda λ 的期望设成 3。为了避免采样频繁词,使用 INQUERY stop list 来实施 stopwords 移除,丢弃出现次数少于50次的单词,使用 W o r d 2 V e c 6 Word2Vec^6 Word2Vec6 建议的 1 0 − 5 10^{-5} 10−5 采样阈值的频繁词子采样。对每个文档采样5对词集。
对于代表词预测,我们将预训练的文本小写化,不执行词干或停止单词删除。由单词集和文档连接的单个输入序列被送给PROP。
对于 masked language modeling,遵循 BERT 的设置。
为了提高计算效率,我们采用了重排序策略。初始检索先获取到前200名的文档,然后用 PROP 来 re-rank 这些候选文档。
对所有预训练模型,输入都是原始文本,原因是在微调阶段,使用标准的停止词删除和词干化将损害这些预训练模型的性能,因为它与预训练过程不一致。
我们研究了不同预训练目标的影响。我们使用 ROP 和 MLM 在与 PROP 相同的设置下在 MS MARCO 上训练 Transformer 模型。
我们比较了基于文档语言模型的采样策略和随机采样策略。
以上结果表明,基于文档语言模型的采样策略是一种比随机采样策略更适合生成文档代表性词集的方法。
我们分析在目标任务的文档集合上进一步预训练的影响,看看性能可以提高多少。
在 Robust‘04和MQ2007上进一步训练 P R O P W i k i p e d i a PROP_{Wikipedia} PROPWikipedia,在 剩下三个数据集上进一步训练 P R O P M S M A R C O PROP_{MSMARCO} PROPMSMARCO
结果表明,在相关领域语料库上进行进一步的预训练可以提高PROP的能力,并在下游任务中取得更好的表现。
为了模拟 low-resource IR设定,我们选了 Robust04,ClueWeb09-B,Gov2的前10,30,50,70个查询,MQ2007,MQ2008来fine-tune P R O P W i k i p e d i a PROP_{Wikipedia} PROPWikipedia。
我们提出了一种新的用于 ad-hoc 的预训练方法PROP。关键思想是对Transformer模型进行预训练,结合MLM目标来预测给定文档的两个词集之间的成对偏好。PROP只需要预先训练一个模型,然后对各种下游的ad-hoc任务进行微调。
BFS和WLP依赖于特定的结构(多段落,超链接),阻碍他们扩展到普遍的文本语料库上。上面这些方法都想近似自然语言问题和答案段落的相关关系,但是用在ad-hoc任务上提升很少。
关于 segment embedding的问题:为什么有了分割符,还要加 segment embedding来区分句子呢?用分隔符区分不就好了吗?
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。