论文笔记 | Adversarial Examples for Evaluating Reading Comprehension Systems
作者:孙嘉伟
单位:燕山大学
文章目录
- 前言
- 一、解决的问题
- 二、对抗数据生成方法
- 三、实验分析
前言
这篇论文具有重要地位,在EMNLP 2017年期刊上发表,并被视为该领域开创性工作的重要成果;作者是 Percy Liang 和 Robin Jia。
论文地址:https://arxiv.org/pdf/1707.07328.pdf
代码地址:https://github.com/robinjia/adversarial-squad
一、解决的问题
探讨的核心问题是阅读理解模型如何容易受到对抗样本的攻击。文章采用了经典的SQuAD1.0数据集作为其研究的基础。
首先介绍一下SQuAD数据集,SQuAD数据集可被视为由< q c a >三元组构成的集合,其中 q 代表提问的问题 c 代表文本内容 a 则是与该问题相关的具体答案,即与 c 中的内容相关联的答案.模型需基于文本内容 c 进行分析以解答相应的问题 q 而 a 即为基于 < q c >生成的有监督训练标签.
例如:通过以下案例我们可以直观地了解阅读理解模型遭受对抗样本攻击的过程:

在如图所示的页面中,黑体显示的内容对应于原始文本;而蓝色部分则为生成的干扰段落。在添加了这些干扰段落后,人类读者能够识别出问题的本质属性并未发生改变;然而阅读理解模型的回答发生了变化:原本应该输出John Elway的名字(黑体显示),结果系统返回了Jeff Dean(红体显示)。
那最核心的要点来了!如何生成这个干扰性的片段呢?
二、对抗数据生成方法
Take the addSent dataset as an example, the generation of addSent consists of four distinct steps. The integration of images and text facilitates a more intuitive understanding.

通过WordNet工具集为名词及形容词选择其对应的反义词进行替换,并采用预训练语料库GloVe提供的与实体词汇及数字具有相似语义属性的替代词汇进行替换。其中大部分辅助信息因与核心问题高度相关而可能对模型识别核心特征产生干扰。
制造虚假回答。其目的与第1步仅替代实体词及数字词的作用一致。这一步骤则旨在确保插入干扰前后的问题及其相关真实答案不受影响。
第三阶段的主要工作是整合前两阶段的结果,并在此基础上构建出一个完整的干扰片段。具体而言,在这一阶段中,我们将上一阶段的问题句与当前阶段得到的结果进行结合,并将其转化为陈述性语句。例如,在这种情况下,我们可以按照以下模式进行转换:将问题句中的主语部分与答案部分相结合:what/which NP_{1} VP_{1} ? 变换为:The NP_{1} of [Answer] VP_{1}
最后一步是人工校准第三步生成的结果。这里不再赘述
在构建方法上与 addSent 类似的是 addOneSent 的构造思路, 其中 addSENT 需要从多个生成对抗样本中筛选出对模型最具欺骗性的样本(具有较高的输出概率)。相比之下, addOneSENT 则会采用随机的方式选择一个。此外还涉及到了关于 antagonics 集合的构建, 与之前的方法不同, 此外还涉及到了关于 antagonics 集合的构建, 不考虑语法准确性, 导致生成的数据质量较低, 并且较少研究者采用该数据集进行深入研究。
三、实验分析
因为论文于2017年发布,并探讨了当时广泛使用的Mtach-LSTM、BiDAF等16种阅读理解模型在该对抗集上的表现。

表内数据是预测结果的F1值。可以看到,大部分模型的F1值均有大幅的下降。
在当前的阅读理解领域中,默认采用BERT结合微调技术来处理这类问题。笔者回顾了最近关于该对抗数据集的研究成果,并对实验结果进行了详细分析。具体而言,在该数据集上基于BERT+Fine-tuning模型的表现优于其他方法。

——引自《Robust Question Answering Through Sub-part Alignment》,NAACL 2021

源自《Model Agnostic Answer Reranking System for Adversarial Question Answering》, EACL 2021
