对抗样本与对抗训练3

参考文献:

https://blog.csdn.net/qq_39638957/article/details/80406352?utm_source=blogxgwz0

对于神经网络,熊猫会被错误分类为长臂猿。

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

 

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

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

 

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

 

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

defense很困难

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

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

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

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

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

knn 使用对抗训练会过拟合

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

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

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

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

结论:

1、攻击很容易

2、防御是困难的

3、对抗训练提供正则化和半监督学习

4、域外输入问题通常是基于模型的优化的瓶颈

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

https://github.com/tensorflow/cleverhans

猜你喜欢

转载自www.cnblogs.com/Josie-chen/p/9994817.html