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


3.1 SentiNet 介绍
本文提出了一种针对视觉领域物理攻击检测的方法:SentiNet 。 SentiNet 的目标是识别会劫持模型预测的对手输入 。 具体而言 , SentiNet 的设计目标是在无需事先了解攻击内容的情况下 , 保护网络免受对抗性样本、触发特洛伊木马和后门的攻击 。 SentiNet 的核心思想是利用对手错误分类行为来检测攻击 。 首先 , SentiNet 使用模型可解释性和对象检测技术从输入场景中提取对模型预测结果影响最大的区域 。 然后 , SentiNet 将这些提取的区域应用于一组良性测试输入 , 并观察模型的行为 。 最后 , SentiNet 使用模糊技术将这些合成行为与模型在良性输入上的已知行为进行比较 , 以确定预测攻击行为 。 SentiNet 完整结构见图 10 。
避免自动驾驶事故,CV领域如何检测物理攻击?
文章图片

图 10. SentiNet 架构概述 。 使用输入的输出和类别生成掩模 , 然后将掩模反馈到模型中以生成用于边界分析和攻击分类的值
3.1.1 对抗性目标定位
本文方法的第一步是在给定的输入上定位可能包含恶意对象的区域 , 即识别输入 x 中有助于模型预测 y 的部分 。 因为物理攻击很小并且是局部的 , 在不包含攻击部分的输入上评估模型可能能够恢复 x 的真实类别 。
分段类别建议 。 本文提出的攻击检测从识别一组可能由模型 f_m 预测的类别开始 。 第一类是实际预测 , 即 y=f_m(x) 。 通过对输入 x 进行分段 , 然后对每个分段上的网络进行评估来识别其他类别 。 Algorithm 1 给出了通过输入分段判断类别的算法 。 可以使用不同的方法分割给定的输入 x , 包括滑动窗口和基于网络的区域建议等 。 本文方法使用了选择性搜索图像分割算法:选择性搜索根据在自然场景中发现的模式和边缘生成区域列表 , 然后 , 对每个给出的分段建议进行评估 , 并返回前 k 个置信度预测 , 其中 k 是 SentiNet 的配置参数 。
避免自动驾驶事故,CV领域如何检测物理攻击?
文章图片

掩模生成 。 针对模型预测的解释和理解问题 , 在过去几年中已经提出了多种针对性的方法 。 其中一种方法是 “量化” 输入的单个像素的相关性 。 这种方法聚焦于单个像素 , 因此可能会生成非连续像素的掩模 。 而稀疏掩模则可能会丢失恶意对象的元素 , 并且不适用于模型测试阶段 。 另外一种替代方法不在单个像素上操作 , 而是尝试恢复模型用于识别同类输入的可分性图像区域 。 但是 , 其中许多方法需要对基本模型进行修改和微调 , 例如类别激活映射(Class Activation Mapping , CAM)[8] , 这些修改可能会改变模型的行为 , 甚至包括 SentiNet 执行检测并防止被利用的恶意行为 。
作者表示 , 适合本文目标的方法是 Grad-CAM[9] , 这是一种模型解释技术 , 可以识别输入的连续空间区域 , 而不需要对原始模型进行修改 。 Grad-CAM 使用网络最后几层计算得到的梯度来计算输入区域的显著性 。 对于类别 c , Grad-CAM 计算模型输出 y^c 相对于模型最终汇聚层的 k 个特征图 A^k 的梯度(模型对类别 c 的 logit 得分) , 以得到(δ y^c)/(δ A^k) 。 每个过滤图的平均梯度值 , 或 "神经元重要性权重" 记作:
避免自动驾驶事故,CV领域如何检测物理攻击?
文章图片

最后 , 按神经元的重要性加权处理特征图 A^k , 并汇总以得到最终的 Grad-CAM 输出:
避免自动驾驶事故,CV领域如何检测物理攻击?
文章图片

Grad-CAM 的输出是图像正向重要性的一个粗略热图 , 由于模型的卷积层和池化层的下采样处理 , 其分辨率通常比输入图像低 。 最后 , 通过对热图进行二值化处理 , 以最大强度的 15% 为阈值生成掩模 。 作者使用这个掩模来分割 salient 区域 , 以便进行下一步的工作 。

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