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 ...>