Machine learning applications are getting ready to explode in every problem domain that produces data and relies...
on using that data to get an answer. That probably constitutes over 90% of the applications under development today.
Further, most of what you know about testing traditional applications doesn't apply to machine learning testing. In most testing situations, you seek to make sure that the actual output matches the expected one. With machine learning testing, looking for the right output is exactly the wrong approach. You will likely get a slightly different answer every time you enter the same data. But that doesn't make it wrong.
Instead, with machine learning testing, you have to have objective acceptance criteria that describe how close you have to come to the correct answer and provide a probability distribution. A medical diagnosis system will require higher accuracy than an e-commerce engine, for example.
This means that you have to have objective acceptance criteria before a line of code is written. Ironically, this means that you have to be more of a domain expert than a technical tester. With machine learning testing, you have to know the tolerances necessary in a successful application.
It also means that you need to have a fundamental understanding of mathematics and statistics. You need to be comfortable setting and measuring standard deviations and confidence intervals. If you've forgotten your college statistics, take a refresher to get ready for machine learning testing.
Lastly, you need a high-level understanding of the architecture of the machine learning system. You can't be uninformed as to how it was constructed. That's because, if a system isn't meeting its acceptance criteria, you have to give developers, data scientists and other stakeholders some intelligent reasons as to why that is happening. That is the only way any deficiencies can be addressed in machine learning testing.
What you need to know about artificial intelligence and software testing
Here's how artificial intelligence can help you be a better tester
Don't fear software test automation
Dig Deeper on Software Testing Methodologies
Related Q&A from Gerie Owen
I've been a tester for many years and want to progress professionally. Yet, I'm struggling to find chances for advancement and a career path in ... Continue Reading
There are numerous DevOps tools, so as a tester, is it necessary to know all of them? Gerie Owen explains why tools might come secondary to the goal ... Continue Reading
As a junior tester, I think learning scripting languages could make me more valuable to my team and enhance my career. But how do I pick the ... Continue Reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.