
摘要
机器阅读理解(Machine Reading Comprehension, MRC)是一项人工智能挑战任务,要求系统基于给定文本段落,准确判断并回答相关问题。MRC系统不仅需要在有答案时作出正确回应,还需在段落中无法找到答案时识别出“无答案”情形,并恰当地选择不作答。当任务涉及无法回答的问题时,除了作为核心组件的编码器(encoder)外,系统还需引入一个关键的验证模块——验证器(verifier)。尽管当前MRC建模的最新趋势仍主要依赖于预训练语言模型作为编码器,且仅聚焦于“阅读”能力的提升,但本文致力于探索在存在不可回答问题的MRC任务中更优的验证器设计。受人类解决阅读理解问题方式的启发,本文提出一种名为“回顾式阅读器”(Retrospective Reader, Retro-Reader)的新模型,该模型融合了两个阶段的阅读与验证策略:第一阶段为“粗略阅读”(sketchy reading),快速分析段落与问题之间的整体语义关联,生成初步判断;第二阶段为“精读验证”(intensive reading),对候选答案进行深入验证,并输出最终预测结果。所提出的Retro-Reader在两个主流MRC基准数据集SQuAD2.0和NewsQA上进行了评估,取得了新的最先进(state-of-the-art)性能。显著性检验结果表明,该模型在统计上显著优于强基线模型ELECTRA和ALBERT。此外,本文还开展了一系列深入分析,以解释所提出阅读器在性能提升方面的有效性与内在机制。
代码仓库
jinmang2/RetroReader
pytorch
cooelf/AwesomeMRC
官方
pytorch
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| question-answering-on-squad20 | Retro-Reader (ensemble) | EM: 90.578 F1: 92.978 |
| question-answering-on-squad20 | Retro-Reader on ELECTRA (single model) | EM: 89.562 F1: 92.052 |
| question-answering-on-squad20 | Retro-Reader on ALBERT (ensemble) | EM: 90.115 F1: 92.580 |
| question-answering-on-squad20 | Retro-Reader on ALBERT (single model) | EM: 88.107 F1: 91.419 |