第十六讲--对抗样本和对抗训练

对于人眼来说,图片没有发生变化,还是熊猫

但是!对于训练好的模型来说,这个样本会被分类为猴子

不只是神经网络,线性模型也会被攻击,下图圈出来的“9”已结不再被模型认为是“9”了



这种表明看起来没有区别的对抗样本,不是由于模型的过拟合引起的。过拟合应该是随机的,而不是具有系统性。

相反,是由于欠拟合(线性)导致,在离决策边界远的地方分数很高(即使从没有那样的样本)


神经网络事实上就是分段线性的(指的是输入和输出之间是线性的)


下图显示预测分数与图像改变量之间呈线性关系


下图中三种改变导致的L2距离变化是一样的,但是对抗样本看起来没有变化


产生对抗样本的最快方式:


FGSM是产生对抗样本的方向,白色为正常样本,彩色为对抗样本


随机方向则不容易生成对抗样本


------------------------------------------------

训练好的分类器会将随机噪声的图像分类为具体的物体!!因为训练测试集不是同一分布


------------------------------------------------------------------------------------

对抗训练用于强化学习,改变视频中每一帧图像为对抗样本,可以使得电脑AI玩家得分变低,视频链接如下

https://www.youtube.com/watch?v=r2jm0nRJZdI

-------------------------------------------------------------------------------------------------

RBF网络对于对抗样本攻击,防御力较强(但是RBF很难做深,梯度接近0)

-------------------------------------------------------------------------------------

在同一数据集或相近数据集上训练出来的模型是差不多的。


利用一个模型的对抗样本可以用于攻击另一个类似的模型,攻击成功率如下


需要攻击的算法可能是不可知,甚至不可微。但是我们可以用自己的可微的模型去生成对抗样本,然后攻击要攻击的模型。


用好几个模型集成的对抗样本(对这几个都是对抗样本),那么很大概率也是其他模型的对抗样本


--------------------------------------------------------------------------------------------------------------------

defense很困难

即使我们知道样本的分布,也无法判断是否是假数据,下图中两个p(x)基本一致,但是后验概率区别很大,即无法区分对抗样本和正常样本


-----------------------------------------------------------------------------------------------------

训练过程使用对抗样本训练,可以使得网络具有防攻击性


-----------------------------------------------------------------------------------------

线性模型学习不到阶跃函数,所以对抗训练没有用,只是具有了weight decay效果

knn 使用对抗训练会过拟合

神经网络并不脆弱,对抗训练过的神经网络是所有机器学习算法中最能抵抗对抗攻击的


无标签对抗训练  使得扰动后的分类预测分数不变


----------------------------------------------------------------------------------------------------

寻找能满足输出需求的样本   用于工业发明设计




以下链接是课件提供的对抗训练的github代码,可以调用实验

https://github.com/tensorflow/cleverhans

猜你喜欢

转载自blog.csdn.net/qq_39638957/article/details/80406352