避免自动驾驶事故,CV领域如何检测物理攻击?( 八 )


避免自动驾驶事故,CV领域如何检测物理攻击?
文章图片

其中 , P_pra 和 P_ori 分别代表来自对抗性输入和原始输入的输入模式(input patterns) 。 Φ:(A_i)^l(p)和Φ:(A_i)^l(o)分别表征由对抗性补丁和原始输入产生的神经元激活的集合 。 R 将神经元的激活映射到主要的局部输入模式 。 S 代表相似性指标 。
2)预测激活不一致度量:第二个不一致度量指标是在激活层面上 , 它用于衡量最后一个卷积层中对抗性输入和原始输入之间的激活幅度分布的不一致性 。 我们也使用一个类似的指标来衡量 , 具体如下:
避免自动驾驶事故,CV领域如何检测物理攻击?
文章图片

其中 , f_pra 和 I_ori 分别代表最后一个卷积层中由对抗性输入和原始输入数据产生的激活的幅度分布 。
对于上述两个不一致度量中使用到的信息 , 我们可以很容易地得到 P_pra 和 f_pra , 因为它们来自于输入数据 。 然而 , 由于自然输入数据的多样性 , P_ori 和 f_ori 并不容易得到 。 因此 , 我们需要合成能够提供输入的语义模式和激活量级分布的标准输入数据 。 可以从标准数据集中获得每个预测类别的合成输入数据 , 以及 , 通过向 CNN 输入一定数量的标准数据集 , 我们可以记录最后一个卷积层的平均激活幅度分布 。 此外 , 我们可以定位每个预测类别的主要输入的语义模式 。
2.1.3 基于 CNN 自我验证和数据恢复的物理对抗性攻击防御
上述两个不一致展示了物理对抗性攻击和自然图像识别之间的区别 , 即输入模式和预测激活 。 通过利用不一致性指标 , 作者提出了一种防御方法 , 其中包括 CNN 决策过程中的自我验证和数据恢复 。 具体来说 , 整个方法流程描述如下 。
自我验证 。 (1)首先将输入项输入到 CNN 推理中 , 获得预测类别结果 。 (2) 接下来 , CNN 可以从实际输入中定位主要激活源 , 并在最后一个卷积层中获得激活 。 (3)然后 , CNN 利用所提出的指标来衡量实际输入与预测类别的合成数据之间的两个不一致指标 。 (4) 一旦任何一个不一致指标超过了给定的阈值 , CNN 将认为该输入是一个对抗性输入 。
数据恢复 。 (5) 在自我验证阶段检测到物理对抗性攻击后 , 进一步应用数据恢复方法来恢复被攻击的输入数据 。 具体来说 , 作者利用图像修复和激活去噪方法分别来恢复输入的图像和音频 。
2.2 对图像物理对抗攻击的防御
2.2.1 图像场景中的防御过程
主要激活模式定位 。 对于图像物理对抗性攻击的防御 , 主要依赖于输入模式层面的输语义不一致 。 因此 , 作者采用 CNN 激活可视化方法—类别激活映射(Class Activation Mapping , CAM)来定位输入图像的主要激活源 [8] 。 令 A_k(x, y) 表示在空间位置 (x, y) 的最后一个卷积层的第 k 个激活值 。 我们可以计算出最后一个卷积层中空间位置 (x, y) 的所有激活的总和 , 即:
避免自动驾驶事故,CV领域如何检测物理攻击?
文章图片

其中 , K 是最后一个卷积层中激活的总数 。 A_T(x, y)的值越大 , 表明输入图像中相应空间位置 (x, y) 的激活源对分类结果越重要 。
不一致推导 。 根据初步分析 , 输入的对抗性补丁比自然输入的语义模式包含更多的高频信息 。 因此 , 作者用一系列的变换来转换这些 patterns , 如图 6 所示 。 经过二维快速傅里叶变换(2D-FFT)和二进制转换 , 我们可以观察到对抗性输入和语义合成输入之间的显著差异 。
避免自动驾驶事故,CV领域如何检测物理攻击?

特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。