ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

2021李宏毅机器学习笔记--12 attack ML models

2021-06-26 11:58:24  阅读:118  来源: 互联网

标签:12 -- 李宏毅 模型 攻击 神经网络 我们 输入 图片


2021李宏毅机器学习笔记--12 attack ML models

摘要

机器学习不仅要用在研究上,更多的肯定要在各种有意义的实际应用中。因此model仅仅是对杂讯(噪声)robust和大部分时间work是不够的,还要去对抗恶意攻击(注意,这里不是说仅仅是对抗杂讯,而是所谓的,不暴露出弱点)。因为在垃圾邮件识别,人脸识别这种最基础广泛的领域,也存在着大量的攻击对抗。因此,对这方面的研究是十分重要的。

一、图像模型的攻击

1.1原理

在一个训练好的模型上,对输入的图片加上特制的噪声,这个网络模型会得到一些不同的答案。
在这里插入图片描述训练的时候,我们的x是不变的,从而获得我们的θ;而在训练攻击图片的时候,我们是不改变模型本身的参数的,我们是固定住了θ ,而训练的是x。

攻击达到的效果根据我们应用的不同也分两种:

1、Non-targeted Attack:只要求最后的结果越不对越好,不要求结果最后错成什么样子
2、 Targeted Attack:在最后的结果越不对越好的基础上,还要求结果最后机器很确信的把某个我们希望的错的误认为对的

如下图所示,第一种就是最后认为不是猫即可,而第二种就是最后认为尽量是鱼。

