第十六讲-对抗样本与对抗训练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
posted on 2018-11-21 14:25 Josie_chen 阅读(950) 评论(0) 编辑 收藏 举报