原文标题(文章标题处有字数限制):
《An Effective Adversarial Attack on Person Re-Identification in Video Surveillance via Dispersion Reduction》
Abstract
通过减少神经网络内部特征图的分散性攻击reid模型。
erbloo/Dispersion_reduction (github.com)
1 Introduction
采用"分散减少"(Dispersion Reduction)的攻击方法,通过内部特征图的对比度来实现的黑盒攻击。
3 Proposed Approach
3.1 Notation
x r e a l x^{real} xreal表示原始查询图像, f ( ⋅ ) f(\cdot) f(⋅)表示深度神经网络分类器,第 k k k层的输出特征图为 F \mathfrak{F} F,其中第一次迭代时 F = f ( x r e a l ) ∣ k \mathfrak{F}=f(x^{real})|k F=f(xreal)∣k。对于后面的每一次迭代,计算色散(用 g ( ⋅ ) g(\cdot) g(⋅)表示),色散的梯度为 ∇ x r e a l g ( F k ) \nabla{x^{real}} g(\mathfrak{F}_k) ∇xrealg(Fk),用来更新对抗样本 x a d v x^{adv} xadv。
3.2 Dispersion Reduction
将Person ReID模型视为黑匣子进行处理和攻击需要一种可高度转移且能够有效攻击不同训练数据集和模型架构的方法。
大多数现有的攻击方法依赖于特定的任务的损失函数,这极大限制了它们跨任务和不同网络模型的可转移性。
分散减少(DR)具有良好的可转移性,在跨任务攻击场景中取得了成功。DR采用公开可用的分类网络作为代理源模型,并攻击用于不同计算机视觉任务的模型,例如对象检测,语义分割和云API应用程序。
DR是黑盒攻击。
传统的黑盒攻击建立一个源模型作为代理,其输入与目标模型生成的标签,而不是真实标签,让源模型来模仿目标行为。
本文提出的DR攻击不依赖于标签系统或特定的任务损失函数,仅访问模型的顶部。
需要源模型,但是不需要按照目标模型进行训练。
DR攻击具有很强的可转移性,预训练的公共模型可以简单地充当源模型。
图1:DR攻击减少了内部特征图的分散性。该对抗性样本是通过攻击VGG16模型的conv3.3层(减少分散性)生成的。与原始图像特征图相比,这也会导致后续层的特征图失真。
还可以分析攻击VGG16网络时针对不同的卷积层的攻击效果。
图2:攻击VGG16不同的层时的效果。攻击中间的层会导致掉点更明显。中间层的标准差的下降也远大于顶层和底层。
DR攻击可以用下面的优化问题定义:
min x g ( f ( x a d v , θ ) ) s . t . ∣ ∣ x a d v − x r e a l ∣ ∣ ∞ ≤ ϵ (6) \begin{aligned} \min_x g(f(x^{adv},\theta)) \\ s.t. ||x^{adv}-x^{real}||_\infty\leq\epsilon\tag{6} \end{aligned} xming(f(xadv,θ))s.t.∣∣xadv−xreal∣∣∞≤ϵ(6)
其中 f ( ⋅ ) f(\cdot) f(⋅)是深度神经网络的分类器, θ \theta θ表示网络参数, g ( ⋅ ) g(\cdot) g(⋅)计算分散度。
提出的DR通过采取迭代步骤,通过减少 k k k层中间的特征图的分散度来创建对抗性示例。
离散度描述了分布被拉伸或压缩的程度,并且可以有不同的离散度度量,如方差、标准差、基尼系数。
简单起见使用标准差作为分散度度量。
给定任何特征图,DR沿着降低标准差的方向,迭代地向 x r e a l x^{real} xreal添加噪声,通过裁剪为 x ± ϵ x±\epsilon x±ϵ,将其映射到 x r e a l x^{real} xreal附近。令第 k k k层的特征图为 F = f ( x t a d v ) ∣ k \mathfrak{F}=f(x_t^{adv})|k F=f(xtadv)∣k,DR攻击遵循下列等式:
x t + 1 a d v = x t a d v − ∇ x a d v g ( F k ) = x t a d v − d g ( t ) d t ⋅ d f ( x t a d v ∣ k ) d x a d v (7) \begin{aligned} x{t+1}^{adv}&=x_t^{adv}-\nabla_{x^{adv}}g(\mathfrak{F}_k)\\ &=x_t^{adv}-\frac{dg(t)}{dt}\cdot\frac{df(x_t^{adv}|_k)}{dx^{adv}}\tag{7} \end{aligned} xt+1adv=xtadv−∇xadvg(Fk)=xtadv−dtdg(t)⋅dxadvdf(xtadv∣k)(7)
算法1:Dispersion Reduction Attack
输入:分类器 f f f,真实图像 x r e a l x^{real} xreal,第 k k k层的特征图,扰动 ϵ \epsilon ϵ,迭代次数 T T T,学习率 l l l。
输出:对抗性样本 x a d v x^{adv} xadv,使得 ∣ ∣ x a d v − x r e a l ∣ ∣ ∞ ≤ ϵ ||x^{adv}-x^{real}||_\infty\leq\epsilon ∣∣xadv−xreal∣∣∞≤ϵ
- x 0 a d v ← x r e a l x_0^{adv}\leftarrow x_{real} x0adv←xreal
- 对于每次迭代:
- F k = f ( x t a d v ) ∣ k \mathfrak{F}_k=f(x_t^{adv})|_k Fk=f(xtadv)∣k
- 计算标准差 g ( F k ) g(\mathfrak{F}_k) g(Fk)
- 计算梯度 ∇ x r e a l g ( F k ) \nabla_{x^{real}} g(\mathfrak{F}_k) ∇xrealg(Fk)
- 更新 x a d v x^{adv} xadv: x t a d v = x t a d v − Adam ( ∇ x r e a l g ( F k ) , l ) x_t^{adv}=x_t^{adv}-\text{Adam}(\nabla_{x^{real}} g(\mathfrak{F}_k), l) xtadv=xtadv−Adam(∇xrealg(Fk),l)
- 将 x t a d v x_t^{adv} xtadv移动到 x r e a l x^{real} xreal附近: x t + 1 a d v = clip ( x t a d v , x r e a l − ϵ , x r e a l + ϵ ) x_{t+1}^{adv}=\text{clip}(x_t^{adv},x^{real}-\epsilon,x^{real}+\epsilon) xt+1adv=clip(xtadv,xreal−ϵ,xreal+ϵ)
- 返回 x t + 1 a d v x_{t+1}^{adv} xt+1adv
3.3 Victim ReID Models and Implementation Details of Attacks
[68]layumi. Dg-Net. Accessed: Oct. 30, 2019. [Online]. Available: https://github.com/NVlabs/DG-Net
[69] michuanhaohao. Alignedreid. Accessed: Oct. 30, 2019. [Online]. Available: https://github.com/michuanhaohao/AlignedReID
[70] AI-NERC-NUPT. Plr-Osnet. Accessed: Oct. 30, 2019. [Online]. Available: https://github.com/AI-NERC-NUPT/PLR-OSNet
训练时,图像被放缩至256x128,将小批量大小从16降至4,来减小GPU内存开销。
4 Experiments, Results and Discussion
使用了3个SOTA ReID模型作为受害模型,使用DR攻击,在4个数据集上进行攻击表现评估。
表1:受害模型在攻击前和攻击后的mAP,在不同的数据集上的表现。