(Paper Weekly02) Adversarial NLI: A New Benchmark
总体流程图:
最大限度利用标注者作为对抗攻击来源,进行多轮反复迭代,最大限度地暴露模型的“弱点”。可以避免数据集被“吃透”。
具体流程
给定context与预先设定好的label,标注者被要求写出符合该label的hypothesis,并努力诱导模型对其产生错误分类。如果模型确实产生了错误,那么还需要将相应的数据交给第三方verifier(另一位或多位人类)进行判断。
当一轮数据搜集完成后,构造新的训练集。其中,test set的构成被局限在:1.之前没有为训练集标注过训练样本的标注者所标注的数据 2. 按照标签的类别和种类进行平衡。
标注细节:
借助Mechanical Turk(可以理解为人工智能小黑工平台),给标注者提供context与label,标注者给出hypothesis后再将模型的probability feedback提供给标注者。如果不能成功欺骗模型,则标注者进行第二、三、四…次标注(第一轮最多重写5次,之后10次)。
R1用的是Bert-Large,R2转而使用在SNLI,MNLI、FeverNLI和第一轮得到的训练数据A1上训练的Roberta。在第二轮中训练多个roberta构成ensemble,每次随机挑选一个模型,避免标注者过度利用单一模型的vulnerability。
第三轮训练中使用了来源更加广泛的文本,包括新闻、小说、正式演讲文本等等,并且再加入第二轮得到的训练数据A2。
和其他的数据集进行比较:
首先从设计思路上,ANLI就比之前的任何数据集更难…
其次,ANLI依然继承了MNLI的一些问题,比如context非常的短,从直观上来说,更长的context有助于生成更难的例子。
之前的一些研究表明,模型可能会利用hypothesis中的spurious bias,ANLI数据集经过测试后表明这种情况不并严重。