DummyRegressor#

class sklearn.dummy.DummyRegressor(*, strategy='mean', constant=None, quantile=None)[source]#

使用简单规则进行预测的回归器。

此回归器作为简单基线,可用于与其他(真实)回归器进行比较。请勿将其用于实际问题。

用户指南中了解更多信息。

在版本 0.13 中添加。

参数:
strategy{“mean”, “median”, “quantile”, “constant”}, default=”mean”

用于生成预测的策略。

  • “mean”:始终预测训练集的均值

  • “median”:始终预测训练集的中位数

  • “quantile”:始终预测训练集的指定分位数,由 quantile 参数提供。

  • “constant”:始终预测用户提供的常量值。

constantint or float or array-like of shape (n_outputs,), default=None

由“constant”策略预测的显式常量。此参数仅对“constant”策略有用。

quantilefloat in [0.0, 1.0], default=None

使用“quantile”策略预测的分位数。分位数为 0.5 对应中位数,0.0 对应最小值,1.0 对应最大值。

属性:
constant_ndarray of shape (1, n_outputs)

训练目标值的均值、中位数或分位数,或用户给定的常量值。

n_features_in_int

拟合 期间看到的特征数。

feature_names_in_shape 为 (n_features_in_,) 的 ndarray

fit 期间看到的特征名称。仅当 X 具有全部为字符串的特征名称时才定义。

n_outputs_int

输出数量。

另请参阅

DummyClassifier

使用简单规则进行预测的分类器。

示例

>>> import numpy as np
>>> from sklearn.dummy import DummyRegressor
>>> X = np.array([1.0, 2.0, 3.0, 4.0])
>>> y = np.array([2.0, 3.0, 5.0, 10.0])
>>> dummy_regr = DummyRegressor(strategy="mean")
>>> dummy_regr.fit(X, y)
DummyRegressor()
>>> dummy_regr.predict(X)
array([5., 5., 5., 5.])
>>> dummy_regr.score(X, y)
0.0
fit(X, y, sample_weight=None)[source]#

拟合基线回归器。

参数:
Xshape 为 (n_samples, n_features) 的 array-like

训练数据。

yshape 为 (n_samples,) 或 (n_samples, n_outputs) 的 array-like

目标值。

sample_weightshape 为 (n_samples,) 的 array-like, default=None

样本权重。

返回:
selfobject

拟合的估计器。

get_metadata_routing()[source]#

获取此对象的元数据路由。

请查阅 用户指南,了解路由机制如何工作。

返回:
routingMetadataRequest

封装路由信息的 MetadataRequest

get_params(deep=True)[source]#

获取此估计器的参数。

参数:
deepbool, default=True

如果为 True,将返回此估计器以及包含的子对象(如果它们是估计器)的参数。

返回:
paramsdict

参数名称映射到其值。

predict(X, return_std=False)[source]#

对测试向量 X 进行分类。

参数:
Xshape 为 (n_samples, n_features) 的 array-like

测试数据。

return_stdbool, default=False

是否返回后验预测的标准差。在此情况下全为零。

0.20 版本新增。

返回:
yshape 为 (n_samples,) 或 (n_samples, n_outputs) 的 array-like

X 的预测目标值。

y_stdarray-like of shape (n_samples,) or (n_samples, n_outputs)

查询点的预测分布的标准差。

score(X, y, sample_weight=None)[source]#

返回预测的决定系数 R^2。

决定系数 R^2 定义为 (1 - u/v),其中 u 是残差平方和 ((y_true - y_pred) ** 2).sum()v 是总平方和 ((y_true - y_true.mean()) ** 2).sum()。最好的分数是 1.0,分数也可能为负(因为模型可能任意地差)。一个始终预测 y 的期望值而忽略输入特征的常数模型将得到 R^2 分数 0.0。

参数:
XNone or array-like of shape (n_samples, n_features)

测试样本。传递 None 作为测试样本会得到与传递真实测试样本相同的结果,因为 DummyRegressor 独立于采样的观察值进行操作。

