Using Metamorphic Relations to Verify and Enhance Artcode Classification

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.

[1]  C. Dunnett A Multiple Comparison Procedure for Comparing Several Treatments with a Control , 1955 .

[2]  Huai Liu,et al.  How Effectively Does Metamorphic Testing Alleviate the Oracle Problem? , 2014, IEEE Transactions on Software Engineering.

[3]  Ron Koymans,et al.  How to specify , 1992 .

[4]  Corinna Cortes,et al.  Support-Vector Networks , 1995, Machine Learning.

[5]  M. Greenacre Correspondence analysis in practice , 1993 .

[6]  Pinjia He,et al.  Structure-Invariant Testing for Machine Translation , 2019, 2020 IEEE/ACM 42nd International Conference on Software Engineering (ICSE).

[7]  Andrea Torsello,et al.  RUNE-Tag: A high accuracy fiducial marker with strong occlusion resilience , 2011, CVPR 2011.

[8]  Sergio Segura,et al.  A Survey on Metamorphic Testing , 2016, IEEE Transactions on Software Engineering.

[9]  Baowen Xu,et al.  Testing and validating machine learning classifiers by metamorphic testing , 2011, J. Syst. Softw..

[10]  Hyosun Kwon,et al.  Designing Hybrid Gifts , 2020, ACM Trans. Comput. Hum. Interact..

[11]  Dave Towey,et al.  A revisit of three studies related to random testing , 2015, Science China Information Sciences.

[12]  Tony P. Pridmore,et al.  From codes to patterns: designing interactive decoration for tableware , 2013, CHI.

[13]  Jeffrey M. Voas,et al.  Metamorphic Testing for Cybersecurity , 2016, Computer.

[14]  Tsong Yueh Chen,et al.  Enhancing Supervised Classifications with Metamorphic Relations , 2018, 2018 IEEE/ACM 3rd International Workshop on Metamorphic Testing (MET).

