Muffin: Testing Deep Learning Libraries via Neural Architecture Fuzzing

04/19/2022
by   Jiazhen Gu, et al.
0

Deep learning (DL) techniques are proven effective in many challenging tasks, and become widely-adopted in practice. However, previous work has shown that DL libraries, the basis of building and executing DL models, contain bugs and can cause severe consequences. Unfortunately, existing testing approaches still cannot comprehensively exercise DL libraries. They utilize existing trained models and only detect bugs in model inference phase. In this work we propose Muffin to address these issues. To this end, Muffin applies a specifically-designed model fuzzing approach, which allows it to generate diverse DL models to explore the target library, instead of relying only on existing trained models. Muffin makes differential testing feasible in the model training phase by tailoring a set of metrics to measure the inconsistencies between different DL libraries. In this way, Muffin can best exercise the library code to detect more bugs. To evaluate the effectiveness of Muffin, we conduct experiments on three widely-used DL libraries. The results demonstrate that Muffin can detect 39 new bugs in the latest release versions of popular DL libraries, including Tensorflow, CNTK, and Theano.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
08/02/2022

MEMO: Coverage-guided Model Generation For Deep Learning Library Testing

Recent deep learning (DL) applications are mostly built on top of DL lib...
research
12/30/2022

Fuzzing Deep-Learning Libraries via Large Language Models

Detecting bugs in Deep Learning (DL) libraries is critical for almost al...
research
07/26/2022

Finding Deep-Learning Compilation Bugs with NNSmith

Deep-learning (DL) compilers such as TVM and TensorRT are increasingly u...
research
08/03/2022

HirFuzz: Detecting High-Level Optimization Bugs in DL Compilers via Computational Graph Generation

Deep Learning (DL) compilers are widely adopted to optimize advanced DL ...
research
11/28/2022

An Empirical Study of Library Usage and Dependency in Deep Learning Frameworks

Recent advances in deep learning (dl) have led to the release of several...
research
09/03/2020

Smoke Testing for Machine Learning: Simple Tests to Discover Severe Defects

Machine learning is nowadays a standard technique for data analysis with...
research
02/17/2021

DepOwl: Detecting Dependency Bugs to Prevent Compatibility Failures

Applications depend on libraries to avoid reinventing the wheel. Librari...

Please sign up or login with your details

Forgot password? Click here to reset