yshape 为 (n_samples,) 或 (n_samples, n_outputs) 的 array-like

X 的真实值。

sample_weightshape 为 (n_samples,) 的 array-like, default=None

样本权重。

返回:
scorefloat

self.predict(X) 相对于 y 的 R^2。

set_fit_request(*, sample_weight: bool | None | str = '$UNCHANGED$') DummyRegressor[source]#

配置是否应请求元数据以传递给 fit 方法。

请注意,此方法仅在以下情况下相关:此估计器用作 元估计器 中的子估计器,并且通过 enable_metadata_routing=True 启用了元数据路由(请参阅 sklearn.set_config)。请查看 用户指南 以了解路由机制的工作原理。

每个参数的选项如下:

  • True:请求元数据,如果提供则传递给 fit。如果未提供元数据,则忽略该请求。

  • False:不请求元数据,元估计器不会将其传递给 fit

  • None:不请求元数据,如果用户提供元数据,元估计器将引发错误。

  • str:应将元数据以给定别名而不是原始名称传递给元估计器。

默认值 (sklearn.utils.metadata_routing.UNCHANGED) 保留现有请求。这允许您更改某些参数的请求而不更改其他参数。

在版本 1.3 中新增。

参数:
sample_weightstr, True, False, or None, default=sklearn.utils.metadata_routing.UNCHANGED

fit 方法中 sample_weight 参数的元数据路由。

返回:
selfobject

更新后的对象。

set_params(**params)[source]#

设置此估计器的参数。

此方法适用于简单的估计器以及嵌套对象(如 Pipeline)。后者具有 <component>__<parameter> 形式的参数,以便可以更新嵌套对象的每个组件。

参数:
**paramsdict

估计器参数。

返回:
selfestimator instance

估计器实例。

set_predict_request(*, return_std: bool | None | str = '$UNCHANGED$') DummyRegressor[source]#

配置是否应请求元数据以传递给 predict 方法。

请注意,此方法仅在以下情况下相关:此估计器用作 元估计器 中的子估计器,并且通过 enable_metadata_routing=True 启用了元数据路由(请参阅 sklearn.set_config)。请查看 用户指南 以了解路由机制的工作原理。

每个参数的选项如下:

  • True:请求元数据,如果提供则传递给 predict。如果未提供元数据,则忽略该请求。

  • False:不请求元数据,并且元估计器不会将其传递给 predict

  • None:不请求元数据,如果用户提供元数据,元估计器将引发错误。

  • str:应将元数据以给定别名而不是原始名称传递给元估计器。

默认值 (sklearn.utils.metadata_routing.UNCHANGED) 保留现有请求。这允许您更改某些参数的请求而不更改其他参数。

在版本 1.3 中新增。

参数:
return_stdstr, True, False, or None, default=sklearn.utils.metadata_routing.UNCHANGED

predictreturn_std参数的元数据路由。

返回:
selfobject

更新后的对象。

set_score_request(*, sample_weight: bool | None | str = '$UNCHANGED$') DummyRegressor[source]#

配置是否应请求元数据以传递给 score 方法。

请注意,此方法仅在以下情况下相关:此估计器用作 元估计器 中的子估计器,并且通过 enable_metadata_routing=True 启用了元数据路由(请参阅 sklearn.set_config)。请查看 用户指南 以了解路由机制的工作原理。

每个参数的选项如下:

  • True:请求元数据,如果提供则传递给 score。如果未提供元数据,则忽略该请求。

  • False:不请求元数据,元估计器不会将其传递给 score

  • None:不请求元数据,如果用户提供元数据,元估计器将引发错误。

  • str:应将元数据以给定别名而不是原始名称传递给元估计器。

默认值 (sklearn.utils.metadata_routing.UNCHANGED) 保留现有请求。这允许您更改某些参数的请求而不更改其他参数。

在版本 1.3 中新增。

参数:
sample_weightstr, True, False, or None, default=sklearn.utils.metadata_routing.UNCHANGED

score 方法中 sample_weight 参数的元数据路由。

返回:
selfobject

更新后的对象。