Using Metamorphic Relations to Verify and Enhance Artcode Classification

08/05/2021
by   Liming Xu, et al.
1

Software testing is often hindered where it is impossible or impractical to determine the correctness of the behaviour or output of the software under test (SUT), a situation known as the oracle problem. An example of an area facing the oracle problem is automatic image classification, using machine learning to classify an input image as one of a set of predefined classes. An approach to software testing that alleviates the oracle problem is metamorphic testing (MT). While traditional software testing examines the correctness of individual test cases, MT instead examines the relations amongst multiple executions of test cases and their outputs. These relations are called metamorphic relations (MRs): if an MR is found to be violated, then a fault must exist in the SUT. This paper examines the problem of classifying images containing visually hidden markers called Artcodes, and applies MT to verify and enhance the trained classifiers. This paper further examines two MRs, Separation and Occlusion, and reports on their capability in verifying the image classification using one-way analysis of variance (ANOVA) in conjunction with three other statistical analysis methods: t-test (for unequal variances), Kruskal-Wallis test, and Dunnett's test. In addition to our previously-studied classifier, that used Random Forests, we introduce a new classifier that uses a support vector machine, and present its MR-augmented version. Experimental evaluations across a number of performance metrics show that the augmented classifiers can achieve better performance than non-augmented classifiers. This paper also analyses how the enhanced performance is obtained.

READ FULL TEXT

page 6

page 15

page 24

research
11/22/2022

Application of property-based testing tools for metamorphic testing

Metamorphic testing (MT) is a general approach for the testing of a spec...
research
04/15/2019

Fault Detection Effectiveness of Metamorphic Relations Developed for Testing Supervised Classifiers

In machine learning, supervised classifiers are used to obtain predictio...
research
09/20/2021

Metamorphic Relation Prioritization for Effective Regression Testing

Metamorphic testing (MT) is widely used for testing programs that face t...
research
04/15/2023

Can Metamorphic Relations be Automatically Discovered?

Metamorphic testing alleviates the test oracle problem by defining oracl...
research
05/31/2022

Using Source Code Metrics for Predicting Metamorphic Relations at Method Level

Metamorphic testing (TM) examines the relations between inputs and outpu...
research
04/16/2019

Metamorphic Testing for Quality Assurance of Protein Function Prediction Tools

Proteins are the workhorses of life and gaining insight on their functio...
research
06/11/2022

Testing Ocean Software with Metamorphic Testing

Advancing ocean science has a significant impact to the development of t...

Please sign up or login with your details

Forgot password? Click here to reset