AAAI 2020论文分享 | 一种提升阅读理解模型鲁棒性的对抗训练方法

本文对百度NLP入选AAAI 2020的机器阅读理解领域入选论文《A Robust Adversarial Training Approach to Machine Reading Comprehension》进行详细解读,该论文讨论了机器阅读理解模型面临对抗攻击时的效果鲁棒性问题。

一、研究动机

机器阅读理解技术是自然语言处理领域的热门方向,该技术可以使计算机具备从文本数据中获取知识并回答问题的能力。近年来很多研究表明机器阅读理解模型对于对抗攻击是非常脆弱的,导致模型在很多应用场景上出现效果鲁棒性问题甚至安全问题。

图1 在文章后部追加特定无关文字即可误导模型给出错误答案,例子中正确答案为『Air』

对此有研究表明通过总结这些误导性文字的对抗规律,借助人工规则驱动的方式构建类似对抗样本,并在此基础上进行训练,得到的阅读理解模型可以很好地防御相关对抗样本。

它的优点是在目标集合上非常有效,但是仍然有一个缺点:需要人工参与,且无法通过规则的方式枚举出所有可能的对抗样本类型及其规则。

图2 通过人工方式发现、总结并生成用于训练对抗样本的方式

因此人工的方式无法在更为通用的意义上解决阅读理解模型的鲁棒性问题。对此本文的作者从阅读理解模型自身出发,利用对抗的思路自动发现对抗样本,从而有针对性地加强模型的鲁棒性。

二、技术方案

作者们提出了一种模型驱动的方法,使用自动对抗的方法自动生成未观察过的对抗样本,并运用生成的样本最终提升阅读理解模型的效果鲁棒性,全程无需人工参与。

该方法可以简单地划分为三个步骤:

(1)对每个训练样本利用对抗的方法生成一个干扰向量输入,使得它能够误导当前的阅读理解模型;

(2)采用贪心策略从干扰向量的词汇权重中采样得到对应的离散化的干扰文本;

(3)使用干扰文本构建用于训练的对抗样本,并重新训练阅读理解模型并重复上述步骤直至收敛。

图3 论文提出的提升阅读理解模型鲁棒性的对抗训练方法

在步骤(1)中,针对已有阅读理解模型训练干扰向量的方法如图4中高亮所示。对于任意一组训练样本,该方法在embedding输入中随机插入一段由词表embedding加权得到的干扰向量序列,组成含有干扰的embedding输入序列。

在训练干扰向量时,固定阅读理解模型参数,以最小化当前模型正确预测概率为目标,使用梯度下降的方法调整归一化的词表权重,从而生成能够达到迷惑目的的干扰向量序列。


图4 论文中提出的干扰向量训练方法图例

在步骤(2)中,针对干扰向量序列上的各个干扰向量,作者使用贪心的方法采样词表中词汇embedding与干扰向量欧式距离最近的词汇作为该位置的代表词,从而生成一段干扰文本。由于该算法的特性,可以近似地直接选取词表中权重最大的词作为代表词。

在步骤(3)中,作者将生成的干扰文本重新加入到对应训练数据中,构建成为具有对抗意义的对抗样本(adversarial examples),并在训练数据中追加上这些样本进行重新训练,得到鲁棒性加强后的阅读理解模型。并运用该模型继续从步骤(1)开始下一轮迭代,寻找新的能够对抗当前模型的样本,直至收敛。

三、实验效果

 

关于实验效果部分,欢迎大家前往【百度NLP】公众号查看原文详细描述,并获取论文原文PDF,我们对AAAI 2020中百度入选的NLP领域论文详细解读将持续进行更新,敬请关注!

发布了8 篇原创文章 · 获赞 0 · 访问量 674

猜你喜欢

转载自blog.csdn.net/qq_40247584/article/details/105102385