DeepMutation: Mutation Testing of Deep Learning Systems
By Lei Ma, Fuyuan Zhang, Jiyuan Sun, Minhui Xue, Bo Li, Felix Juefei-Xu, Chao Xie, Li Li, Yang Liu, Jianjun Zhao and 1 more. IEEE International Symposium on Software Reliability Engineering, 2018
401 citations recorded by the source corpus.
Deep learning (DL) defines a new data-driven programming paradigm where the internal system logic is largely shaped by the training data. The standard way of evaluating DL models is to examine their performance on a test dataset. The quality of the test dataset is of great importance to gain confidence of the trained models. Using an inadequate test dataset, DL models that have achieved high test accuracy may still lack generality and robustness. In traditional software testing, mutation testing is a well-established technique for quality evaluation of test suites, which analyzes to what extent a test suite detects the injected faults. However, due to the fundamental difference between traditional software and deep learning-based software, traditional mutation testing techniques cannot be directly applied to DL systems. In this paper, we propose a mutation testing framework specialized for DL systems to measure the quality of test data. To do this, by sharing the same spirit of mutation testing in traditional software, we first define a set of source-level mutation operators to inject faults to the source of DL (i.e., training data and training programs). Then we design a set of model-level mutation operators that directly inject faults into DL models without a training process. Eventually, the quality of test data could be evaluated from the analysis on to what extent the injected faults could be detected. The usefulness of the proposed mutation testing techniques is demonstrated on two public datasets, namely MNIST and CIFAR-10, with three DL models.
Subfields: Artificial Intelligence, Computer Networks and Communications, Software
View Paper: https://www.semanticscholar.org/paper/af4711bd50bddfdceb6728bb0a898d22f0f44843
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Artificial Intelligence
- Adina Williams
- Douwe Kiela
- Eric Michael Smith
- Yang Liu
- Mohit Bansal
- Jason Aaron Edward Weston
- Bo Li
- Rebecca Qian
In Computer Networks and Communications
In Software
Citations in the corpus
- DeepGauge: Multi-Granularity Testing Criteria for Deep Learning Systems (2018, background): “Instead of observing the runtime internal behaviors of DNNs, DeepMutation [34] proposes to mutate DNNs (i.”
- Machine Learning Testing: Survey, Landscapes and Horizons (2019, methodology): “A number of software testing techniques has been applied to ML testing, such as different testing coverage criteria [76], [92], [145], mutation testing [152], combinatorial testing [149], metamorphic testing [100], and fuzz testing [89].”
- FakeSpotter: A Simple Baseline for Spotting AI-Synthesized Fake Faces (2019, background): “Neuron coverage is widely adopted in assuring the quality and security of DNNs and plays an important role in analyzing DNNs [25,26,27,28,29].”
- DeepHunter: a coverage-guided fuzz testing framework for deep neural networks (2019, methodology): “DeepMu-tation [32] proposes the mutation testing technique of DNNs, by introducing a set of fault injection operators to perturbates the decision logic of a DNN. MODE [33] is recently developed for model debugging process, inspired by state differential analysis and input data selection in software…”
- Guiding Deep Learning System Testing Using Surprise Adequacy (2018, methodology): “DeepMutation applies the principle of mutation testing to DL systems by mutating training data, test data, as well as the DL system itself, based on source and model level mutation operators [28].”
- Perturbation Augmentation for Fairer NLP (2022, background): “Finally, “perturbation” in the sense that we’ve defined it here is somewhat similar to mutation (Ma et al., 2018; Tufano et al., 2020; Panichella and Liem, 2021) as a model evaluation approach—permutation differs from mutation however in that during permutation the alternative examples are not neces”
- Taxonomy of Real Faults in Deep Learning Systems (2019, background): “Table 3: Taxonomy Tags for Mutation Operators from [17]”