百度RocketQA系列搜索技术论文解析(三)
传统的搜索通常将召回和精排两个阶段分开进行,本文提出了一个联合训练模型,将召回模型(Retriever)看做精排模型(Re-ranker)的蒸馏,从而将两个模型一起联合训练。并据此想法提出了名为动态列表蒸馏(dynamic listwise distillation)的方法,来适应排序模型与传统模型的不同。另一方面,在RocketQA的数据增强手段基础上,提出了混合数据增强的方法。最终实验结果表明,RocketQAv2在召回和精排两个模型上都达到了state-of-art的效果。
研究问题:
- 如何将召回模型和精排模型联合训练:传统模型的联合训练通常依靠参数共享、加权联合loss等方式进行,但是召回模型与精排模型有着不同的训练范式。一般而言,召回模型采用listwise的方式进行训练,每个batch内对每一个query进行尽可能多的负采样,而精排模型一般采用pointwise或者pairwise的方式进行训练,batch内只对query进行一个采样或者一对正负采样。
提出方案;
-
动态列表蒸馏(dynamic listwise distillation):针对精排模型(Re-ranker),每个batch内,对query采样一个正样本和一组负样本,采取有监督多分类的loss进行优化;针对召回模型(Retriever),将召回模型看做精排模型的蒸馏,采用KL散单对召回模型进行优化。
-
混合数据增强(hybrid data augmentation):训练过程中,为了得到尽可能多的伪标注数据,使用RocketQA的召回模型对语料生成大量伪标注数据,在其中采用RocketQA的精排模型对生成的伪标注数据进行降噪(仅采用得分非常高的正例和得分非常低的负例),混合使用未降噪伪标注数据和降噪的未标注数据。
-
训练过程:采用训练好的RocketQA的召回模型(Retriever)和精排模型(Re-ranker)对RocketQAv2的模型进行初始化,使用上述混合数据增强策略与基于KL散度的动态列表蒸馏Loss对模型进行fine-tuning。
实验及结论:
- 同样在MSMARCO和Natural Questions数据集上进行实验,效果超过RocketQA。
Reference
[1] RocketQA: An Optimized Training Approach to Dense Passage Retrieval for Open-Domain Question Answering
[2] PAIR: Leveraging Passage-Centric Similarity Relation for Improving Dense Passage Retrieval
[3] RocketQAv2: A Joint Training Method for Dense Passage Retrieval and Passage Re-ranking
- 点赞
- 收藏
- 关注作者
评论(0)