PRIMA: General and Precise Neural Network Certification via Scalable Convex Hull Approximations
About
Formal verification of neural networks is critical for their safe adoption in real-world applications. However, designing a precise and scalable verifier which can handle different activation functions, realistic network architectures and relevant specifications remains an open and difficult challenge. In this paper, we take a major step forward in addressing this challenge and present a new verification framework, called PRIMA. PRIMA is both (i) general: it handles any non-linear activation function, and (ii) precise: it computes precise convex abstractions involving multiple neurons via novel convex hull approximation algorithms that leverage concepts from computational geometry. The algorithms have polynomial complexity, yield fewer constraints, and minimize precision loss. We evaluate the effectiveness of PRIMA on a variety of challenging tasks from prior work. Our results show that PRIMA is significantly more precise than the state-of-the-art, verifying robustness to input perturbations for up to 20%, 30%, and 34% more images than existing work on ReLU-, Sigmoid-, and Tanh-based networks, respectively. Further, PRIMA enables, for the first time, the precise verification of a realistic neural network for autonomous driving within a few minutes.
Related benchmarks
| Task | Dataset | Result | Rank | |
|---|---|---|---|---|
| Neural Network Verification | MNIST 1000 images | Verified Accuracy77.5 | 30 | |
| Robustness Verification | CIFAR-10 epsilon=2/255 (first 200 examples) | Verified Accuracy53.5 | 20 | |
| Robust Verification | MNIST (test) | Average Time (s)135.9 | 17 | |
| Neural Network Verification | CIFAR 1000 images | Verified Accuracy48.3 | 13 | |
| Neural Network Verification | oval VNN-COMP 2022 | Verification Time (s)233.8 | 10 | |
| Robustness Verification | MNIST epsilon=0.3 (first 200 examples) | Verified Accuracy44.5 | 8 |