Spec-Zone.ru › scikit-learn

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.

Возвращает:
decoratorpytest.mark.parametrize

См. также

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)

Примеры из галереи

Основные моменты выпуска scikit-learn 1.6

Основные моменты выпуска scikit-learn 0.22

© 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API