[论文解读] Input Validation for Neural Networks via Runtime Local Robustness Verification
本文提出在运行时使用局部鲁棒性验证来验证神经网络的输入,利用正确分类输入的鲁棒性半径显著大于错误分类或对抗性样本这一观察。通过设置阈值或将鲁棒性半径建模为正态分布,该方法提升了模型准确率,并有效防御对抗攻击,尤其是强对抗攻击。
Local robustness verification can verify that a neural network is robust wrt. any perturbation to a specific input within a certain distance. We call this distance Robustness Radius. We observe that the robustness radii of correctly classified inputs are much larger than that of misclassified inputs which include adversarial examples, especially those from strong adversarial attacks. Another observation is that the robustness radii of correctly classified inputs often follow a normal distribution. Based on these two observations, we propose to validate inputs for neural networks via runtime local robustness verification. Experiments show that our approach can protect neural networks from adversarial examples and improve their accuracies.
研究动机与目标
- 为解决神经网络对对抗性样本的脆弱性问题,此类样本可能在安全关键应用中导致严重故障。
- 探究鲁棒性半径是否可作为可靠指标,以区分有效输入、自然错误分类输入与对抗性样本。
- 基于局部鲁棒性验证,开发无需全局验证或oracle访问的实用运行时输入验证技术。
- 通过在推理时过滤鲁棒性半径较低的输入,提升神经网络的鲁棒性与准确率。
提出的方法
- 该方法使用局部鲁棒性验证计算输入的鲁棒性半径,衡量网络预测保持不变的最大扰动大小。
- 利用经验观察:有效输入的鲁棒性半径远大于对抗性或自然错误分类输入。
- 提出基于阈值的验证方法,将鲁棒性半径低于用户定义阈值的输入拒绝,视为潜在对抗性或损坏输入。
- 引入基于分布的验证方法,将干净输入的鲁棒性半径建模为正态分布,并将异常值标记为可疑。
- 该方法使用近似鲁棒性验证技术,可扩展至大型网络,实现实时推理时检查。
- 该方法无需重新训练或架构修改,可作为后处理防御手段直接应用。
实验结果
研究问题
- RQ1鲁棒性半径能否作为有效输入、自然错误分类输入与对抗性样本之间的可靠判别器?
- RQ2正确分类输入的鲁棒性半径是否遵循一致的统计分布(如正态分布)?
- RQ3局部鲁棒性验证能否在推理时有效用于输入验证并提升模型准确率?
- RQ4所提方法在防御强对抗攻击(尤其是白盒与黑盒场景)方面的有效性如何?
主要发现
- 有效输入的鲁棒性半径显著大于对抗性样本和自然错误分类输入,尤其在强攻击下更为明显。
- 正确分类输入的鲁棒性半径通常符合正态分布,支持基于统计建模的检测方法。
- 基于阈值的验证方法通过过滤低鲁棒性半径输入,提升了神经网络准确率,减少了误分类。
- 基于分布的方法能有效检测连续或渐进式攻击,通过识别鲁棒性半径异常的输入。
- 所提方法对强对抗攻击(包括白盒与黑盒攻击)均有效,且性能优于或匹配现有检测技术。
- 该方法实用且可扩展,可在无需重新训练或架构修改的情况下实现实时输入验证。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。