SEAIAug 2, 2022

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

arXiv:2208.01508v236 citationsh-index: 49
Originality Highly original
AI Analysis

This work addresses the critical need for dependable deep learning library testing, which is essential for developers and users of DL applications, by introducing a novel method that significantly enhances test coverage and bug detection.

The paper tackles the problem of insufficient diversity in deep learning library testing by proposing COMET, a coverage-guided model generation method that achieves significant improvements, covering twice as many layer inputs (69.7% vs. 34.1%), parameter values (50.2% vs. 25.9%), and sequences (39.0% vs. 15.6%) compared to state-of-the-art techniques, and detects 32 new bugs in popular libraries.

Recent deep learning (DL) applications are mostly built on top of DL libraries. The quality assurance of these libraries is critical to the dependable deployment of DL applications. Techniques have been proposed to generate various DL models and apply them to test these libraries. However, their test effectiveness is constrained by the diversity of layer API calls in their generated DL models. Our study reveals that these techniques can cover at most 34.1% layer inputs, 25.9% layer parameter values, and 15.6% layer sequences. As a result, we find that many bugs arising from specific layer API calls (i.e., specific layer inputs, parameter values, or layer sequences) can be missed by existing techniques. Because of this limitation, we propose COMET to effectively generate DL models with diverse layer API calls for DL library testing. COMET: (1) designs a set of mutation operators and a coverage-based search algorithm to diversify layer inputs, layer parameter values, and layer sequences in DL models. (2) proposes a model synthesis method to boost the test efficiency without compromising the layer API call diversity. Our evaluation result shows that COMET outperforms baselines by covering twice as many layer inputs (69.7% vs. 34.1%), layer parameter values (50.2% vs. 25.9%), and layer sequences (39.0% vs. 15.6%) as those by the state-of-the-art. Moreover, COMET covers 3.4% more library branches than those by existing techniques. Finally, COMET detects 32 new bugs in the latest version of eight popular DL libraries, including TensorFlow and MXNet, with 21 of them confirmed by DL library developers and 7 of those confirmed bugs have been fixed by developers.

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