SYNTOLOGY HomeExplorerAtlasCodeMethodologyAboutDevelopersFeedPricing
Paper · 1912.01329 · 2019

Neural Network Branching for Neural Network Verification

arXiv · PDF · Open in the Atlas

Code that ran

We lifted 6 functions out of this paper's own repositories and ran 5 of them in a sandbox. "Ran" means the function executed on a synthesized input and returned a value. It is not a reproduction of the paper's results.

RepositoryRoleRan
oval-group/GNN_branching canonical 5 of 6
FunctionStatusWhere it lives
batch Ran oval-group/GNN_branching/convex_adversarial/convex_adversarial/dual_layers.py
code served (permissive licence) · get_code("778274b3fb463e7e")
compute_ratio Ran oval-group/GNN_branching/graphnet/graph_conv.py
code served (permissive licence) · get_code("a337544365393d55")
compute_ratio Ran oval-group/GNN_branching/plnn/kw_score_conv.py
code served (permissive licence) · get_code("bf9303e408ea11d0")
init_mu Ran oval-group/GNN_branching/graphnet/graph_conv.py
code served (permissive licence) · get_code("4c631cba3fce56b2")
unbatch Ran oval-group/GNN_branching/convex_adversarial/convex_adversarial/dual_layers.py
code served (permissive licence) · get_code("9efb427bc4cdf3df")
robust_loss_parallel Not yet run oval-group/GNN_branching/convex_adversarial/convex_adversarial/dual_network.py
code served (permissive licence) · get_code("1cc8bc10c156fe29")

Repositories linked to this paper

Some links come from the archived Papers with Code dataset (CC BY-SA 4.0): attribution and licence.

Abstract

Formal verification of neural networks is essential for their deployment in safety-critical areas. Many available formal verification methods have been shown to be instances of a unified Branch and Bound (BaB) formulation. We propose a novel framework for designing an effective branching strategy for BaB. Specifically, we learn a graph neural network (GNN) to imitate the strong branching heuristic behaviour. Our framework differs from previous methods for learning to branch in two main aspects. Firstly, our framework directly treats the neural network we want to verify as a graph input for the GNN. Secondly, we develop an intuitive forward and backward embedding update schedule. Empirically, our framework achieves roughly $50\%$ reduction in both the number of branches and the time required for verification on various convolutional networks when compared to the best available hand-designed branching strategy. In addition, we show that our GNN model enjoys both horizontal and vertical transferability. Horizontally, the model trained on easy properties performs well on properties of increased difficulty levels. Vertically, the model trained on small neural networks achieves similar performance on large neural networks.

For agents

The same record, over MCP at https://syntology.ai/mcp:

get_harvested_code_for_paper("1912.01329")
get_code_for_paper("1912.01329")
have("1912.01329")

Connect an agent — have() is free.