当前位置:   article > 正文

针对后门攻击的防御手段之Neural Cleanse_neural cleanse防御方法

neural cleanse防御方法

介绍

后门攻击是一类针对深度学习的攻击,其主要组成部分有两个:

  • 触发器
  • 带后门的模型

当模型接收到带有触发器的输入,便会导致对应的触发结果。
并且,一但没有触发器,模型的表现和正常的模型相似。

关于后门攻击更多的介绍,可以参考我的这篇文章

今天主要讲的是来自于2019年SP的一篇文章“Neural Cleanse: Identifying and Mitigating Backdoor Attacks in Neural Networks”

作者基于一个重要的假设:“带有后门的模型所对应的触发器,要比利用正常模型生成的‘触发器’要小得多”

如下图所示:
假设
在正常模型之中,C类别想要被分类到A类别,所需要操作的最小变化量记做 Δ \Delta Δ
在后门模型中,沿着触发器方向(Trigger Dimension),所需要操作的最小变化量会小于 Δ \Delta Δ

这个直觉的想法是整篇文章的精髓所在

顺着这个直觉,我们直接地可以想到,那只要我们对类别进行逆向,反向地构造出每个类别的触发器,看看这些触发器的大小,不就可以知道哪些类别可能被植入后门了。

如何反向构造可能的触发器

首先给出带触发器的输入的形式:
带触发器的输入
其中 Δ \Delta Δ是触发器, m m m是平滑系数, x x x是输入。

通过求解下述优化问题,得到一个触发器和对应的系数
求解

其中 y t y_t yt是触发器触发的目标类别。

如何利用所构造的触发器进行后门检测

有了这些构造的可能的“触发器”,利用L1范数来描述触发器的大小,基于之前的假设,我们就可以进行异常检测了。

这里文章使用的是绝对中位差(Median Absolute Deviation,MAD)
M A D = m e d i a n ( ∣ X − X ˉ ∣ ) MAD = median(|X-\bar{X}|) MAD=median(XXˉ)
其中 m e d i a n ( ⋅ ) median(\cdot) median()是取中位数, X ˉ \bar{X} Xˉ是均值

利用绝对中位差可以计算出一个异常指标(anomaly index, a-index)
a-index = x 1.4826 × M A D \text{a-index} = \frac{x}{1.4826\times MAD} a-index=1.4826×MADx

当这个指标大于2的时候,就有95%的概率是异常值

Anomaly Index
如上图所示,被植入后门的模型的异常指标都要正常模型要高。

L1范数
可以看到,对于被植入后门的模型,所逆向生成的触发器,L1范数是比较小的。

裁剪神经元,让后门失效!

文章发现了触发器通常会使得神经元的激活值偏高,这里取的是倒数第二层的神经元。

平均的激活值

逆向出来的触发器和真实的触发器,所导致的激活值都比正常图片要高,我们就可以通过移除较高值来让后门失效。

裁剪对于正确率和后门的影响

如上图所示,裁剪会令正常任务的正确率降低,同时使后门的成功率降低。可以看到裁剪比例达到0.2左右的时候已经可以使得后门完全失效,同时正确率降低的幅度也不多。

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号