SECRJul 27, 2018

Symbolic Execution for Deep Neural Networks

arXiv:1807.10439v155 citations
Originality Incremental advance
AI Analysis

This addresses safety and security concerns in DNN applications, but it is incremental as it builds on existing program analysis techniques.

The paper tackles the problem of validating deep neural networks (DNNs) for safety and security by introducing DeepCheck, a method based on symbolic execution that translates DNNs into imperative programs for analysis, and it shows experimental results on the MNIST dataset for tasks like identifying important pixels and generating 1-pixel and 2-pixel attacks.

Deep Neural Networks (DNN) are increasingly used in a variety of applications, many of them with substantial safety and security concerns. This paper introduces DeepCheck, a new approach for validating DNNs based on core ideas from program analysis, specifically from symbolic execution. The idea is to translate a DNN into an imperative program, thereby enabling program analysis to assist with DNN validation. A basic translation however creates programs that are very complex to analyze. DeepCheck introduces novel techniques for lightweight symbolic analysis of DNNs and applies them in the context of image classification to address two challenging problems in DNN analysis: 1) identification of important pixels (for attribution and adversarial generation); and 2) creation of 1-pixel and 2-pixel attacks. Experimental results using the MNIST data-set show that DeepCheck's lightweight symbolic analysis provides a valuable tool for DNN validation.

Code Implementations1 repo
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes