对于测试机器学习算法/存储库,我看到了三件重要的事情:
- 会不会崩溃
- 是否有最低测试精度
- 速度够快吗
虽然(1)和(2)可能是标准单元测试,但我不太确定如何处理(3)。我可以用 pytest / tox 测试一下吗?
我找到pytest-benchmark
了,但我将如何做到这一点lidtk
?
在伪代码中,我想做以下事情:
def classifier_predict(input_features):
# do something smart, but maybe too time-consuming
return result
def input_generator():
# Generate something random which classifier_predict
# can work on - don't measure this time!
return input_features
class Agents(unittest.TestCase):
def test_classifier_predict():
self.assertMaxTime(classifier_predict,
input_generator,
max_time_in_ms=100)