Fork me on GitHub

《Can you fool AI with adversarial examples on a visual Turing test?》论文笔记

Xu X. Can you fool AI with adversarial examples on a visual Turing test?[J]. 2017.

citation

Xu X. Can you fool AI with adversarial examples on a visual Turing test?[J]. 2017.

introduction

先介绍VQA(Visual Question Answering):也叫做visual Turing test,也就是让机器学习模型回答一个关于图片的用自然语言表述的问题。可以通过回答的正确度判断模型的效果。
VQA问题是深度学习的引用问题中比较复杂的一个分支,涉及的面也比较广,但是同样也会受到对抗样本攻击的影响。在这篇文章中,研究目标就是利用目标对抗攻击,让模型生成特定的question-answer pair。(这是对VQA系统进行对抗攻击的第一次尝试)

content and contributions

本文的研究内容如下:

1.  实验证明了一个训练好的VQA模型也会被对抗攻击影响。这里的攻击设定为白盒攻击:即是已知这个VQA模型的结构和权重。
2.  进一步用对抗样本攻击目前效果最好的VQA模型,发现了两个现象:
1) 如果目标question-answer对出现频率越大,内容更加想关,回答更加有意义,那么以这个“问答对”作为目标构造的对抗样本成功率更高。(这个现象叫做language prior,也比较好解释,模型往往会选择更加有意义,关联性更强的问答组合作为最终的结果。这种现象在针对具有显示推理特征的VQA模型时更加明显)
2) 在VQA问题中构造的对抗样本具有可移植性,说明可以用这个方法构造黑盒攻击。
3. 研究在两种训练好的模型的上进行了对抗攻击,一种模型是 bilinear fusion model MCG(结合问题和图片的特征预测答案),一种是组合模型NMN(建立依赖问题的网络布局,让这个网络处理图片得到预测答案)。比较之下,后者更不容易受到对抗样本的影响,说明了这种结构的模型更加稳定。

研究的contribution如下:

1. 第一个提出针对VQA模型的对抗攻击
2. 提出生成对抗样本的新算法
3. 实验发现了当目标问答对出现频率比较高时,VQA模型存在目标对抗样本。且这种对抗样本有可移植性
4. 发现了language prior现象,即是当以一些问答对作为攻击目标时,效果很差
5. 发现组合的神经网络模型更加稳定,这种增强模型稳定性的结构可以作为提升模型鲁棒性的参考。

background

VQA

所谓的VQA,也就是Given an image and a natural language question as an input, the goal of VQA is to predict a natural language answer. 它的应用很广,研究中用到的组合VQA和非组合VQA如下:

non-compositional

以[A. Fukui, D. H. Park, D. Yang, A. Rohrbach, T. Darrell, and M. Rohrbach, “Multimodal compact bilinear pooling for visual question answering and visual grounding,” in Proceedings of the Conference on Empirical Methods in Natural Language Processing (EMNLP), 2016.]提出的MCB方法为例。这个方法是先用两个网络模型$f_1$和$f_2$分别映射原始图片和question。它依赖的模型是一个整体结构,可以直观理解为输入端问题和图片到输出端答案的映射,输出就是计算出的$argmax_j(softmax(Wu^.))$。

compositional

这种组合模型,比如[R. Hu, J. Andreas, M. Rohrbach, T. Darrell, and K. Saenko,“Learning to reason: End-to-end module networks for visual question answering,” in Proc. of ICCV, 2017.]提出的方法。这种组合可以解释为两步:首先计算根据问题和图片的表达式$u_i^.$;然后基于问题question和$u_i^.$预测答案。
也就是这种模型有两步操作,两步依次执行最终给出预测答案。而在Hu等人的研究中,将这两步又拆分成了九个module,比如找到图片中的相关区域算为一个module。这种不同module组合形成的模型,也就叫做组合模型。
adversarial examples、Transferability and Black-box Attacks的相关背景比较熟悉,不再赘述

model details

研究有几个前提:

1. **白盒攻击**,即是攻击者知道模型的结构和网络权重。因此,攻击者可以计算模型的输出关于输入的梯度值。而本实验就是在这个假设的前提下进行的。利用这个梯度信息,就可以生成降低模型准确度的对抗攻击。
2. 目标模型没有任何防御策略:并不会影响本实验的典型性,因为 most existing defense proposals are either not properly evaluated and vulnerable to strong attacks, or only designed for black-box attacks 。
3. 攻击形式是指定目标的target attack:原因一是因为非目标攻击威胁不大,其二是因为真实攻击者用目标攻击往往能产生更好的攻击效果。
4. attack success rate:攻击成功率用来衡量生成的对抗样本,也是一个标准测量方法。
5. 提高模型的输出概率:因为模型是根据输出的概率向量来预测问题的答案,如果这个概率比较低,就容易被防御策略检测出来,因此,提高对抗样本的输出概率值,也能反映攻击的有效性。

algorithms

VQA模型定义为$f_\theta(I,Q)$,$\theta$是模型的参数,I是输入图片,Q是输入问题,f的结果是预测的答案概率值。与传统将VQA问题视作分类问题不同,作者将对这个模型$f_\theta$攻击抽象为,构建一个对抗样本图片$I^{adv}$,让模型的输出为问答对$(Q^{target},A^{target})$的概率最大,即是

整体的优化问题即是:

本文提出的算法优化,主要就是用一种替代目标函数来逼近优化函数,从而提升效率。

整体的算法如下:
此处输入图片的描述

conclusion

文章的结论有三个方面:

1. 目标对抗攻击(本文是目标对抗攻击)的成功率主要受到所选择的question-answer pair的类别的影响,跟参考图片的选择关系不大。
2. 发现了language prior phenomenon,给针对特定question-answer pair能产生对抗样本提供了一种可能的解释。
3. 发现组合VQA模型结构更加稳定。

这篇文章对对抗攻击的创新主要就是1)应用在了VQA新场景下2)优化目标函数的方法比较新颖

-------------本文结束感谢阅读-------------