What Are We Really Testing in Mutation Testing for Machine Learning? A Critical Reflection

Research output: Chapter in Book/Conference proceedings/Edited volumeConference contributionScientificpeer-review

5 Citations (Scopus)
53 Downloads (Pure)

Abstract

Mutation testing is a well-established technique for assessing a test suite’s quality by injecting artificial faults into production code. In recent years, mutation testing has been extended to machine learning (ML) systems, and deep learning (DL) in particular; researchers have proposed approaches, tools, and statistically sound heuristics to determine whether mutants in DL systems are killed or not. However, as we will argue in this work, questions can be raised to what extent currently used mutation testing techniques in DL are actually in line with the classical interpretation of mutation testing. We observe that ML model development resembles a test-driven development (TDD) process, in which a training algorithm (‘programmer’) generates a model (program) that fits the data points (test data) to labels (implicit assertions), up to a certain threshold. However, considering proposed mutation testing techniques for ML systems under this TDD metaphor, in current approaches, the distinction between production and test code is blurry, and the realism of mutation operators can be challenged. We also consider the fundamental hypotheses underlying classical mutation testing: the competent programmer hypothesis and coupling effect hypothesis. As we will illustrate, these hypotheses do not trivially translate to ML system development, and more conscious and explicit scoping and concept mapping will be needed to truly draw parallels. Based on our observations, we propose several action points for better alignment of mutation testing techniques for ML with paradigms and vocabularies of classical mutation testing.
Original languageEnglish
Title of host publication43rd International Conference on Software Engineering - New Ideas and Emerging Results
PublisherACM/IEEE
Pages66-70
Number of pages5
ISBN (Electronic)9780738133249
DOIs
Publication statusPublished - 2021

Bibliographical note

Green Open Access added to TU Delft Institutional Repository ‘You share, we take care!’ – Taverne project https://www.openaccess.nl/en/you-share-we-take-care
Otherwise as indicated in the copyright section: the publisher is the copyright holder of this work and the author uses the Dutch legislation to make this work public.

Keywords

  • mutation testing
  • machine Learning
  • mutation operators
  • software testing

Fingerprint

Dive into the research topics of 'What Are We Really Testing in Mutation Testing for Machine Learning? A Critical Reflection'. Together they form a unique fingerprint.

Cite this