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, xfail_strict:bool|None=None)[исходный код]

Декоратор для параметризации проверок оценщиков, предназначенный для pytest.

Проверки делятся на следующие группы:

  • Проверки API: набор проверок для обеспечения совместимости API со scikit-learn. Требования к оценщикам scikit-learn см. на странице https://scikit-learn.org/dev/developers/develop.html.
  • Устаревшие: набор проверок, которые постепенно будут распределены по другим категориям.

Для каждой проверки значение 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

Следует ли включать устаревшие проверки. Со временем проверки удаляются из этой категории и переносятся в соответствующие им категории.

Добавлено в версии 1.6.

expected_failed_checkscallable, по умолчанию=None

Функция, которая принимает оценщик в качестве входных данных и возвращает словарь следующего вида:

{
    "check_name": "my reason",
}

Где "check_name" — имя проверки, а "my reason" — причина её неудачного прохождения. Если проверка завершается неудачей, соответствующие тесты будут помечены как xfail.

Добавлено в версии 1.6.

xfail_strictbool, по умолчанию=None

Следует ли запускать проверки в строгом режиме xfail. Если значение True, проверки, которые должны завершиться неудачей, но проходят успешно, приведут к провалу теста. Если значение False, неожиданно прошедшие тесты будут помечены как xpass. Если значение None, используется поведение pytest по умолчанию.

Добавлено в версии 1.8.

Возвращает:
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 0.22

Основные нововведения scikit-learn 1.6

© 2007–2026 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.9/modules/generated/sklearn.utils.estimator_checks.parametrize_with_checks.html

Spec-Zone.ru

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