ACL 2018 | 问答模型真的理解问题吗:归因分析可轻松构造对抗问题样本

作者:Pramod Kaushik Mudrakarta等

机器之心编译

参与:李诗萌、刘晓坤

来自芝加哥大学和谷歌的研究者通过归因方法分析了三种深度学习问答模型的内在过程,包括了对图像、图表和文本段落的问答。结果表明这些深度网络常常会忽略问题中重要的词,导致错误归因(把无关词当成决定答案的重要线索),从而可以轻易地构造对抗样本实现攻击。例如,最强的攻击可以将图像问答模型的准确率从 61.1% 降低到 19%,将图表问答模型的准确率从 33.5% 降低到 3.3%。

引言

近期,各种问答任务都应用了深度学习。例如,关于图像的问答任务(如 Kazemi 和 Elqursh 等人 2017 年的工作);关于图表的问答任务(如 Neelakantan 等人 2017 年的工作);以及关于文本段落的问答任务(如 Yu 等人 2018 年的工作)。开发人员、用户以及审稿人(学术界)都希望了解这些模型的能力。

衡量系统表现的标准方式是在测试集上评估其误差率。只有当测试集可以代表潜在的真实世界任务时,高准确率才是一个好模型的指标。大多数任务的测试集和训练集都很大,因而很难检验这些数据集是否能代表真实世界。

本文提出的技术可以分析深度学习模型对问句中单词的敏感度。研究者通过归因分析以及生成对抗性问题来实现这种技术。举一个说明性的例子:视觉问答(Agrawal et al., 2015)中的任务是要回答关于图像的问题。思考一下「建筑物两边的白色砖块有多对称?」这样的问题(如图 1 所示)。本文研究的系统得到了正确的答案(「非常」)。但是,研究者(通过归因方式)发现这个系统只依赖于类似「how」和「bricks」等少数几个单词。事实上,我们可以在图像相同的情况下,提出一个可以使系统得到错误答案的对抗性问题。例如,对于「建筑两边的白色砖块有多圆?」这个问题来说,系统得到的答案是一样的(「非常」)。本项研究的一个重要前提是在问答方面大多数人都有基本常识。即使他们无法手动检验数据集是否能代表真实世界,但是他们可以识别问句中重要的词,并预测出这些关键词在回答问题中所起的作用。

本文的研究贡献

研究者分析了三个问答模型。有两个步骤:首先,应用了集成梯度(Integrated Gradients,IG)(Sundararajan et al., 2017),将系统的预测结果归因于问题中的单词上。研究者对归因结果进行了可视化,以便后续分析。其次,通过归因分析识别出网络逻辑中的弱点(例如,依赖不重要的单词),并利用这些弱点构建对抗性问题。

本研究的一个重要贡献在于可以对问答网络进行过稳定性(overstability)的测试。Jia 和 Liang 的研究(2017)表明,阅读理解网络对语义更改编辑来说有些过稳定。在研究过程中,作者发现这样的过稳定性也适用于问答任务。此外,这种行为在视觉问答网络和表格问答网络中也有所体现。作者使用归因定义一种通用的测试方法,以度量过稳定性的程度(4.3 节和 5.3 节)。该过程涉及到当系统地从问题中去除单词的过程中,度量网络的准确率的变化。

需要强调的是,与 Jia 和 Liang 相似的模型独立的对抗技术相比,本文的方法利用了现有模型的优缺点,这使得的攻击成功率更高。此外,利用归因分析,可以提高 Jia 和 Liang 工作的准确率(6.2 节)。就目前所知,这种广泛使用归因分析构建对抗样本的做法是很新颖的。

接下来提供本文结果的概述,在每种情况下都会对新输入上的预训练模型进行评估,并保持网络参数不变。

图像问答(第 4 节):该任务是要回答有关图像的问题。作者分析了 Kazemi 和 Elqursh 的研究(2017)中的深度网络。他们发现网络忽略了问题中的很多单词,这些单词很大程度上是依赖图像回答问题的。例如,在验证集中,即使删掉除了被强调外的每一个单词,模型准确性还是达到原始准确性的 50% 以上。他们还发现,该模型潜在地依赖于重要的疑问词(如名词),在问题中添加无内容前缀(如「简单来说…」)的话,模型准确率从 61.1% 降低到 19%。

