check_estimator#

sklearn.utils.estimator_checks.check_estimator(estimator=None, generate_only=False)#

检查估计器是否符合scikit-learn的约定。

此函数将运行广泛的测试套件,用于输入验证、形状等,确保估计器符合 scikit-learn 的约定,详见 自定义估计器 。如果估计器类继承自sklearn.base中的相应混合类,则会运行额外的分类器、回归器、聚类或转换器的测试。

设置 generate_only=True 返回一个生成器,该生成器生成(estimator, check)元组,其中每个检查可以独立调用,即 check(estimator) 。这允许所有检查独立运行并报告失败的检查。

scikit-learn提供了一个特定于pytest的装饰器,parametrize_with_checks ,使得更容易测试多个估计器。

Parameters:
estimator估计器对象

要检查的估计器实例。

Added in version 1.1: 在版本0.23中弃用传递类,并在0.24中移除对类的支持。

generate_onlybool, 默认=False

False 时,在调用 check_estimator 时评估检查。 当 True 时, check_estimator 返回一个生成器,该生成器生成(estimator, check)元组。通过调用 check(estimator) 运行检查。

Added in version 0.22.

Returns:
checks_generator生成器

生成器生成(estimator, check)元组。当 generate_only=True 时返回。

See also

parametrize_with_checks

用于参数化估计器检查的Pytest特定装饰器。

Examples

>>> from sklearn.utils.estimator_checks import check_estimator
>>> from sklearn.linear_model import LogisticRegression
>>> check_estimator(LogisticRegression(), generate_only=True)
<generator object ...>