Identifying Implementation Bugs in Machine Learning based Image Classifiers using Metamorphic Testing
This addresses the problem of expensive and difficult testing for ML-based applications, particularly in image classification, but is incremental as it applies existing metamorphic testing concepts to this domain.
The paper tackled the challenge of testing machine learning applications by proposing a metamorphic testing approach to identify implementation bugs in image classifiers, achieving a 71% bug detection rate in empirical validation.
We have recently witnessed tremendous success of Machine Learning (ML) in practical applications. Computer vision, speech recognition and language translation have all seen a near human level performance. We expect, in the near future, most business applications will have some form of ML. However, testing such applications is extremely challenging and would be very expensive if we follow today's methodologies. In this work, we present an articulation of the challenges in testing ML based applications. We then present our solution approach, based on the concept of Metamorphic Testing, which aims to identify implementation bugs in ML based image classifiers. We have developed metamorphic relations for an application based on Support Vector Machine and a Deep Learning based application. Empirical validation showed that our approach was able to catch 71% of the implementation bugs in the ML applications.