图表问答(第 5 节):作者分析了 Neelakantan 等人在 2017 年做出的神经编程器(Neural Programmer,NP)系统的工作,该系统针对表格数据回答问题。NP 选择适用于附表的一系列操作回答问题(类似于 SQL 的 query 方法;在第 5 节中有细节描述)。他们发现与名词或形容词等重要词相比,无内容单词(如「in」、「at」和「the」等)更容易影响这些操作选择。删除所有的无内容单词后,模型的准确率从 33.5% 下降到 28.5%。他们还发现,NP 通常是以错误的原因得到正确答案的。例如,对于问题「哪个国家赢得了最多的金牌?」,NP 选择的操作之一是「第一」(选取图表的第一行)。只有当图表恰好是以排名组织时,它的答案才是正确的。研究者通过在 Pasupat 和 Liang 2016 年提出的生成扰动图表集上进行测试,来量化该弱点,并发现其准确率从 33.5% 下降到了 23%。最后,研究者展示了过稳定性的极端形式,其中图表自身就能在网络中诱导很大的偏差,而不管问题的具体内容。例如,在关于奥林匹克金牌数的图表中,NP 预先倾向于选择「前一个」的操作。

阅读理解(第 6 节):该任务是要回答文本段落的相关问题。分析了 Yu 等人的网络(2018)后又一次发现,网络常常忽略一些本应该重视的单词。Jia 和 Liang 等人 2017 年提出在句子中添加一些短语一般不会改变网络所给答案,但有时候能实现攻击。研究者的主要发现是,当被添加短语的句子中包含所有模型认为重要(对原始段落而言)的疑问词时,攻击成功的可能性更高。例如,他们发现,当添加的句子包含最高归因(top-attributed)的名词时,攻击成功的可能性会超过 50%。这种洞察可指导我们构建更成功的攻击和更好地训练数据集。

总之,研究者发现所有的网络都忽视了问题的重要部分。可以通过改善训练集或者引入归纳偏置解决这一问题。他们的分析工作对这两个方案都有帮助。对将最终用户展示归因可视化也是有意义的。了解哪些单词会被忽略,或者哪些操作会映射到单词,都可以帮助用户决定是否相信系统给出的回应。

图 1:图像问答(Kazemi and Elqursh, 2017):对能正确回答问题的网络的归因(词重要性)可视化。红色表示高归因,蓝色表示负归因,灰色表示近零归因。颜色由标准化的归因决定,也就是问题中归因程度最高的词语。

图 2:VQA 网络(Kazemi and Elqursh, 2017):相对于原始准确率,准确率更像是词汇量的函数。将词汇按出现频率降序排列,选择出现最多的词汇。X 轴取对数刻度,除了接近 0 的地方是线性的。

表 1:VQA 网络(Kazemi and Elqursh, 2017):前缀攻击的准确率;原始准确率为 61.1%。

图 3:归因分析的可视化。Y 轴上是疑问词、预处理标记和列选择先验。X 轴上是操作符和列选择,括号内是其基准线。操作符和列本身不影响最终答案,与对应的基准线一样,定为零归因。

表 2:表格特定默认程序(NP 在空输入问题上返回的程序)的列名归因。完整列表见补充材料中的表 6。这些结果表明,网络预先倾向于只根据表格选择运算符。

图 4:准确率作为词汇量的函数。按照出现频率,降序排列这些词,选择这些词作为问题中词语的最高归因。X 轴取对数坐标,除了接近 0 的地方是线性的。注意,只需要 5 个词网络的最终准确率即可超过 50%。

表 3:神经编程器(Neelakantan et al., 2017):左边:将攻击短语加入问题后得到的验证准确率(原始准确率为 33.5%)。

