学界 | Ian Goodfellow等人提出对抗重编程,让神经网络执行其他任务

选自arXiv

作者:Gamaleldin F. Elsayed、Ian Goodfellow、Jascha Sohl-Dickstein

机器之心编译

参与:路、李亚洲

近日,谷歌大脑研究者 Ian Goodfellow 等人提出一种新型对抗攻击,可对已训练的网络进行重新编程,使之执行其他多种任务。

对抗样本的研究通常受攻击者风险的驱动,攻击者旨在通过对模型输入的微小改变引起模型预测错误。此类攻击可使自动驾驶汽车对贴了贴纸(小型 L_0 扰动)的停车牌视若无睹 [1],或导致保险公司的损伤模型(damage model)从被精心改动的损伤图片(小型 L_∞扰动)上得出的赔偿金额高于实际情况。基于该背景,研究者提出了多种方法来构建 [2–7] 和防御 [8–13] 这种类型的对抗工具。截至目前,大部分对抗攻击包括非目的性攻击和目的性攻击:前者旨在降低模型性能,但不要求模型生成指定输出;而目的性攻击中,攻击者针对输入设计对抗扰动,使模型对该输入生成指定的输出。例如,对分类器的攻击可能对每个输入图像都指定特定的输出类别,或者对强化学习智能体的攻击可能导致该智能体进入某特定状态 [14]。

本研究考虑的是更复杂的攻击者目的:使模型执行攻击者选择的任务,且攻击者无需计算特定的输出结果。考虑一个用来执行某原始任务的模型:对于输入 x,模型输出 f(x)。考虑攻击者想要执行的对抗任务:对于输入

(不必要和 x 属于同一域),攻击者想要计算的函数为

。本论文研究者展示了攻击者可通过学习对抗重编程函数 hf (·; θ) 和 hg(·; θ)(映射两个任务)达到目标。这里,h_f 将

的域转换成 x 的域(即

是函数 f 的有效输入),而 h_g 将

的输出映射回

的输出。然后调整该对抗程序(adversarial program)的参数 θ,以达到

在本研究中,出于简洁性考虑,以及为了获得高度可解释性的结果,研究者将

定义为一个小图像,将 g 定义为处理小图像的函数,x 是大图像,f 是处理大图像的函数。函数 h_f 仅包含在大图像的中心绘制 x,在边界处绘制 θ,h_g 是输出类别标签之间的硬编码映射。但是,这个想法更通用;h_f (h_g) 可以是转换两种任务的输入(输出)格式、使模型执行对抗任务的任意一致变换(consistent transformation)。

研究者将使用机器学习算法执行新任务的攻击类别称为对抗重编程(adversarial reprogramming),将 θ 作为对抗程序(adversarial program)。与大部分之前的对抗样本研究相比,该扰动的规模不需要限制。该攻击的成功不需要到人类察觉不到或更细微的程度。对抗重编程的潜在后果包括从公共服务中窃取计算资源,将 AI 助手设置为间谍或垃圾邮件程序。5.3 节将详细讨论这类攻击的风险。

给神经网络的输入添加偏移似乎不足够使得网络执行新任务。但是,该灵活性确实仅基于对网络输入的改动,且与深度神经网络的表达能力结果一致。例如,[15] 显示,依据网络超参数,通过沿输入空间中一维轨迹移动而获取的唯一输出模式的数量随着网络深度的增加而出现指数级增长。此外,[16] 显示即使参数更新仅限于在低维子空间中发生,网络在常见任务上训练取得高准确率。对神经网络输入添加偏移相当于修正网络第一层的偏置项(对于空间共享偏置项的卷积网络而言,该操作有效引入了新参数,因为添加的输入不受贡献偏置项的限制),因此对抗程序对应在低维参数子空间中的更新。最后,迁移学习中的成功证明神经网络的表征可以泛化至完全不同的任务中。因此,对训练好的网络进行重编程的任务可能比从头训练网络简单一些,研究者通过实验对该假设进行了探索。

图 1:对抗重编程图示。(a)将 ImageNet 标签映射至对抗任务标签(图像中的方块)。(b)来自对抗任务的图像(左)被嵌入对抗程序的中心(中),得到对抗图像(右)。该对抗程序使 Inception V3 网络执行计算图像中方块数量的任务。(c)使用对抗图像进行推断的图示。把对抗图像输入该网络时,网络预测映射至对抗任务的 ImageNet 标签。

图 2:做 MNIST 分类的对抗程序示例。(a-f)导致六个 ImageNet 模型执行 MNIST 分类任务的对抗程序。每个程序被应用到一个 MNIST 数字。

