Skip to main content
QUICK REVIEW

[论文解读] Correctness Verification of Neural Networks

Yichen Yang, Martin Rinard|arXiv (Cornell University)|Jun 3, 2019
Adversarial Robustness in Machine Learning参考文献 26被引用 9
一句话总结

本文提出了一种新颖的框架,用于在感知任务中全局验证神经网络的正确性,通过指定一个世界状态空间和一个将状态映射到输入的观测过程。利用铺砌(tiling)和鲁棒性验证技术,该框架计算了在整个目标输入空间上的预测误差上界,并检测出超出预期输入域的输入,从而确保正确性保证或标记不安全输入。

ABSTRACT

We present a novel framework for specifying and verifying correctness globally for neural networks on perception tasks. Most previous works on neural network verification for perception tasks focus on robustness verification. Unlike robustness verification, which aims to verify that the prediction of a network is stable in some local regions around labelled points, our framework provides a way to specify correctness globally in the whole target input space and verify that the network is correct for all target inputs (or find the regions where the network is not correct). We provide a specification through 1) a state space consisting of all relevant states of the world and 2) an observation process that produces neural network inputs from the states of the world. Tiling the state and input spaces with a finite number of tiles, obtaining ground truth bounds from the state tiles and network output bounds from the input tiles, then comparing the ground truth and network output bounds delivers an upper bound on the network output error for any inputs of interest. The presented framework also enables detecting illegal inputs -- inputs that are not contained in (or close to) the target input space as defined by the state space and observation process (the neural network is not designed to work on them), so that we can flag when we don't have guarantees. Results from two case studies highlight the ability of our technique to verify error bounds over the whole target input space and show how the error bounds vary over the state and input spaces.

研究动机与目标

  • 解决目前缺乏系统性方法来验证神经网络在整个目标输入空间上的正确性,而不仅仅是局部鲁棒性的问题。
  • 为感知任务中的神经网络提供形式化正确性保证,确保在定义的输入空间内所有输入的预测结果均在指定容差范围内准确。
  • 检测落入预期输入空间之外的输入,将其标记为潜在不安全或不支持的输入。
  • 实现对神经网络在多样化输入区域行为的系统性验证,包括识别预测可能失效的脆弱区域。

提出的方法

  • 定义一个表示所有相关世界状态的状态空间,并定义一个将状态映射到神经网络输入的观测过程,从而构成目标输入空间。
  • 将状态空间划分为有限个区域,每个区域代表一组具有有界真实输出的世界状态。
  • 通过观测过程将每个状态区域投影到输入空间,形成输入区域,每个区域具有可能输入的边界框。
  • 使用鲁棒性验证技术,为每个输入区域计算神经网络输出的上下界。
  • 将来自状态区域的真实输出边界与来自输入区域的网络输出边界进行比较,从而推导出每个区域的预测误差上界。
  • 将超出目标输入空间的输入标记为非法输入,因为在这些区域不适用任何正确性保证。

实验结果

研究问题

  • RQ1我们能否形式化地验证神经网络在整个月标输入空间内均以指定容差产生正确预测,而不仅仅是局部验证?
  • RQ2如何系统性地检测出超出神经网络预期输入域的输入,因为在这些区域正确性保证不成立?
  • RQ3输入空间铺砌的分辨率和验证算法的选择对验证性能和准确率有何影响?
  • RQ4该框架如何识别出神经网络可能对误分类具有脆弱性的输入空间区域?

主要发现

  • 该框架成功验证了神经网络在目标输入空间的大部分区域中保持了低误差,且所有验证区域的最大误差均被有界。
  • 在激光雷达(LiDAR)案例研究中,基于SAT的自适应铺砌验证实现了98.3%的区域验证率,且相比固定铺砌快5倍。
  • 基于SAT的BNN验证速度比基于MILP的实值网络验证快200至500倍,展现出显著的性能提升。
  • 更小的铺砌尺寸减少了非法输入检测中的误报,因为边界框中的冗余空间被最小化。
  • 该框架识别出在感知上相似但导致误分类的输入,揭示了网络在特定输入区域的脆弱性。
  • 该方法能够检测出不在目标输入空间内的输入,从而实现在运行时对潜在不安全预测的标记。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。