2021李宏毅机器学习课程笔记——Adversarial Attack

这篇笔记探讨了深度学习模型的易受攻击性,特别是针对图像分类任务的FastGradientSignMethod(FGSM)攻击。攻击可分为无目标和有目标两类,同时强调了攻击必须在人眼难以察觉的范围内。文章还介绍了黑盒攻击,即在未知网络参数的情况下通过代理网络实施攻击。防御策略包括被动防御(如数据预处理)和主动防御(对抗性训练)。
摘要由CSDN通过智能技术生成

注:这个是笔者用于期末复习的一个简单笔记,因此难以做到全面详细,有疑问欢迎大家在评论区讨论
https://speech.ee.ntu.edu.tw/~hylee/ml/ml2021-course-data/attack_v3.pptx

I. Example of Attack

从某种角度来说,深度学习模型可以简单理解为各种各样的矩阵乘给叠在一起。以图像分类为例,输入的图像也是一个矩阵,那么,实际上就有可能对输入图像作出一些微小的数值上的修改(肉眼不可见的),但是却能造成网络(各种矩阵乘)的输出结果发生很大的变化。这个概念其实有点儿像数值计算中"解的稳定性",一个例子如下所示:
在这里插入图片描述
这里也可以将针对深度网络的攻击分为两类,一种是无目标的,只要让网络分类错误即可;一种是有目标的,需要让网络犯我们想要的错误。

当然,这里也很容易想到一个问题,如果深度网络确实如此脆弱的话(随便改下输入就能影响结果),那么根本就不存在所谓AI落地的说法。实际上网络对于一般的(自然存在的)干扰是鲁棒的:
在这里插入图片描述
例如这里在很强的噪声干扰下仍能识别出是一只猫。

II. Attack Approach

本文不讨论攻击的实现细节,只分析攻击的思路。我们知道,网络的训练过程是不断更新网络参数来降低损失函数的值,那么攻击的时候,网络参数是固定的,同样是降低损失函数的值,只不过此时变成了不断更新原始图像,而目标则可以理解为一个我们给定的新恶意label:
在这里插入图片描述
以此为思想的一种经典的攻击方法为Fast Gradient Sign Method (FGSM)。

III. Non-perceivable

攻击的时候有一个小细节,即被攻击的图像不能被人眼给很容易就察觉出来。说白了就是像素值的变化程度不能超过某个阈值,那么有两种具体的控制思路,一个是使用二范数控制图像整体的变动,一个是使用无穷范数控制像素的最大变动:
在这里插入图片描述

IV. Black Box Attack

上面提到的攻击有个隐藏前提,我们得知道网络的参数,才能进行梯度反传进而去修改图像,即属于一种"白盒攻击"。而如果网络参数未知的话,也还是有办法进行攻击的,这种我们称为黑盒攻击,一种思路如下:
在这里插入图片描述
比方说,如果有网络的训练数据的话(对面用的公开数据集),那么我们可以训练一个执行同样任务的代理网络,对代理网络进行攻击。由于任务相同数据集相同,那么此时梯度可能也是差不多的,从而实现从代理网络到实际网络的攻击。当然如果没原始训练数据的话这条路就行不通了。

V. Passive Defense

防御的话有些思路是十分直观的。例如,前面提到的攻击都是对图像进行一定的扰动,那么我们可以在将图片输入网络前先进行一些预处理(平滑、压缩、填充、再生成)等,这样就可以消掉图像中的恶意信息:
在这里插入图片描述
这么做有两个问题。首先就是由于训练的时候是没有这些“数据增强”的,因此会对模型的性能造成影响;第二就是如果这些防御措施也泄露了的话,那么攻击者可以直接把这些预处理步骤视为网络的一部分一起攻击。

VI. Proactive Defense

在这里插入图片描述

针对已知的攻击方法,进行对抗训练。可以简单理解为将被攻击的图片作为一种数据增强,从而提升网络的鲁棒性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值