对抗机器学习-攻击

攻击-FGSM

基本概念

目标

假设有原始目标图像image,攻击的目标就是获取一个perturbed_image
使得模型将perturbed_image分类为错误的类别。
在这里插入图片描述
在实际解决问题时,就需要求出:
在这里插入图片描述

攻击的损失函数

模型训练的时候我们通常希望预测值与真实标签越接近越好,攻击的时候我们则希望同时满足perturbed_image的预测值与真实标签差距越大越好,如下图所示:
对抗机器学习-攻击_第1张图片
但是攻击和训练有一个本质上的不同,训练时,输入image是固定的,调整的是网络的参数θ;而攻击时,θ是固定的(即网络是固定的),调整的是输入的图像,以使模型得到的答案越错越好。损失函数可表示为如下形式:
在这里插入图片描述
另一个不同是,攻击时有一个额外的限制,原始的image与perturbed_image要越接近越好。(不要让模型发现)
在这里插入图片描述

定义d的两种方式

对抗机器学习-攻击_第2张图片
对抗机器学习-攻击_第3张图片
对抗机器学习-攻击_第4张图片

如何攻击

就像训练神经网络一样,只不过换成调整x ́使得损失函数最小,表示为:
在这里插入图片描述
同样使用梯度下降,只不过这里多了一个限制d(x0,x ́)≤ε,因此只需要添加一步,每更新一次参数判断是否符合限制,不符合则修正,过程如下:
对抗机器学习-攻击_第5张图片
修正就是穷举所有符合限制的xt,找一个与不符合限制的xt最近的,来替换原xt。
对抗机器学习-攻击_第6张图片

FGSM

不同的攻击方法不同之处其实就在于不同的参数更新方法,和不同的限制。
对抗机器学习-攻击_第7张图片
FGSM是一种很简单的攻击方法:
对抗机器学习-攻击_第8张图片
这种方法不在乎梯度的值,只在乎梯度的方向。
对抗机器学习-攻击_第9张图片

你可能感兴趣的:(机器学习)