Chinese, Simplified
黑盒测试和预言
机器学习(ML)模型的黑盒测试是指在不了解模型内部细节的情况下进行测试,例如创建模型所使用的算法和其中的特征。黑盒测试的主要目标是以持续的方式确保模型的质量。
黑盒测试的困难在于试图识别测试神话,这是一种确定测试是否通过的机制。
为什么ML模型被认为是不可测试的?如何使它们可测试?
在传统软件开发的情况下,模型是通过使用测试预言机(如测试人员、测试工程师或与测试程序一起工作的测试机制)进行测试的。预言机可以根据预期值验证测试结果。然而,ML模型通常被认为是不稳定的,因为很难对其进行黑盒测试。由于ML模型输出某种预测,因此没有用于验证测试结果的预期值。
由于缺乏测试预言机,所以使用伪预言机。伪预言表示当给定输入集的输出相互比较并确定正确性时的场景。
例如,为了解决一个问题,已经使用两种不同的实现对程序进行了编码;其中一个将被视为主程序。输入通过这两个实现。如果输出与主程序相同或成比例(即,它落在预定值附近的给定范围内),则可以认为该程序按预期或正确工作。
缺少测试预言机(Absence of test oracle)
这是用于对ML模型执行质量控制检查的许多技术之一。
功能测试
为了更好地理解ML模型的功能测试,请考虑以下示例:
哪里
- f=测试中的功能
- x=输入
- y=输出
- H=启发式(即测试或实验)
- O=观察和预言(即预期结果)
功能测试流程图
测试人员如何对ML模型进行功能测试?
测试人员必须在测试模型之前确定f、x和y值。如果需要,他们可以咨询正在构建产品的工程师,他们可以阅读和编写文档,他们可以依靠自己的经验进行假设,他们可以在线研究材料。通过这些方法,测试人员将得出可能的实验和测试(H)以及预期结果(O)。它们还将帮助查找功能性错误。
测试人员通过测试过程的每一次迭代来阐明对f、x和y值的理解。
发布日期
星期六, 一月 27, 2024 - 18:14
最后修改
星期六, 一月 27, 2024 - 18:14
Article
最新内容
- 3 days 8 hours ago
- 3 days 10 hours ago
- 3 days 10 hours ago
- 6 days 2 hours ago
- 6 days 9 hours ago
- 6 days 10 hours ago
- 6 days 10 hours ago
- 6 days 10 hours ago
- 1 week 3 days ago
- 1 week 3 days ago