Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

路 李亚洲参与

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

近日,谷歌大脑研究者 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 样本进行分类。

理论论文谷歌大脑对抗样本Ian Goodfellow
4
相关数据
自动驾驶技术技术

从 20 世纪 80 年代首次成功演示以来(Dickmanns & Mysliwetz (1992); Dickmanns & Graefe (1988); Thorpe et al. (1988)),自动驾驶汽车领域已经取得了巨大进展。尽管有了这些进展,但在任意复杂环境中实现完全自动驾驶导航仍被认为还需要数十年的发展。原因有两个:首先,在复杂的动态环境中运行的自动驾驶系统需要人工智能归纳不可预测的情境,从而进行实时推论。第二,信息性决策需要准确的感知,目前大部分已有的计算机视觉系统有一定的错误率,这是自动驾驶导航所无法接受的。

权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

机器学习技术

机器学习是人工智能的一个分支,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

超参数技术

在机器学习中,超参数是在学习过程开始之前设置其值的参数。 相反,其他参数的值是通过训练得出的。 不同的模型训练算法需要不同的超参数,一些简单的算法(如普通最小二乘回归)不需要。 给定这些超参数,训练算法从数据中学习参数。相同种类的机器学习模型可能需要不同的超参数来适应不同的数据模式,并且必须对其进行调整以便模型能够最优地解决机器学习问题。 在实际应用中一般需要对超参数进行优化,以找到一个超参数元组(tuple),由这些超参数元组形成一个最优化模型,该模型可以将在给定的独立数据上预定义的损失函数最小化。

计算机视觉技术

计算机视觉(CV)是指机器感知环境的能力。这一技术类别中的经典任务有图像形成、图像处理、图像提取和图像的三维推理。目标识别和面部识别也是很重要的研究领域。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

准确率技术

分类模型的正确预测所占的比例。在多类别分类中,准确率的定义为:正确的预测数/样本总数。 在二元分类中,准确率的定义为:(真正例数+真负例数)/样本总数

映射技术

映射指的是具有某种特殊结构的函数,或泛指类函数思想的范畴论中的态射。 逻辑和图论中也有一些不太常规的用法。其数学定义为:两个非空集合A与B间存在着对应关系f,而且对于A中的每一个元素x,B中总有有唯一的一个元素y与它对应,就这种对应为从A到B的映射,记作f:A→B。其中,y称为元素x在映射f下的象,记作:y=f(x)。x称为y关于映射f的原象*。*集合A中所有元素的象的集合称为映射f的值域,记作f(A)。同样的,在机器学习中,映射就是输入与输出之间的对应关系。

迁移学习技术

迁移学习是一种机器学习方法,就是把为任务 A 开发的模型作为初始点,重新使用在为任务 B 开发模型的过程中。迁移学习是通过从已学习的相关任务中转移知识来改进学习的新任务,虽然大多数机器学习算法都是为了解决单个任务而设计的,但是促进迁移学习的算法的开发是机器学习社区持续关注的话题。 迁移学习对人类来说很常见,例如,我们可能会发现学习识别苹果可能有助于识别梨,或者学习弹奏电子琴可能有助于学习钢琴。

对抗样本技术

对抗样本是一类被设计来混淆机器学习器的样本,它们看上去与真实样本的几乎相同(无法用肉眼分辨),但其中噪声的加入却会导致机器学习模型做出错误的分类判断。

强化学习技术

强化学习是一种试错方法,其目标是让软件智能体在特定环境中能够采取回报最大化的行为。强化学习在马尔可夫决策过程环境中主要使用的技术是动态规划(Dynamic Programming)。流行的强化学习方法包括自适应动态规划(ADP)、时间差分(TD)学习、状态-动作-回报-状态-动作(SARSA)算法、Q 学习、深度强化学习(DQN);其应用包括下棋类游戏、机器人控制和工作调度等。

深度神经网络技术

深度神经网络(DNN)是深度学习的一种框架,它是一种具备至少一个隐层的神经网络。与浅层神经网络类似,深度神经网络也能够为复杂非线性系统提供建模,但多出的层次为模型提供了更高的抽象层次,因而提高了模型的能力。

推荐文章
暂无评论
暂无评论~