[15]  Johannes Mayer,et al.  On Random Testing of Image Processing Applications , 2006, 2006 Sixth International Conference on Quality Software (QSIC'06).

[16]  Edward H. Adelson,et al.  The Design and Use of Steerable Filters , 1991, IEEE Trans. Pattern Anal. Mach. Intell..

[17]  Mark Harman,et al.  The Oracle Problem in Software Testing: A Survey , 2015, IEEE Transactions on Software Engineering.

[18]  Arda Goknil,et al.  Metamorphic Security Testing for Web Systems , 2019, 2020 IEEE 13th International Conference on Software Testing, Validation and Verification (ICST).

[19]  Stefan Rennick Egglestone,et al.  Exploring Large-Scale Interactive Public Illustrations , 2016, Conference on Designing Interactive Systems.

[20]  Steve Benford,et al.  Accountable Artefacts: The Case of the Carolan Guitar , 2016, CHI.

[21]  Tsong Yueh Chen,et al.  Metamorphic testing of programs on partial differential equations: a case study , 2002, Proceedings 26th Annual International Computer Software and Applications.

[22]  David M. W. Powers,et al.  Evaluation: from precision, recall and F-measure to ROC, informedness, markedness and correlation , 2011, ArXiv.

[23]  Steve Benford,et al.  Recognizing the Presence of Hidden Visual Markers in Digital Images , 2017, ACM Multimedia.

[24]  Joyram Chakraborty,et al.  Public policy and violence in video games , 2015, Interactions.

[25]  Hui Chen,et al.  A literature survey on smart cities , 2015, Science China Information Sciences.

[26]  Mikael Lindvall,et al.  Metamorphic Model-Based Testing Applied on NASA DAT -- An Experience Report , 2015, 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering.

[27]  Steve Benford,et al.  Augmenting a guitar with its digital footprint , 2015, NIME.

[28]  Ron Kohavi,et al.  A Study of Cross-Validation and Bootstrap for Accuracy Estimation and Model Selection , 1995, IJCAI.

[29]  Gordon Kindlmann,et al.  Surfacing Visualization Mirages , 2020, CHI.

[30]  Steve Benford,et al.  The Carolan guitar , 2015, Interactions.

[31]  Baowen Xu,et al.  Application of Metamorphic Testing to Supervised Classifiers , 2009, 2009 Ninth International Conference on Quality Software.

[32]  Sameer Singh,et al.  Beyond Accuracy: Behavioral Testing of NLP Models with CheckList , 2020, ACL.

[33]  Alastair F. Donaldson,et al.  Automated testing of graphics shader compilers , 2017, Proc. ACM Program. Lang..

[34]  Sarfraz Khurshid,et al.  DeepRoad: GAN-Based Metamorphic Testing and Input Validation Framework for Autonomous Driving Systems , 2018, 2018 33rd IEEE/ACM International Conference on Automated Software Engineering (ASE).

[35]  N. J. Woodland CLASSIFYING APPARATUS AND METHOD , 2017 .

[36]  Eli Tzirkel-Hancock,et al.  Method and apparatus for pattern recognition , 1999 .

[37]  Gail E. Kaiser,et al.  Properties of Machine Learning Applications for Use in Metamorphic Testing , 2008, SEKE.

[38]  Stefan Rennick Egglestone,et al.  Enabling Hand-Crafted Visual Markers at Scale , 2017, Conference on Designing Interactive Systems.

[39]  Liqun Sun,et al.  Metamorphic testing of driverless cars , 2019, Commun. ACM.

[40]  Kher Hui Ng,et al.  Design of a mobile garden guide based on Artcodes , 2016, 2016 4th International Conference on User Science and Engineering (i-USEr).

[41]  Edsger W. Dijkstra,et al.  Chapter I: Notes on structured programming , 1972 .

[42]  Mark Fiala,et al.  ARTag, a fiducial marker system using digital techniques , 2005, 2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'05).

[43]  W. Kruskal,et al.  Use of Ranks in One-Criterion Variance Analysis , 1952 .

[44]  Josef Kittler,et al.  Pattern recognition : a statistical approach , 1982 .

[45]  Jin Liu,et al.  Metamorphic Testing and Certified Mitigation of Fairness Violations in NLP Models , 2020, IJCAI.

[46]  Giovanni Seni,et al.  Ensemble Methods in Data Mining: Improving Accuracy Through Combining Predictions , 2010, Ensemble Methods in Data Mining.

[47]  Tsong Yueh Chen,et al.  Metamorphic Testing for Software Quality Assessment: A Study of Search Engines , 2016, IEEE Transactions on Software Engineering.

[48]  Liming Xu Artcode detection in images , 2019 .

[49]  B. Matthews Comparison of the predicted and observed secondary structure of T4 phage lysozyme. , 1975, Biochimica et biophysica acta.

[50]  Steve Benford,et al.  Customizing Hybrid Products , 2018, CHI.

[51]  Zhi Quan Zhou,et al.  Metamorphic Testing for Machine Translations: MT4MT , 2018, 2018 25th Australasian Software Engineering Conference (ASWEC).

[52]  Tsong Yueh Chen,et al.  Metamorphic Testing: A New Approach for Generating Next Test Cases , 2020, ArXiv.

[53]  J. Moser On the volume elements on a manifold , 1965 .

[54]  Enrico Costanza,et al.  A Region Adjacency Tree Approach to the Detection and Design of Fiducials , 2003, VVG.

[55]  Dongmei Zhang,et al.  An Application of Metamorphic Testing for Testing Scientific Software , 2016, 2016 IEEE/ACM 1st International Workshop on Metamorphic Testing (MET).

[56]  James M. Bieman,et al.  Using machine learning techniques to detect metamorphic relations for programs without test oracles , 2013, 2013 IEEE 24th International Symposium on Software Reliability Engineering (ISSRE).

[57]  Zhendong Su,et al.  Compiler validation via equivalence modulo inputs , 2014, PLDI.

[58]  Tsong Yueh Chen,et al.  Fault-based testing without the need of oracles , 2003, Inf. Softw. Technol..

[59]  Jeffrey Huang,et al.  Designable visual markers , 2009, CHI.