Comment: EMNLP 2020
一句话总结
任务:开放域问答中的retriever,从海量文本中选出与问题接近的文本。
方法:采用正负样本对对比学习的方法,使得相关问题与文本对拉近,不相关的拉远。并将计算的问题与正样本之间的相似度矩阵存储起来,用于后续reader从中提取答案。
abstract
open-domain question answering依赖于有效的文章检索去选择候选文本,传统的离散向量空间方法比如TF-IDF,BM25。在这项工作中,我们证明可以单独使用密集的表示实现检索,在这种情况下,通过简单的双语编码框架从少量的问题和段落中学习了嵌入。
introduction
open-domain question answering从大量文本中检索出答案,包含简化的两个部分框架:
1) context retriever 选出一些包含了答案的段落
2)reader 深入检查这些段落给出具体的答案。
尽管这是一个合理的策略,但在实践中性能急剧退化,表明需要改善检索的需求。
retriever常用的方法是TF-IDF orBM25,用Index高效地匹配关键词,将文本和问题表示为一个高维稀疏的向量。
但在实际中,由完全不同的标记组成的同义词或释义仍然可以映射到彼此接近的向量。稠密的retrieval可以做到,传统的却不能。如原文中提到的例句。dense encoding可以很好地匹配问题中的bad guy”和文本中的“villain“.传统的高维稀疏向量却难以处理。
然而,一般认为学习一个好的密集向量表示需要大量的问题和上下文的标签对。而且之前“Dense retrieval methods”并没有胜过TF-IDF/BM25在开放域QA中。直到ORQA模型的出现。该模型提出了一个复杂的反完形填空任务ICT,预测被Mask掉的句子块当做额外的预训练任务。“question encoder and the reader model”然后使用问题和上下文对微调,虽然这个方法实现了开放域问答的新sota但有两个缺点:一个是那个额外的预训练任务是计算密集型的,我们不完全清楚regular sentences是不是能很好地替代目标函数中的问题;二是context encode 没有用问答对进行微调,其表现可能是次优的。(这里举例了一个方法,谈了他的缺点)
“can we train a better dense embedding model using only pairs of questions and passages (or answers), without additional pretraining” 而是只利用现有的标准BERT预训练模型和双编码器结构。专注于使用small数量的问答对制定更好的训练计划。
通过一系列仔细的消融研究,我们的最终解决方案出乎意料地简单:embedding优化方法为:最大化question和相关文本向量的内积,并客观地比较一批中所有问题和文本对。
我们的方法胜过了BM25 和前文提到的ORQA模型
贡献:
我们证明了通过合理的训练设置,简单的微调问答对encoder也能胜过BM25;
同时证明了类似ORQA那样的额外与训练步骤不一定需