parametrize_with_checks
- sklearn.utils.estimator_checks.parametrize_with_checks(estimators, *, legacy:bool=True, expected_failed_checks:Callable|None=None)[source]
-
Декоратор для параметризации проверок эстиматоров, специфичный для Pytest.
Проверки категоризированы в следующие группы:
- Проверки API: набор проверок, обеспечивающих совместимость API с scikit-learn. См. https://scikit-learn.org/dev/developers/develop.html, это требование для эстиматоров scikit-learn.
- legacy: набор проверок, которые постепенно будут перегруппированы в другие категории.
Значение
idкаждой проверки задаётся как отформатированная версия эстиматора и название проверки с её ключевыми аргументами. Это позволяет использоватьpytest -kдля указания, какие тесты нужно запускать:pytest test_check_estimators.py -k check_estimators_fit_returns_self
- Параметры:
-
- estimatorsсписок экземпляров эстиматоров
-
Эстиматоры, для которых генерируются проверки.
Изменено в версии 0.24: Передача класса была устаревшей в версии 0.23 и поддержка классов была удалена в версии 0.24. Передавайте вместо этого экземпляр.
Добавлена в версии 0.24.
- legacybool, по умолчанию=True
-
Включать ли проверки legacy. Со временем проверки из этой категории будут удалены и перемещены в их специфические категории.
Добавлена в версии 1.6.
- expected_failed_checksвызываемый объект, по умолчанию=None
-
Вызываемый объект, принимающий эстиматор в качестве входных данных и возвращающий словарь следующего формата:
{ "check_name": "my reason", }Где
"check_name"— имя проверки, и"my reason"— причина, по которой проверка завершается неудачно. Эти тесты будут помечены как xfail, если проверка завершится неудачно.Добавлена в версии 1.6.
- Возвращает:
-
-
decorator
pytest.mark.parametrize
-
decorator
См. также
check_estimator-
Проверка, соответствует ли эстиматор соглашениям scikit-learn.
Примеры
>>> from sklearn.utils.estimator_checks import parametrize_with_checks >>> from sklearn.linear_model import LogisticRegression >>> from sklearn.tree import DecisionTreeRegressor
>>> @parametrize_with_checks([LogisticRegression(), ... DecisionTreeRegressor()]) ... def test_sklearn_compatible_estimator(estimator, check): ... check(estimator)
Примеры из галереи
© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/modules/generated/sklearn.utils.estimator_checks.parametrize_with_checks.html