表 1:已训练 ImageNet 分类器可以通过对抗重编程来执行多种任务。上表给出了重编程网络在计数任务、MNIST 分类任务和 CIFAR-10 分类任务上的准确率。

表 2:当面向未训练网络时,对抗重编程的有效性会降低。上表给出了重编程网络在 MNIST 分类任务上的准确率。目标网络已被随机初始化,但未被训练。

研究者发现,经过训练的神经网络要比随机网络更容易受到对抗重编程的影响。这表明,对抗程序可以为了新的任务改变已有网络学习到的特征。这可以视为一种新形式的迁移学习,其中网络的输入(相当于第一层的偏置项)被修改了,而不是更典型的输出层权重(readout weight)。研究结果表明,在现代人工神经网络中,神经回路的动态重用应该更有实用性。由于共享计算能力,它有潜力使机器学习系统能够更简单的重新目的化(repurpose),变得更灵活、高效。实际上,机器学习近来的研究已经集中在构建具备可重用组件的大型动态连接网络上了。

论文:Adversarial Reprogramming of Neural Networks

论文链接:https://arxiv.org/abs/1806.11146

摘要:深度神经网络易受对抗攻击的影响。在计算机视觉领域中,对图像进行精心设计的扰动可导致神经网络犯错,如将熊猫识别成长臂猿或用猫的图像来「愚弄」计算机。之前的对抗样本的设计目的是降低模型性能或使机器学习模型生成攻击者提前设定的特定输出。我们介绍了一种对抗攻击,其对目标模型进行重新编程,使其执行攻击者指定的任务,且攻击者无需指定或计算每个测试输入的期望输出结果。该攻击通过极大优化单个对抗扰动来实现,该攻击将扰动添加至机器学习模型的所有测试输入,以使模型在处理这些输入时执行攻击者选择的任务,即使模型的训练目的并非是做该任务。因此我们可以把这些扰动看作是新任务的程序。我们在六个 ImageNet 分类模型上展示了对抗重编程,使这些模型执行计数任务,和两个分类任务:对输入 ImageNet 分类模型的 MNIST 和 CIFAR-10 样本进行分类。

本文为机器之心编译,转载请联系本公众号获得授权。

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

原文发表时间:2018-07-03

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏AI研习社

房价会崩盘吗?教你用 Keras 预测房价!(附代码)

书中其中一个应用例子就是用于预测波士顿的房价,这是一个有趣的问题,因为房屋的价值变化非常大。这是一个机器学习的问题,可能最适用于经典方法,如 XGBoost,因...

1972
来自专栏数据派THU

教你在Python中构建物体检测系统(附代码、学习资料)

本文介绍物体检测技术以及解决此领域问题的几种不同方法,带你深入研究在Python中如何构建我们自己的对象检测系统。

2583
来自专栏计算机视觉战队

深度学习——感受野

最近在组会讲解框架时,在感受野这个小知识点,大家开始产生歧义,今天我就简单的给大家讲解下这个小知识点,也给初学者带来一个对Receptive Field崭新的认...

4547
来自专栏专知

【干货】​在Python中构建可部署的ML分类器

【导读】本文是机器学习爱好者 Sambit Mahapatra 撰写的一篇技术博文,利用Python设计一个二分类器,详细讨论了模型中的三个主要过程:处理不平衡...

38411
来自专栏量子位

无需在数据集上学习和预训练,这种图像修复新方法效果惊人 | 论文

林鳞 编译自 Github 量子位 出品 | 公众号 QbitAI Reddit上又炸了,原因是一个无需在数据集上学习和预训练就可以超分辨率、修补和去噪的方法:...

2999
来自专栏杨熹的专栏

用 TensorFlow 创建自己的 Speech Recognizer

参考资料 源码请点:https://github.com/llSourcell/tensorf... ---- 语音识别无处不在,siri,google,讯飞...

3215
来自专栏大数据

具有mxnetR的前馈神经网络

mxnetR是一个深度学习软件包,可与所有深度学习类型一起使用,包括前馈神经网络(FNN)。FNN具有隐藏层的简单处理单元。

4061
来自专栏Echo is learning

machine learning 之 多元线性回归

1473
来自专栏量化投资与机器学习

【深度学习研究系列】漫谈RNN之长短期记忆模型LSTM

? 推送第三日,量化投资与机器学习公众号将为大家带来一个系列的 Deep Learning 原创研究。本次深度学习系列的撰稿人为 张泽旺 ,DM-Master...

2627
来自专栏最新技术

深入学习Apache Spark和TensorFlow

想要了解更多关于Apache Spark的信息,请在2016年2月在纽约出席Spark东部峰会。

3088

扫码关注云+社区

领取腾讯云代金券