表 4:ADDSENT 攻击没能骗过这个模型。经过修改保留了归因程度高的名词后成功骗过了模型。归因程度高的词是红色的(归因程度越高颜色越深)

论文:Did the Model Understand the Question?

论文地址:https://arxiv.org/abs/1805.05492

摘要:本文分析了针对三个任务的最新的深度学习模型:对图像的问答、对图表的问答和对文本段落的问答。通过归因(词重要性)标记,发现这些深度网络常常会忽略问题中重要的词。利用这样的漏洞,我们对问题做了扰动修改,从而制造出各种各样的对抗样本。最强的攻击将图像问答模型的准确率从 61.1% 降低到 19%,将图表问答模型的准确率从 33.5% 降低到 3.3%。此外,本文还说明了在段落理解模型上归因是如何增强攻击力度的(Jia 和 Liang 2017 年提出)。研究结果表明,归因可以加强准确率的标准衡量,还可以使模型性能具备可探究性。当一个模型出于错误原因变成准确的的时候,归因分析会在模型中显示逻辑错误,指出测试集中数据的不足之处。

原文发布于微信公众号 - 机器之心(almosthuman2014)

原文发表时间:2018-05-25

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏数据科学与人工智能

【教程】机器学习Python教程:2机器学习术语

这意味着分类器在42个案例中正确地预测了为男性,并错误地预测了8个男性案例为女性。它正确地预测了32例女性,18例被错误地预测为男性而不是女性。

842
来自专栏新智元

关于 NIPS 2016 你应该知道的 50 件事情

【新智元导读】Andreas Stuhlmüller 目前在斯坦福 Noah Goodman 教授 Computation & Cognition lab 当博...

3184
来自专栏人工智能LeadAI

基于Tensorflow实现FFM

github:https://github.com/sladesha/deep_learning

1723
来自专栏AI科技评论

动态 | Uber开源「神经演化」可视化工具VINE

AI 科技评论按:算力的提升可能会为旧的算法注入活力。近两年来,神经演化(Neuroevolution)的方法逐渐再次受到关注,包括 OpenAI、DeepMi...

3367
来自专栏AI科技评论

学界 | 别再抄袭论文图片了,机器学习算法能自动检测出来

AI 科技评论按:近期来自纽约雪城大学的 Daniel Acuna 等人在 bioRxiv 上发表了一篇文章,作者在文章提出了一种机器学习算法,该算法能够自动进...

3585
来自专栏媒矿工厂

HDR关键技术:光学、视觉与光电转换曲线

本系列的前作当中介绍了HDR技术的相关技术与标准,本文将从更基础的知识点出发,重点介绍HDR技术的两大关键基础-亮度与颜色中的前者。

5693
来自专栏CDA数据分析师

【零一】#操作教程贴#从0开始,教你如何做数据分析#中阶#第十篇

大家好,我是零一。这一篇给大家介绍聚类/分类。 我的公众微信号是start_data,欢迎大家关注。 我们先讲一讲聚类。 上一篇的探索关系,很多朋友反映说非常有...

1838
来自专栏积累沉淀

数据挖掘算法之深入朴素贝叶斯分类

写在前面的话:   我现在大四,毕业设计是做一个基于大数据的用户画像研究分析。所以开始学习数据挖掘的相关技术。这是我学习的一个新技术领域,学习难度比我以往学过的...

3308
来自专栏ATYUN订阅号

腾讯AI Lab开源了覆盖性广、准确性高的汉语词汇语料库

腾讯开源了一个语料库,为超过800万个汉语词汇提供了200维向量表征,即嵌入,这些词汇是在大规模高质量数据上预先训练的。这些向量捕获中文单词和短语的语义含义,可...

965
来自专栏AI研习社

自动驾驶中的传感器融合算法:第一部分-卡尔曼滤波器和扩展卡尔曼滤波器

追踪静止和移动的目标是自动驾驶技术领域最为需要的核心技术之一。来源于多种传感器的信号,包括摄像头,雷达,以及激光雷达(基于脉冲激光的测距设备)等传感器组合的组合...

1075

扫码关注云+社区