论文阅读 (81):Fast Feature Fool: A Data Independent Approach to Universal Adversarial Perturbations

1 概述

1.1 题目

2017:数据无关通用对抗扰动 (Fast feature fool: A data independent approach to universal adversarial perturbations)

1.2 摘要

图像无关扰动可以愚弄对象识别CNN,这些扰动也被称为通用对抗扰动。这些扰动可以泛化到相同数据集上训练的多个网络,然而这些扰动方法需要用于训练CNN的数据集,以及需要复杂的优化。愚弄的性能也和训练数据的数量呈比例,这使得它们不适合实际攻击,因为攻击者访问训练数据是不合理的

本文提供了一种针对对象识别CNN的通用对抗扰动方法,展示了它们的迁移性。在没有数据的情况下,通过欺骗在多个网络层中学习的特征,来有效地生成通用扰动,从而误导CNN。

1.3 代码

Tensorflowhttps://github.com/val-iisc/fast-feature-fool

1.4 引用

@article{
    
    Mopuri:2017:112,
author		=	{
    
    Konda Reddy Mopuri and Utsav Garg and R Venkatesh Babu},
title		=	{
    
    Fast feature fool: {
    
    A} data independent approach to universal adversarial perturbations},
journal		=	{
    
    {
    
    arXiv}},
year		=	{
    
    2017}
pages		=	{
    
    1--12},
doi			=	{
    
    10.48550/arXiv.1707.05572}
}

2 快速特征愚弄 (Fast feature fool)

快速特征愚弄用于在不依赖于数据的情况下生成通用扰动。

首先,令 X \mathcal{X} X表示图像在 R d \mathbf{R}^d Rd中的分布, f f f表示习得的CNN分类函数,其将图像 x ∼ X x\sim\mathcal{X} xX映射为一个评估标签 f ( x ) f(x) f(x)

本文的目标是在不利用任何来自 X \mathcal{X} X的样本来找到一个可以愚弄 f f f的扰动 δ ∈ R d \delta\in\mathbb{R}^d δRd,其满足:
f ( x + δ ) ≠ f ( x ) , f o r   m a j o r i t y   o f   x ∈ X (1) \tag{1} f(x+\delta)\neq f(x), for\ majority\ of\ x\in\mathcal{X} f(x+δ)=f(x),for majority of xX(1)这种扰动被称为对抗性的,对于人类是难以察觉的。这表明扰动 δ \delta δ的像素强度应当被限制。现有方法通过引入 l ∞ l_\infty l来约束:
∥ δ ∥ ∞ ≤ ξ (2) \tag{2} \| \delta\|_\infty\leq \xi δξ(2)因此,通过使多层学习的特征过度饱和 (取代“翻转标签”目标) 来愚弄CNN。即通过给输入添加扰动,破坏每一层的的特征,以误导后继层的特征。沿着网络层级的累积扰动将使网络无法区分原始输入,导致最终层的大量预测错误。

扰动本质上应该导致特定层的特征虚假地触发并抽象出无信息的激活。在存在数据的情况下,即攻击阶段,为了误导激活保留判别信息,考虑到增加的不可感知性约束,扰动必须非常有效。所尝试问题的难点在于设计一个扰动 δ δ δ,其像素强度通常限制在小于数据范围的8% (其中 ξ = 10)。

因此,在不向目标CNN 显示任何数据 x x x的情况下,寻求可以在每一层产生最大虚假激活的扰动 δ δ δ。对此,生成一个随机扰动 δ \delta δ并优化以下损失:
L o s s = − log ⁡ ( ∏ i = 1 K l ‾ i ( δ ) ) s u c h   t h a t ∥ δ ∥ ∞ ≤ ξ (3) \tag{3} Loss=-\log\left( \prod_{i=1}^K \overline{l}_i(\delta) \right)\qquad such\ that\quad\|\delta\|_\infty\leq\xi Loss=log(i=1Kli(δ))such thatδξ(3)其中 l ‾ i ( δ ) \overline{l}_i(\delta) li(δ)是将 δ \delta δ作为CNN的输入时,输出张量在层 i i i的均值激活。注意激活函数是非线性的,例如ReLU,因此 l ‾ i \overline{l}_i li是非负的。 K K K是对于扰动 δ \delta δ,CNN中需要最大化激活的层数。这里考虑全连接层前的所有卷积层。这是因为卷积层用于特征提取,而多个连接层扮演分类器的角色。此外,本文发现这对优化卷积层是足够的。因此,我们限制特征提取层的优化, ξ \xi ξ则限制了扰动 δ \delta δ每个像素的强度。

所提出的优化目标计算每一层平均激活的乘积,以模拟最大化这些层的扰动。成绩的结果,所生成的扰动的强度大于其他形式,例如求和。这是显而易见的,因为乘积是一个更强的约束,它迫使所有层的激活增加以减少损失。为了避免极端值 ( ≈ 0 \approx0 0),我们在乘积的基础上应用 log ⁡ \log log。注意,目标是开放式的,因为没有要达到的最佳值。最终希望获取难以察觉又强度足够的扰动。

训练开始时,随机生成一个 δ \delta δ,然后执行优化以实现更高的激活。注意优化过程不涉及网络参数的变化,以及不使用任何图像。我们用为方程中的损失计算的梯度更新来 δ δ δ,更新后需要限制扰动,以满足不可察觉。当损失或者愚弄率达到一定值时停止更新。

3 实验

3.1 在不同网络上生成的扰动

3.2 数据集示意

3.3 迁移性


3.4 以小网络上的扰动作为初始化扰动

3.5 和其他扰动算法对比

猜你喜欢

转载自blog.csdn.net/weixin_44575152/article/details/128006873