阅读由来SCRDet++参考文献[20]https://blog.csdn.net/dujuancao11/article/details/121590324
Feature Denoising for Improving Adversarial Robustness
特征去噪提高对抗鲁棒性
论文地址:Feature Denoising for Improving Adversarial Robustness | IEEE Conference Publication | IEEE Xplore
代码地址:https://github.com/facebookresearch/ImageNet-Adversarial-Training
相关解读博客:论文解读: | (CVPR2019)《Feature Denoising for Improving Adversarial Robustness》_RaySunWHUT-CSDN博客
(以下是我的阅读和阅读时的关键点记录,翻译难免不准确,自己理解吧,方便自己复习。博客分为两大部分,第一部分为直接翻译,第二部分为对应每一章内容的关键点记录整理和一些简单理解。)
目录
翻译模块
摘要
对图像分类系统的对抗攻击给卷积网络带来了挑战,也给理解卷积网络带来了机遇。本研究表明,对图像的对抗扰动会导致由这些网络构建的特征出现噪声。基于这一观察,我们开发了新的网络架构,通过特征去噪来增加对抗鲁棒性。具体来说,我们的网络包含使用非局部方法或其他过滤器去噪特征的块;整个网络是端到端训练的。当与对抗训练相结合时,我们的特征去噪网络大大提高了白盒和黑盒攻击设置下的对抗鲁棒性。在ImageNet上,在10次迭代PGD白盒攻击下,现有技术的准确率为27.9%,我们的方法达到55.7%;即使在极端的2000年迭代PGD白盒攻击下,我们的方法也能保证42.6%的准确率。我们的方法在2018年对抗式攻击和防御竞赛(CAAD)中排名第一-它在一个秘密的、类似imagenet的测试数据集上对48个未知的攻击者实现了50.6%的分类精度,超过亚军方法约10%。有关代码载于https://github.com/facebookresearch/ImageNet-Adversarial-Training
1. 介绍
对图像分类系统[20]的对抗攻击给图像增加了小扰动,导致这些系统做出不正确的预测。虽然这些干扰通常难以察觉,或被视为图像中的小“噪声”,但这些攻击对于即使是最成功的基于卷积网络的系统也是非常有效的[11,14]。对敌攻击的成功导致了卷积网络在现实世界应用中的安全威胁,但同样重要的是,它表明这些网络执行的计算与人类大脑中的计算有很大的不同。
图1显示了一个随机选择的ResNet[9]的特征映射,应用于一个干净的图像(上)和它的对手摄动(下)。由图可知,对抗扰动在像素空间较小,但在网络的特征图中会产生非常大的“噪声”。而干净图像的特征似乎主要集中在图像中的语义信息内容上,对抗图像的特征映射也在语义无关的区域被激活。图2显示了使用相同模式的更多示例。
图1所示。在imagenet训练的ResNet-50[9]的res3block中的特征映射应用于一个干净的图像(上)和它的对手摄动(下)。
利用PGD[16]产生对抗扰动,最大扰动16(256)。在这个例子中,敌对的图像被错误地识别为“空间加热器”;真正的标签是“数字时钟”。基于这一观察结果,我们探索了特征降噪方法,以提高卷积网络对抗敌方攻击的鲁棒性。我们开发了新的卷积网络架构,配备了用于去除特征地图噪声的构建块。我们的网络是在敌对生成的样本上端到端训练的,允许它们学习减少特征地图扰动。
经验表明,使用非局部方法[2]进行特征去噪的网络性能最好,导致了与自注意[23]和非局部网络[24]相关的模型。我们的消融研究表明,使用均值滤波器、中值滤波器和双边滤波器[21]进行特征去噪也能提高对抗鲁棒性,这表明特征去噪是一个很好的设计原则。
我们的模型在对抗对ImageNet[18]具有高度挑战性的白盒攻击方面优于目前最先进的技术。在10次迭代PGD攻击[16]的情况下,我们报告ImageNet上的分类准确率为55.7%,大大超过了现有技术在相同攻击协议下[10]的27.9%。即使在面对2000- iterationpgd攻击时,我们的模型也达到了42.6%的准确率。我们的消融实验也表明,特征去噪在白盒设置下持续改善对抗防御结果。
我们的网络在黑盒攻击的背景下也是非常有效的。基于该方法的网络在2018年CAAD竞赛中,在严格的“全有或全无”标准下,对48个未知攻击者的攻击准确率达到50.6%,获得了良好的防御效果。与2018年CAAD亚军模型相比,这一精度绝对提高了10%(相对提高了20%)。我们还进行了消融实验,在该实验中,我们抵御了来自caad2017[13]的5个最强的攻击者,证明了特征去噪的潜力。
2. 相关工作
对抗训练[6,10,16]通过在训练过程中实时生成的对抗图像上的训练网络来防御对抗扰动。对抗训练是目前对抗白盒攻击的最先进的鲁棒性;我们用它来训练我们的网络。对抗logit paring(ALP)[10]是一种对抗训练,它鼓励一个网络的logit预测为一个干净的图像和它的对抗对手是相似的。ALP可以被解释为“去噪”对敌对图像的logit预测,使用干净图像的logit作为“无噪声”的参考。
其他增加对抗鲁棒性的方法包括像素去噪。Liaoet al.[15]提出使用高级特征来引导像素去噪;相反,我们的去噪直接应用于特征。guob[8]等通过不可微图像预处理对图像进行变换,如图像拼接[4]、总方差最小化[17]和量化。虽然这些防御在黑盒设置中可能是有效的,但它们可以在白盒设置中被绕过,因为攻击者可以近似其不可微计算[1]的梯度。与[8]相比,我们的特征去噪模型是可微分的,但仍然能够提高对非常强的白盒攻击的对抗鲁棒性。
3. 噪声特性
对抗性图像是通过向图像添加摄动来创建的,摄动的大小按照一定的范数(例如,L∞或l2)来限制。这些干扰被认为是人类无法察觉的,或者被认为是不会妨碍人类识别视觉内容的噪音。尽管在像素级扰动被限制为较小,但在特征级卷积网络中没有这样的约束。事实上,当图像通过网络传播时,对抗图像引起的特征扰动会逐渐增加[15,8],特征映射中不存在的激活会产生幻觉。换句话说,网络中各层所进行的转换加剧了扰动,而幻觉激活可以压倒真实信号所引起的激活,从而导致网络做出错误的预测。
我们定性地通过可视化它们所产生的特征图来展示对抗图像的这些特征。给定一个干净的图像和它的对手干扰图像,我们使用相同的网络(这里是ResNet-50[9])来计算它在隐藏层中的激活情况。图1和图2展示了从网络中间(特别是从res3block中)提取的干净和对抗图像上相同特征图的典型例子。这些图表明,对应于对抗图像的特征映射在没有类似于特征噪声的相关视觉内容的区域有激活。假设强烈的激活表明图像内容的语义信息的存在(正如经常假设的[27]),敌对图像产生的激活揭示了为什么模型预测被改变。(这快有点绕)
在本研究中,我们试图通过特征去噪来解决这个问题。在图3中,我们将对抗图像的特征图可视化,在特征去噪操作之前和之后(详细信息见下一节)。从图中可以看出,特征去噪操作可以成功地抑制特征图中的大部分噪声,使响应集中在视觉上有意义的内容上。在下一节中,我们将提供经验证据,表明执行特征去噪操作的模型确实提高了对抗鲁棒性。
在我们继续描述我们的方法之前,我们注意到,虽然特征噪声可以很容易地定性地观察,但很难定量地测量这种噪声。我们发现比较不同模型之间的特征噪声水平是非常重要的,特别是当网络结构和/或训练方法(标准或对抗)发生变化时。端到端训练后,在网络中添加一个去噪块,往往会改变所有特征的大小/分布。然而,我们相信观察到的嘈杂的特征反映了与敌对图像相关的真实现象。
图3。去噪前(左)和去噪后(右)的对抗图像及其特征图(图4蓝框)。
在这里,每一对特征映射都来自同一个经过对抗训练的ResNet-50中res3block的相同通道,该通道配备了(高斯)非局部手段去噪块。
每个像素攻击者有一个最大扰动16
4. 去噪特征图
基于上述经验观察,我们提出通过在卷积网络的中间层添加去噪块来提高对抗鲁棒性。通过对抗性训练,将去噪块与网络各层进行端到端联合训练。端到端对抗训练允许产生的网络(部分)消除依赖于数据的特征映射噪声,即攻击者所产生的噪音。它还通过考虑早期图层的变化如何影响后期图层的特征/噪声分布,自然地处理多个图层的噪声。
根据经验,我们发现最佳的去噪块是由机器翻译中常用的自注意transformers[23]和用于视频分类的非局部网络[24]激发的。在本研究中,我们重点研究去噪块的设计和去噪效果。除了非局部均值外,我们还在卷积网络中实验了更简单的去噪操作,如双边滤波、均值滤波和中值滤波。
4.1. 去噪块
图4显示了去噪块的一般形式。块的输入可以是卷积神经网络中的任何特征层。去噪块通过非局部方法或其他变量等去噪操作对输入特征进行处理。去噪后的表示先经过1×1卷积层处理,然后通过残差连接[9]添加到块的输入中。
图4。一个通用的去噪块。它用1×1卷积和单位跳跃连接[9]包装去噪操作(如非局部均值、双边均值、中值滤波器)。
图4中的设计灵感来自于self-attention[23]和non-local blocks[24]。然而,只有非局部意味着去噪块中的[2]操作实际上在去噪;1×1卷积和残差连接主要用于特征组合。虽然各种操作可以抑制噪声,但它们也会影响信号。利用残差连接可以帮助网络保留信号,通过与整个网络端到端学习的1×1卷积来调整去噪和保留信号之间的权衡。我们将介绍消融研究,表明残差连接和1×1卷积都有助于去噪块的有效性。去噪块的一般形式允许我们探索各种去噪操作,如下面所介绍的。
4.2. 去噪操作
(lan得自己编辑公式了,在这里直接借用一篇看好的博客。)论文解读: | (CVPR2019)《Feature Denoising for Improving Adversarial Robustness》_RaySunWHUT-CSDN博客
这一部分,我们将尝试在 Feature Denoising 的 denoising operation 模块中尝试几种不同的去噪过滤器(denoising filter),并根据最后实验结果的优劣进行判断具体选择哪一个filter。
1、Non-local means(非局部均值):
(此部分关于公式具体含义说明可以先看原文,我这边暂不深入。)
第二种:与高斯非局部均值不同,在点积非局部均值中,加权均值的权值和不大于1。然而,定性评估表明它确实抑制了特征中的噪声。实验还表明,该版本提高了对抗鲁棒性。有趣的是,我们发现,为了使模型能很好地工作,没有必要在非本地方法的点积版本中嵌入。这与高斯非局部均值不同,在高斯非局部均值中,嵌入是必不可少的。dotproduct版本提供了一个不带额外参数的去噪操作(图5中的蓝框)。
图5改编自[24],展示了基于非局部均值的去噪块的实现。
图5。采用非局部方法的块作为去噪操作。蓝色部分说明了Eqn中非局部方法的实现。
注意特征张量的形状,并进行相应的整形/变换:这里,我们以256通道为例,对特征图的高度和宽度进行了硬件计算。
如果使用softmax,则为高斯版本(使用适当的1×1卷积嵌入;图中省略);如果不使用softmax,则为点积版本。2、Bilateral filter(双侧过滤器):
方程中的非局部均值易于转化(1)变成“局部均值”。这样就产生了经典的双边滤波器[21],它是边缘保持去噪的常用方法。它的正式定义为:
Bilateral filter 是1998 在 ICCV 上提出的方法,虽然已经提出了很久,但是对于一些应用依然非常有效,尤其适用于 边缘保护去噪(edge-preserving denoising).Bilateral Filter 定义如下:
3、Mean filter:也许去噪最简单的形式是均值滤波器(大步为1的平均池化)。均值滤波器减少了噪声,但也平滑了结构,因此预期它们的性能比上述加权平均值更差是合理的。然而,有些令人惊讶的是,实验表明,使用均值滤波器作为去噪操作的去噪块仍然可以提高对抗鲁棒性。
(博客补充)均值滤波器亦即 步幅(stride) = 1 的平均池化(average pooling)。
4、Median filter(中值过滤器):
中值过滤器善于移除椒盐噪声(salt-and-pepper noise) 和同类异常值;
但在深度学习中,中值滤波器很少被使用;但通过实验证明,使用中值滤波器作为去噪操作也可以提高 对抗鲁棒性(adversarial robustness) .Median Filter 定义如下:
中间值在一个本地区域Ω(i)上,并且为每个通道分别执行。中值滤波器在去除椒盐噪声和类似的异常值方面是众所周知的。
训练包含中值滤波器的卷积网络是一个开放的问题,但我们发现实验中使用中值滤波器作为去噪操作也可以提高对抗鲁棒性。总之,我们的研究探索了一个丰富的去噪操作集合。第6节报告了上述所有去噪操作的结果。
略
小结模块
摘要
- 对图像分类系统的对抗攻击(新领域)给卷积网络带来了挑战,也给理解卷积网络带来了机遇。
- 对图像的对抗扰动会导致由这些网络构建的特征出现噪声。
- 基于这一观察,开发了新的网络架构,通过特征去噪来增加对抗鲁棒性。
- 网络包含使用非局部方法或其他过滤器去噪特征的块;整个网络是端到端训练的。(端到端需要怎么理解??)
- 当与对抗训练相结合时,我们的特征去噪网络大大提高了白盒和黑盒攻击设置下的对抗鲁棒性(专有名词)。
略.......
1. 介绍
图1显示了一个随机选择的ResNet[9]的特征映射,应用于一个干净的图像(上)和它的对手摄动(下)。
- 干净图像的特征似乎主要集中在图像中的语义信息内容上。
- 对抗扰动在像素空间较小,但在网络的特征图中会产生非常大的“噪声”。对抗图像的特征映射也在语义无关的区域被激活。
- 图2显示了使用相同模式的更多示例。
图1所示。在imagenet训练的ResNet-50[9]的res3block中的特征映射应用于一个干净的图像(上)和它的对手摄动(下)。
利用PGD[16]产生对抗扰动,最大扰动16(256)。在这个例子中,敌对的图像被错误地识别为“空间加热器”;真正的标签是“数字时钟”。
图2。更多类似于图1的示例。我们展示了对应于干净图像(上)和它们的对抗摄动版本(下)的特征图。
每对例子的特征映射来自同一个ResNet-50中同一个res3block的相同通道,对干净的图像进行训练。在像素域中攻击者有一个最大扰动 为1 6。
- 探索特征降噪方法,以提高卷积网络对抗敌方攻击的鲁棒性。
- 开发新的卷积网络架构,配备了用于去除特征地图噪声的构建块。网络是在敌对生成的样本上端到端训练的,允许它们学习减少特征地图扰动。
经验表明,使用非局部方法[2]进行特征去噪的网络性能最好,导致了与自注意[23]和非局部网络[24]相关的模型。我们的消融研究表明,使用均值滤波器、中值滤波器和双边滤波器[21]进行特征去噪也能提高对抗鲁棒性,这表明特征去噪是一个很好的设计原则。
2. 相关工作
- 对抗训练[6,10,16]通过在训练过程中实时生成的对抗图像上的训练网络来防御对抗扰动。
- 对抗训练是目前对抗白盒攻击的最先进的鲁棒性;我们用它来训练我们的网络。
- 对抗logit paring(ALP)[10]是一种对抗训练,它鼓励一个网络的logit预测为一个干净的图像和它的对抗对手是相似的。ALP可以被解释为“去噪”对敌对图像的logit预测,使用干净图像的logit作为“无噪声”的参考。
其他增加对抗鲁棒性的方法包括像素去噪。
- Liaoet al.[15]提出使用高级特征来引导像素去噪;相反,我们的去噪直接应用于特征。
- guob[8]等通过不可微图像预处理对图像进行变换,如图像拼接[4]、总方差最小化[17]和量化。
虽然这些防御在黑盒设置中可能是有效的,但它们可以在白盒设置中被绕过,因为攻击者可以近似其不可微计算[1]的梯度。
- 与[8]相比,我们的特征去噪模型是可微分的,但仍然能够提高对非常强的白盒攻击的对抗鲁棒性。
3. 噪声特性
- 当图像通过网络传播时,对抗图像引起的特征扰动会逐渐增加[15,8],特征映射中不存在的激活会产生幻觉。网络中各层所进行的转换加剧了扰动,而幻觉激活可以压倒真实信号所引起的激活,从而导致网络做出错误的预测。
- 通过特征去噪来解决这个问题。在图3中,我们将对抗图像的特征图可视化,在特征去噪操作之前和之后(详细信息见下一节)。特征去噪操作可以成功地抑制特征图中的大部分噪声,使响应集中在视觉上有意义的内容上。
- 虽然特征噪声可以很容易地定性地观察,但很难定量地测量这种噪声。比较不同模型之间的特征噪声水平是非常重要的,特别是当网络结构和/或训练方法(标准或对抗)发生变化时。
图3。去噪前(左)和去噪后(右)的对抗图像及其特征图(图4蓝框)。
在这里,每一对特征映射都来自同一个经过对抗训练的ResNet-50中res3block的相同通道,该通道配备了(高斯)非局部手段去噪块。
每个像素攻击者有一个最大扰动16
图片解读:特别是蟹,(去噪以后确实留下来这些足以提供分类信息的关键特征)
4. 去噪特征图
- 提出通过在卷积网络的中间层添加去噪块来提高对抗鲁棒性。
- 通过对抗性训练,将去噪块与网络各层进行端到端联合训练。端到端对抗训练允许产生的网络(部分)消除依赖于数据的特征映射噪声,即攻击者所产生的噪音。
- 它还通过考虑早期图层的变化如何影响后期图层的特征/噪声分布,自然地处理多个图层的噪声。
- 发现最佳的去噪块是由机器翻译中常用的自注意transformers[23]和用于视频分类的非局部网络[24]激发的。我们重点研究去噪块的设计和去噪效果。
- 除了非局部均值外,我们还在卷积网络中实验了更简单的去噪操作,如双边滤波、均值滤波和中值滤波。
4.1. 去噪块
图4显示了去噪块的一般形式。
- 块的输入可以是卷积神经网络中的任何特征层。
- 去噪块通过非局部方法或其他变量等去噪操作对输入特征进行处理。
- 去噪后的表示先经过1×1卷积层处理,然后通过残差连接[9]添加到块的输入中。
图4。一个通用的去噪块。它用1×1卷积和单位跳跃连接[9]包装去噪操作(如非局部均值、双边均值、中值滤波器)。
图4中的设计灵感来自于self-attention[23]和non-local blocks[24]。
- 只有非局部意味着去噪块中的[2]操作实际上在去噪;
- 1×1卷积和残差连接主要用于特征组合。虽然各种操作可以抑制噪声,但它们也会影响信号。
利用残差连接可以帮助网络保留信号,通过与整个网络端到端学习的1×1卷积来调整去噪和保留信号之间的权衡。
4.2. 去噪操作
(lan得自己编辑公式了,在这里直接借用一篇看好的博客。)论文解读: | (CVPR2019)《Feature Denoising for Improving Adversarial Robustness》_RaySunWHUT-CSDN博客
这一部分,我们将尝试在 Feature Denoising 的 denoising operation 模块中尝试几种不同的去噪过滤器(denoising filter),并根据最后实验结果的优劣进行判断具体选择哪一个filter。
1、Non-local means(非局部均值):
(此部分关于公式具体含义说明可以先看原文,我这边暂不深入。)
第二种:与高斯非局部均值不同,在点积非局部均值中,加权均值的权值和不大于1。然而,定性评估表明它确实抑制了特征中的噪声。实验还表明,该版本提高了对抗鲁棒性。有趣的是,我们发现,为了使模型能很好地工作,没有必要在非本地方法的点积版本中嵌入。这与高斯非局部均值不同,在高斯非局部均值中,嵌入是必不可少的。dotproduct版本提供了一个不带额外参数的去噪操作(图5中的蓝框)。
图5改编自[24],展示了基于非局部均值的去噪块的实现。
图5。采用非局部方法的块作为去噪操作。蓝色部分说明了Eqn中非局部方法的实现。注意特征张量的形状,并进行相应的整形/变换:这里,我们以256通道为例,对特征图的高度和宽度进行了硬件计算。如果使用softmax,则为高斯版本(使用适当的1×1卷积嵌入;图中省略);如果不使用softmax,则为点积版本。
2、Bilateral filter(双侧过滤器):
方程中的非局部均值易于转化(1)变成“局部均值”。这样就产生了经典的双边滤波器[21],它是边缘保持去噪的常用方法。它的正式定义为:
Bilateral filter 是1998 在 ICCV 上提出的方法,虽然已经提出了很久,但是对于一些应用依然非常有效,尤其适用于 边缘保护去噪(edge-preserving denoising).Bilateral Filter 定义如下:
3、Mean filter:也许去噪最简单的形式是均值滤波器(大步为1的平均池化)。均值滤波器减少了噪声,但也平滑了结构,因此预期它们的性能比上述加权平均值更差是合理的。然而,有些令人惊讶的是,实验表明,使用均值滤波器作为去噪操作的去噪块仍然可以提高对抗鲁棒性。
(博客补充)均值滤波器亦即 步幅(stride) = 1 的平均池化(average pooling)。
4、Median filter(中值过滤器):
中值过滤器善于移除椒盐噪声(salt-and-pepper noise) 和同类异常值;
但在深度学习中,中值滤波器很少被使用;但通过实验证明,使用中值滤波器作为去噪操作也可以提高 对抗鲁棒性(adversarial robustness) .Median Filter 定义如下:
中间值在一个本地区域Ω(i)上,并且为每个通道分别执行。中值滤波器在去除椒盐噪声和类似的异常值方面是众所周知的。
训练包含中值滤波器的卷积网络是一个开放的问题,但我们发现实验中使用中值滤波器作为去噪操作也可以提高对抗鲁棒性。总之,我们的研究探索了一个丰富的去噪操作集合。第6节报告了上述所有去噪操作的结果。
略
其他一些奇奇怪怪想法(非专业理解):
- 把这篇文章看做先是攻击者来制造“噪声”再来设计网络“去噪”,验证去燥效果。