Back to Search
Start Over
TERA: optimizing stochastic regression tests in machine learning projects
- Source :
- ISSTA
- Publication Year :
- 2021
- Publisher :
- ACM, 2021.
-
Abstract
- The stochastic nature of many Machine Learning (ML) algorithms makes testing of ML tools and libraries challenging. ML algorithms allow a developer to control their accuracy and run-time through a set of hyper-parameters, which are typically manually selected in tests. This choice is often too conservative and leads to slow test executions, thereby increasing the cost of regression testing. We propose TERA, the first automated technique for reducing the cost of regression testing in Machine Learning tools and libraries(jointly referred to as projects) without making the tests more flaky. TERA solves the problem of exploring the trade-off space between execution time of the test and its flakiness as an instance of Stochastic Optimization over the space of algorithm hyper-parameters. TERA presents how to leverage statistical convergence-testing techniques to estimate the level of flakiness of the test for a specific choice of hyper-parameters during optimization. We evaluate TERA on a corpus of 160 tests selected from 15 popular machine learning projects. Overall, TERA obtains a geo-mean speedup of 2.23x over the original tests, for the minimum passing probability threshold of 99%. We also show that the new tests did not reduce fault detection ability through a mutation study and a study on a set of 12 historical build failures in studied projects.
Details
- Database :
- OpenAIRE
- Journal :
- Proceedings of the 30th ACM SIGSOFT International Symposium on Software Testing and Analysis
- Accession number :
- edsair.doi...........0369160762e362094c84013b2fa646c4
- Full Text :
- https://doi.org/10.1145/3460319.3464844