AdaBoostClassifier#
- class sklearn.ensemble.AdaBoostClassifier(estimator=None, *, n_estimators=50, learning_rate=1.0, algorithm='deprecated', random_state=None)[源代码]#
AdaBoost分类器。
AdaBoost [1] 分类器是一个元估计器,首先在原始数据集上匹配分类器,然后在同一数据集上匹配分类器的额外副本,但调整了错误分类的实例的权重,以便后续分类器更多地关注困难的情况。
此类实现基于 [2].
阅读更多的 User Guide .
Added in version 0.14.
- 参数:
- estimator对象,默认=无
从其构建提升集合的基本估计器。需要支持样本加权,以及适当的
classes_
和n_classes_
美德.先知-愿如果None
,那么基本估计器是DecisionTreeClassifier
初始化为max_depth=1
.Added in version 1.2:
base_estimator
更名为estimator
.- n_estimatorsint,默认=50
终止提升的最大估计数。如果完全适合,学习过程会提前停止。值必须在范围内
[1, inf)
.- learning_ratefloat,默认=1.0
在每次增强迭代时应用于每个分类器的权重。更高的学习率会增加每个分类器的贡献。两者之间存在权衡
learning_rate
和n_estimators
参数值必须在范围内(0.0, inf)
.- algorithm' SAME '},默认=' SAME '
使用SAME离散增强算法。
自 1.6 版本弃用:
algorithm
已被弃用,并将在1.8版本中删除。此估计器仅实现“SAME”算法。- random_stateint,RandomState实例或无,默认=无
控制每次给定的随机种子
estimator
在每次助推迭代时。因此,只有在以下情况下才使用estimator
公开一个random_state
.传递int以获得跨多个函数调用的可重复输出。看到 Glossary .
- 属性:
- estimator_估计器
生成集合的基本估计器。
Added in version 1.2:
base_estimator_
更名为estimator_
.- estimators_分类器列表
拟合子估计量的集合。
- classes_形状的nd数组(n_classes,)
班级标签。
- n_classes_int
班级的数量。
- 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.
参见
AdaBoostRegressor
AdaBoost回归量首先在原始数据集上匹配回归量,然后在同一数据集上匹配回归量的其他副本,但实例的权重根据当前预测的误差进行调整。
GradientBoostingClassifier
GB以前瞻性的方式构建了添加剂模型。回归树适合二项或多项偏差损失函数的负梯度。二元分类是仅引发单个回归树的特殊情况。
sklearn.tree.DecisionTreeClassifier
一种用于分类的非参数监督学习方法。创建一个模型,通过学习从数据特征推断的简单决策规则来预测目标变量的值。
引用
[1]Y.弗罗因德,R. Schapire,“在线学习的决策理论概括和Boosting的应用”,1995年。
示例
>>> from sklearn.ensemble import AdaBoostClassifier >>> from sklearn.datasets import make_classification >>> X, y = make_classification(n_samples=1000, n_features=4, ... n_informative=2, n_redundant=0, ... random_state=0, shuffle=False) >>> clf = AdaBoostClassifier(n_estimators=100, random_state=0) >>> clf.fit(X, y) AdaBoostClassifier(n_estimators=100, random_state=0) >>> clf.predict([[0, 0, 0, 0]]) array([1]) >>> clf.score(X, y) 0.96...
有关使用AdaBoost将DecisionTrees序列作为弱学习者的详细示例,请参阅 多类AdaBoosted决策树 .
有关使用AdaBoost来适应由两个高斯分位数集群组成的非线性可分离分类数据集的详细示例,请参阅 两级AdaBoost .
- decision_function(X)[源代码]#
计算的决策函数
X
.- 参数:
- X形状(n_samples,n_features)的{类数组,稀疏矩阵}
训练输入样本。稀疏矩阵可以是CSC、CSR、COO、DOK或LIL。COO、DOK和LIL转换为CSR。
- 返回:
- score形状的nd数组(n_samples,k)
输入样本的决策函数。输出的顺序与 classes_ 属性二进制分类是一种特殊情况,
k == 1
否则k==n_classes
.对于二进制分类,更接近-1或1的值意味着更像是中的第一或第二类classes_
,分别。
- 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,)
预测的班级。
- predict_log_proba(X)[源代码]#
预测X的类对数概率。
输入样本的预测类别日志概率被计算为集合中分类器的加权平均预测类别日志概率。
- 参数:
- X形状(n_samples,n_features)的{类数组,稀疏矩阵}
训练输入样本。稀疏矩阵可以是CSC、CSR、COO、DOK或LIL。COO、DOK和LIL转换为CSR。
- 返回:
- p形状的nd数组(n_samples,n_classes)
输入样本的类概率。输出的顺序与 classes_ 属性
- predict_proba(X)[源代码]#
预测X的类概率。
输入样本的预测类别概率被计算为集成中分类器的加权平均预测类别概率。
- 参数:
- X形状(n_samples,n_features)的{类数组,稀疏矩阵}
训练输入样本。稀疏矩阵可以是CSC、CSR、COO、DOK或LIL。COO、DOK和LIL转换为CSR。
- 返回:
- p形状的nd数组(n_samples,n_classes)
输入样本的类概率。输出的顺序与 classes_ 属性
- score(X, y, sample_weight=None)[源代码]#
返回给定测试数据和标签的平均准确度。
在多标签分类中,这是子集准确度,这是一个苛刻的指标,因为您需要为每个样本正确预测每个标签集。
- 参数:
- X形状类似阵列(n_samples,n_features)
测试样本。
- y形状的类似阵列(n_samples,)或(n_samples,n_outputs)
真正的标签
X
.- sample_weight形状类似数组(n_samples,),默认=无
样本重量。
- 返回:
- score浮子
平均准确度
self.predict(X)
w.r.t.y
.
- set_fit_request(*, sample_weight: bool | None | str = '$UNCHANGED$') AdaBoostClassifier [源代码]#
请求元数据传递给
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$') AdaBoostClassifier [源代码]#
请求元数据传递给
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对象
更新的对象。
- staged_decision_function(X)[源代码]#
计算的决策函数
X
每次boosting迭代。该方法允许在每次增强迭代后进行监控(即确定测试集上的错误)。
- 参数:
- X形状(n_samples,n_features)的{类数组,稀疏矩阵}
训练输入样本。稀疏矩阵可以是CSC、CSR、COO、DOK或LIL。COO、DOK和LIL转换为CSR。
- 收益率:
- score形状nd数组的生成器(n_samples,k)
输入样本的决策函数。输出的顺序与 classes_ 属性二进制分类是一种特殊情况,
k == 1
否则k==n_classes
.对于二进制分类,更接近-1或1的值意味着更像是中的第一或第二类classes_
,分别。
- staged_predict(X)[源代码]#
X的回归阶段预测。
输入样本的预测类被计算为集成中分类器的加权平均预测。
该生成器方法在每次增强迭代之后产生总体预测,因此允许监测,例如在每次增强之后确定对测试集的预测。
- 参数:
- X形状类似阵列(n_samples,n_features)
输入样本。稀疏矩阵可以是CSC、CSR、COO、DOK或LIL。COO、DOK和LIL转换为CSR。
- 收益率:
- y形状nd数组的生成器(n_samples,)
预测的班级。