AdaBoostRegressor#
- class sklearn.ensemble.AdaBoostRegressor(estimator=None, *, n_estimators=50, learning_rate=1.0, loss='linear', random_state=None)[源代码]#
AdaBoost回归器。
AdaBoost [1] 回归量是一种元估计器,首先在原始数据集上匹配回归量,然后在同一数据集上匹配回归量的额外副本,但实例的权重根据当前预测的误差进行调整。因此,随后的回归者更多地关注困难的案例。
此类实现称为AdaBoost.R2的算法 [2] .
阅读更多的 User Guide .
Added in version 0.14.
- 参数:
- estimator对象,默认=无
从其构建提升集合的基本估计器。如果
None
,那么基本估计器是DecisionTreeRegressor
初始化为max_depth=3
.Added in version 1.2:
base_estimator
更名为estimator
.- n_estimatorsint,默认=50
终止提升的最大估计数。如果完全适合,学习过程会提前停止。值必须在范围内
[1, inf)
.- learning_ratefloat,默认=1.0
每次增强迭代时应用于每个回归量的权重。更高的学习率会增加每个回归量的贡献。两者之间存在权衡
learning_rate
和n_estimators
参数值必须在范围内(0.0, inf)
.- loss'线性','平方','指数'},默认='线性'
每次增强迭代后更新权重时使用的损失函数。
- random_stateint,RandomState实例或无,默认=无
控制每次给定的随机种子
estimator
在每次助推迭代时。因此,只有在以下情况下才使用estimator
公开一个random_state
.此外,它还控制用于训练estimator
在每次助推迭代时。传递int以获得跨多个函数调用的可重复输出。看到 Glossary .
- 属性:
- estimator_估计器
生成集合的基本估计器。
Added in version 1.2:
base_estimator_
更名为estimator_
.- estimators_回归者列表
拟合子估计量的集合。
- estimator_weights_浮标阵
增强集合中每个估计器的权重。
- estimator_errors_浮标阵
增强集合中每个估计量的回归误差。
feature_importances_
形状的nd数组(n_features,)基于杂质的特征很重要。
- n_features_in_int
期间看到的功能数量 fit .
Added in version 0.24.
- feature_names_in_ :nd形状数组 (
n_features_in_
,)nd数组形状( Names of features seen during fit. Defined only when
X
has feature names that are all strings.Added in version 1.0.
参见
AdaBoostClassifier
AdaBoost分类器。
GradientBoostingRegressor
梯度提升分类树。
sklearn.tree.DecisionTreeRegressor
决策树回归器。
引用
[1]Y.弗罗因德,R. Schapire,“在线学习的决策理论概括和Boosting的应用”,1995年。
[2]德鲁克,“使用增强技术改进回归”,1997年。
示例
>>> from sklearn.ensemble import AdaBoostRegressor >>> from sklearn.datasets import make_regression >>> X, y = make_regression(n_features=4, n_informative=2, ... random_state=0, shuffle=False) >>> regr = AdaBoostRegressor(random_state=0, n_estimators=100) >>> regr.fit(X, y) AdaBoostRegressor(n_estimators=100, random_state=0) >>> regr.predict([[0, 0, 0, 0]]) array([4.7972...]) >>> regr.score(X, y) 0.9771...
有关利用的详细示例
AdaBoostRegressor
要将决策树序列匹配为弱学习者,请参阅 使用AdaBoost进行决策树回归 .- fit(X, y, sample_weight=None)[源代码]#
从训练集(X,y)构建增强的分类器/回归器。
- 参数:
- X形状(n_samples,n_features)的{类数组,稀疏矩阵}
训练输入样本。稀疏矩阵可以是CSC、CSR、COO、DOK或LIL。COO、DOK和LIL转换为CSR。
- y形状类似阵列(n_samples,)
The target values.
- sample_weight形状类似数组(n_samples,),默认=无
样本重量。如果无,则样本权重初始化为1 / n_samples。
- 返回:
- self对象
拟合估计量。
- get_params(deep=True)[源代码]#
获取此估计器的参数。
- 参数:
- deep布尔,默认=True
如果为True,将返回此估计量和包含的作为估计量的子对象的参数。
- 返回:
- paramsdict
参数名称映射到其值。
- predict(X)[源代码]#
预测X的回归值。
输入样本的预测回归值被计算为集合中回归量的加权中位数预测。
- 参数:
- X形状(n_samples,n_features)的{类数组,稀疏矩阵}
训练输入样本。稀疏矩阵可以是CSC、CSR、COO、DOK或LIL。COO、DOK和LIL转换为CSR。
- 返回:
- y形状的nd数组(n_samples,)
预测回归值。
- score(X, y, sample_weight=None)[源代码]#
返回预测的决定系数。
决定系数 \(R^2\) 被定义为 \((1 - \frac{u}{v})\) ,在哪里 \(u\) 是残差平方和
((y_true - y_pred)** 2).sum()
和 \(v\) 是平方总和((y_true - y_true.mean()) ** 2).sum()
.最好的可能分数是1.0,并且可以是负的(因为模型可以任意更差)。始终预测的期望值的恒定模型y
如果不考虑输入功能,就会得到 \(R^2\) 评分0.0。- 参数:
- X形状类似阵列(n_samples,n_features)
Test samples. For some estimators this may be a precomputed kernel matrix or a list of generic objects instead with shape
(n_samples, n_samples_fitted)
, wheren_samples_fitted
is the number of samples used in the fitting for the estimator.- y形状的类似阵列(n_samples,)或(n_samples,n_outputs)
真正的价值观
X
.- sample_weight形状类似数组(n_samples,),默认=无
样本重量。
- 返回:
- score浮子
\(R^2\) 的
self.predict(X)
w.r.t.y
.
注意到
的 \(R^2\) 呼叫时使用的分数
score
在回归器上使用multioutput='uniform_average'
从0.23版本开始,与默认值保持一致r2_score
.这影响了score
所有多输出回归器的方法(除了MultiOutputRegressor
).
- set_fit_request(*, sample_weight: bool | None | str = '$UNCHANGED$') AdaBoostRegressor [源代码]#
请求元数据传递给
fit
法请注意,此方法仅适用于以下情况
enable_metadata_routing=True
(见sklearn.set_config
).请参阅 User Guide 关于路由机制如何工作。The options for each parameter are:
True
:元数据被请求并传递给fit
如果提供的话。如果未提供元数据,则会忽略请求。False
:未请求元数据,元估计器不会将其传递给fit
.None
:不请求元数据,如果用户提供元估计器,则元估计器将引发错误。str
:元数据应通过此给定别名而不是原始名称传递给元估计器。
默认 (
sklearn.utils.metadata_routing.UNCHANGED
)保留现有请求。这允许您更改某些参数的请求,而不是其他参数。Added in version 1.3.
备注
只有当该估计器用作元估计器的子估计器时,该方法才相关,例如在
Pipeline
.否则就没有效果了。- 参数:
- sample_weight字符串、真、假或无, 默认=sklearn.utils. metalics_Routing.UNChanged
元数据路由
sample_weight
参数fit
.
- 返回:
- self对象
更新的对象。
- set_params(**params)[源代码]#
设置此估计器的参数。
该方法适用于简单估计器以及嵌套对象(例如
Pipeline
).后者具有以下形式的参数<component>__<parameter>
以便可以更新嵌套对象的每个组件。- 参数:
- **paramsdict
估计参数。
- 返回:
- self估计器实例
估计实例。
- set_score_request(*, sample_weight: bool | None | str = '$UNCHANGED$') AdaBoostRegressor [源代码]#
请求元数据传递给
score
法请注意,此方法仅适用于以下情况
enable_metadata_routing=True
(见sklearn.set_config
).请参阅 User Guide 关于路由机制如何工作。The options for each parameter are:
True
:元数据被请求并传递给score
如果提供的话。如果未提供元数据,则会忽略请求。False
:未请求元数据,元估计器不会将其传递给score
.None
:不请求元数据,如果用户提供元估计器,则元估计器将引发错误。str
:元数据应通过此给定别名而不是原始名称传递给元估计器。
默认 (
sklearn.utils.metadata_routing.UNCHANGED
)保留现有请求。这允许您更改某些参数的请求,而不是其他参数。Added in version 1.3.
备注
只有当该估计器用作元估计器的子估计器时,该方法才相关,例如在
Pipeline
.否则就没有效果了。- 参数:
- sample_weight字符串、真、假或无, 默认=sklearn.utils. metalics_Routing.UNChanged
元数据路由
sample_weight
参数score
.
- 返回:
- self对象
更新的对象。