![在这里插入图片描述](https://www.icode9.com/i/ll/?i=20210626101249677.png?,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2d1b3hpbnhpbjA2MDU=,siz

1.2Constraint

但既然是恶意攻击,首先我们还是要保证,我们攻击所用的输入和原输入应该相对很接近,最起码人应该是不容易察觉的,因此我们要增加一个约束。
实际训练中我们首先要定义的就是“我们如何判断这是与原图片相似的图片”。我们设原输入是x,攻击用的图像是x^。
一般我们用的是 ∣∣x−x^∣∣∞​,也就是我们看各个像素的最大差值。
使用无穷范数的原因如下图所示,对于我们人眼而言,我们一眼就能看出左面的图片和右下角图片有很大不同(绿色部分明显不同),而很难辨识出与右上角图片的差距;虽然其实它们做差的2-范数相同。总的来说,当图片不是这么简单的时候,其实道理也还是类似的,如果有几个像素有明显的变化,我们人眼还是能轻易捕捉到的(尤其是专门去检查的话),而整张图片每个像素都有很细微的变化,我们肉眼几乎是完全检查不出来的。
在这里插入图片描述

1.3参数训练

需要找出损失参数最小并且距离x0尽可能小的x*,可以用梯度下降的方法进行学习,但是会出现一个问题,那就是我们会出现到达的点在范围外的情况,因此我们需要进行额外的操作。
在这里插入图片描述而这个操作,反正就是一种把所谓的外面的点拉回来的方式。相对来说最靠谱的就是,拉到距离之前的点最近的边界上(连接两个点,与之交接处就是应该拉到的点)。下面的图片就是针对2-范数和无穷范数的情况。
在这里插入图片描述

1.4一个例子

输入一张猫的图片,让他认为是海星。
在这里插入图片描述但是肉眼观察不出任何差别,所以做一个减法,可能差别非常小,所以乘以50,因为这个网络是50层的。可见这两张图片确实有微小的差异,这个微小的差异足以骗过网络,让他认为右边的图片是海星。
在这里插入图片描述如果说猫和海星有一些相似之处,都是生物。那么也可以让猫变成键盘。

在这里插入图片描述如果不加入特制的杂讯,而是随机加入一些,网络可能不会被骗。

在这里插入图片描述那么到底为什么出现这种结果呢?
x0​随机移动,多数时候,在该点附近,网络判断为tiger cat的confidence很高

首先这是一个很复杂的神经网络,最后边界的情况是十分复杂扭曲的;而且输入的维度是十分十分大的,至少都有上千维。有某些神奇的方向会出现这种现象:只要稍微推一点,预测为某个不相干的东西的confidence就会很高。在一个置信度较高的点的邻域内,只要我们找到哪怕一个方向上出现了置信度变低很多的情况,那就会被这种方式攻击顺着这个方向从而找到弱点。

因此可以说,相当于就类似,要想完全的防住这种攻击,那么就要求邻域内任何地点都要有足够的置信度,这要求显然太高了(越高维越困难)且本来也不一定正确。
在这里插入图片描述

1.5攻击方法

有多种的攻击方法,它们的区别只是在于限制不相同以及优化方式。
在这里插入图片描述

1.5.1FGSM(Fast Gradient Sign Method)

就是相当于往梯度最大的下降方向走固定长的一步即可,也就是说只考虑梯度方向而不考虑梯度大小,并且给一个非常大的learning rate,一次update就会跑出范围,然后把它拉回对应的角。
在这里插入图片描述

1.6黑盒攻击

黑盒和白盒的区别在于,白盒是指我们对神经网络中的参数都已经是了如指掌,那么黑盒就是一个内部结构完全未知的网络,我们仅仅知道用了哪些数据训练。

在这里插入图片描述我们攻击的方式其实也比较容易想到,那就是使用这些数据,自己去训练一个神经网络,然后对我们自己的神经网络进行攻击,得到攻击用的输入,然后直接把这个输入作为攻击这个黑箱神经网络的输入即可。黑箱攻击也有可能会成功。
在这里插入图片描述

1.7拓展研究

1.7.1普遍对抗攻击(Universal Adversarial Attack)

之前提到的攻击,对于每个图片x,会有不同的噪声x’进行攻击,有人提出了通用的噪声,可以让所有图片的辨识结果都出错。这个也可以做黑箱
在这里插入图片描述

1.7.2对抗性重新编程(Adversarial Reprogramming)

有一个辨识鱼的网络,可以将它改造成数方块的网络,根据方块的不同进行输出。
加一噪声,就能变成别的网络.

在这里插入图片描述

1.8真实世界的攻击

有人做实验,把攻击的图像打印出来,然后用图片放在摄像头上进行攻击。证明这种攻击时可以在现实生活中做到的。
可以对人脸识别上进行攻击,把噪声变成眼镜,带着眼镜就可以实现攻击。
在这里插入图片描述在现实生活中需要做的以下几点
1、要保证多角度都是成功的
2、 噪声不要有非常大的变化(比如只有1像素与其他不同),要以色块方式呈现,这样方便摄像头能看清
3、不要用打印机打不出来的颜色
4、不要在交通符号上加噪声。

二、声音模型的攻击

对模型的攻击不仅仅限制于图片模型,还可以对声音模型进行攻击,或者对文本进行攻击。
在这里插入图片描述

三、defense

总得来说,有两大种防御方式,第一种是被动防御,主要是去处理被攻击的图片使得攻击效果失效;第二种是主动防御,精华就在于要自己找到漏洞并补起来。

3.1被动防御

被动防御的形式有很多,例如将输入的图片平滑化,使用一个filter,加入一点点随机杂讯,做一点点平移旋转等等。总之宗旨是,既然攻击是只有那几个特殊方向有效,那么我就随机再换个方向,那攻击就极大可能的被抵消了。(以毒攻毒)
在这里插入图片描述
这样做的弱点就是,一旦我们这些内部的操作被泄露,我们的这些操作就相当于是一个更大的神经网络的一部分,从而再可以重新设计更新的攻击方式。

3.1.1feature Squeeze(功能挤压)

squeezer(挤压器)指的是不同的filter,比较这些输出,如果区别很大就有问题。
在这里插入图片描述

3.1.2Randomization at Inference Phase(推理阶段的随机化)

稍微做些改变,看输出是否会有变化
在这里插入图片描述

3.2主动防御

方法上其实也不难,主要就是,我们去做一个T轮的循环,每次对每个输入都找出对应的弱点,之后针对这个弱点进行修补(修改对应的标签)即可。
在这里插入图片描述当然无论如何修补,总是有一个新的方向可能会出漏洞,但是这样最起码对最初的训练数据的神经网络的攻击会失效。但是问题还是,如果我们知道了用这种方式进行防御,针对这种防御机制进行攻击,攻击还是会很有效果的;另外还有一个大问题,那就是如果攻击时用的方法和自我检测时不相同的话,我们依旧是防守不住的。

总结

神经网络不仅仅用在实验上,更要用在各种实际应用中,因此模型要有对抗恶意攻击的能力,但是目前大多数的操作是对模型进行攻击,反而模型的防御一直是一个难点,对这方面的研究是十分重要。

标签:12,--,李宏毅,模型,攻击,神经网络,我们,输入,图片
来源: https://blog.csdn.net/guoxinxin0605/article/details/118239965

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有