Machine learning contrasts with traditional software development in that the oracle is the data, and the data is not always a correct representation of the problem that machine learning tries to model. We present a survey of the oracle issues found in machine learning and state-of-the-art solutions for dealing with these issues. These include lines of research for differential testing, metamorphic testing, and test coverage. We also review some recent improvements to robustness during modeling that reduce the impact of oracle issues, as well as tools and frameworks for assisting in testing and discovering issues specific to the dataset.
翻译:机器学习与传统的软件开发形成鲜明对比,因为甲骨文就是数据,而数据并不总是正确反映机器学习试图模拟的问题。我们对机器学习中发现的甲骨文问题和处理这些问题的最先进的解决办法进行了调查,其中包括差异测试、变形测试和测试覆盖范围的研究路线。我们还审查了最近在建模过程中的稳健性方面的一些改进,以减少甲骨文问题的影响,以及协助测试和发现数据集特有问题的工具和框架。