PaddlePaddle / RocketQA

🚀 RocketQA, dense retrieval for information retrieval and question answering, including both Chinese and English state-of-the-art models.
Apache License 2.0
767 stars 128 forks source link

关于DuReader-Retrieval-Baseline的疑问 #30

Closed Ywandung-Lyou closed 2 years ago

Ywandung-Lyou commented 2 years ago

您好! 我读了RocketQA的原文,发现RocketQA介绍的是关于dual-encoder的训练(即RocketQA/research/DuReader-Retrieval-Baseline中的step 1)。请问RocketQA/research/DuReader-Retrieval-Baseline中的step 2 cross-encoder是通过给同一个PTM(比如BERT)输入query和passage的拼接文本作为输入,输出是表示匹配程度的值来训练的吗?如果是,step 2的TRAIN_SETdureader-retrieval-baseline-dataset/train/cross.train.demo.tsv,是不是就是用step 1训练的模型所过滤出的最匹配的50个passage?

quyingqi commented 2 years ago

你的理解基本没有问题~ RocketQA原文中主要优化的是dual-encoder,其中也涉及到了cross-encoder的训练(论文Figure 3的step2)。DuReader-Retrieval-Baseline中的step2和论文中的这步基本相同。 step2的TRAIN_SET是用step1训练得到的dual-encoder进行检索,从召回结果的top50中随机采样负例构造得到的。