config_context#

sklearn.config_context(*, assume_finite=None, working_memory=None, print_changed_only=None, display=None, pairwise_dist_chunk_size=None, enable_cython_pairwise_dist=None, array_api_dispatch=None, transform_output=None, enable_metadata_routing=None, skip_parameter_validation=None)[source]#

用于全局 scikit-learn 配置的上下文管理器。

参数:
assume_finite布尔值,默认为 None

如果为 True,将跳过有限性验证,节省时间,但可能导致程序崩溃。如果为 False,将执行有限性验证,避免错误。如果为 None,现有值将保持不变。默认值为 False。

working_memory整型,默认为 None

如果设置,scikit-learn 将尝试把临时数组的大小限制在此 MiB 数(并行化时每个作业),通常可以节省计算时间和内存,尤其是在可以分块执行的昂贵操作中。如果为 None,现有值将保持不变。默认值为 1024。

print_changed_only布尔值,默认为 None

如果为 True,当打印估算器时,只会打印设置为非默认值的参数。例如,当为 True 时,print(SVC()) 将只打印“SVC()”,而当为 False 时,则会打印“SVC(C=1.0, cache_size=200, …)”并显示所有未更改的参数。如果为 None,现有值将保持不变。默认值为 True。

0.23 版本中的变更:默认值从 False 变为 True。

display{‘text’,‘diagram’},默认为 None

如果为“diagram”,估算器将在 Jupyter lab 或 notebook 环境中以图表形式显示。如果为“text”,估算器将以文本形式显示。如果为 None,现有值将保持不变。默认值为“diagram”。

0.23 版本新增。

pairwise_dist_chunk_size整型,默认为 None

加速成对距离约简后端中每个分块的行向量数量。默认值为 256(适用于大多数现代笔记本电脑的缓存和架构)。

旨在方便 scikit-learn 内部组件的基准测试和测试。最终用户预计不会从自定义此配置设置中受益。

1.1 版本新增。

enable_cython_pairwise_dist布尔值,默认为 None

如果可能,使用加速的成对距离约简后端。全局默认值:True。

旨在方便 scikit-learn 内部组件的基准测试和测试。最终用户预计不会从自定义此配置设置中受益。

1.1 版本新增。

array_api_dispatch布尔值,默认为 None

当输入遵循 Array API 标准时,使用 Array API 调度。默认值为 False。

更多详细信息,请参阅用户指南

1.2 版本新增。

transform_output字符串,默认为 None

配置 transformfit_transform 的输出。

有关如何使用 API 的示例,请参阅set_output API 简介

  • "default":转换器的默认输出格式

  • "pandas":DataFrame 输出

  • "polars":Polars 输出

  • None:转换配置保持不变

1.2 版本新增。

1.4 版本新增:添加了"polars" 选项。

enable_metadata_routing布尔值,默认为 None

启用元数据路由。默认情况下此功能是禁用的。

更多详细信息,请参阅元数据路由用户指南

  • True:元数据路由已启用

  • False:元数据路由已禁用,使用旧语法。

  • None:配置保持不变

1.3 版本新增。

skip_parameter_validation布尔值,默认为 None

如果为 True,将禁用估算器 fit 方法中超参数类型和值的验证,以及传递给公共辅助函数的参数验证。这在某些情况下可以节省时间,但可能导致低级别崩溃和带有令人困惑错误消息的异常。

请注意,对于数据参数(例如 Xy),仅跳过类型验证,但 check_array 的验证将继续运行。

1.3 版本新增。

返回值:
无。

另请参阅

set_config

设置全局 scikit-learn 配置。

get_config

检索全局配置的当前值。

注意

当上下文管理器退出时,所有设置(不仅是当前修改的设置)都将恢复到其之前的值。

示例

>>> import sklearn
>>> from sklearn.utils.validation import assert_all_finite
>>> with sklearn.config_context(assume_finite=True):
...     assert_all_finite([float('nan')])
>>> with sklearn.config_context(assume_finite=True):
...     with sklearn.config_context(assume_finite=False):
...         assert_all_finite([float('nan')])
Traceback (most recent call last):
...
ValueError: Input contains NaN...