MLLGJul 28, 2018

TensorFuzz: Debugging Neural Networks with Coverage-Guided Fuzzing

arXiv:1807.10875v1359 citationsHas Code
Originality Highly original
AI Analysis

This work addresses the challenge of interpreting and debugging neural networks, particularly for rare input errors, which is a significant problem for machine learning practitioners and researchers.

The authors tackled the problem of debugging neural networks by developing coverage-guided fuzzing (CGF) methods that use random input mutations guided by a coverage metric to discover errors in rare inputs, resulting in an open-source library called TensorFuzz that successfully found numerical errors, generated disagreements between networks and their quantized versions, and surfaced undesirable behavior in language models.

Machine learning models are notoriously difficult to interpret and debug. This is particularly true of neural networks. In this work, we introduce automated software testing techniques for neural networks that are well-suited to discovering errors which occur only for rare inputs. Specifically, we develop coverage-guided fuzzing (CGF) methods for neural networks. In CGF, random mutations of inputs to a neural network are guided by a coverage metric toward the goal of satisfying user-specified constraints. We describe how fast approximate nearest neighbor algorithms can provide this coverage metric. We then discuss the application of CGF to the following goals: finding numerical errors in trained neural networks, generating disagreements between neural networks and quantized versions of those networks, and surfacing undesirable behavior in character level language models. Finally, we release an open source library called TensorFuzz that implements the described techniques.

Code Implementations3 repos
Foundations

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

Your Notes