Boosting是一种通过组合弱学习器来产生强学习器的通用且有效的方法,Boosting方法是使用同一组数据集进行反复学习,得到一系列简单模型,然后组合这些模型构成一个预测性能十 分强大的机器学习模型。常见的算法有adaboost。对于Adaboost来说,解决上述的两个问题的方式是:1. 提高那些被前一轮分类器错误分类的样本的权重,而降低那些被正确分类的样本的 权重。这样一来,那些在上一轮分类器中没有得到正确分类的样本,由于其权重的增大而在后一轮的训练中“备受关注”。2. 各个弱分类器的 组合是通过采取加权多数表决的方式,具体来说,加大分类错误率低的弱分类器的权重,因为这些分类器能更好地完成分类任务,而减小分 类错误率较大的弱分类器的权重,使其在表决中起较小的作用。分类器是一种元估计器,它首先在原始数据集上拟合一个分类器,然后在同一数据集上拟合该分类器的其他副本,但在该数据集上调整分类错误实例的权值,以便随后的分类器更多地关注困难的情况。
Parameters
base_estimator:object, default=None
在此基础上建立了提振集合。支持样本加权是必需的,以及适当的classes_和n_classes_属性。如果为None,则基本估计器为max_depth=1初始化的DecisionTreeClassifier。
n_estimatorsint, default=50
终止助推的最大估计数。在完全适合的情况下,学习过程提前停止。
learning_ratefloat, default=1.
学习率通过learning_rate来缩减每个分类器的贡献。在learning_rate和n_estimators之间有一个权衡。
algorithm{‘SAMME’, ‘SAMME.R’}, default=’SAMME.R’
如果SAMME。R '然后用同样的词。R实提升算法。base_estimator必须支持类概率的计算。如果' SAMME ',则使用相同的离散增强算法。SAMME。R算法通常比SAMME收敛更快,用更少的加速迭代实现更低的测试误差。
random_stateint, RandomState instance or None, default=None
控制在每次增强迭代的每个base_estimator中给出的随机种子。因此,它只在base_estimator公开random_state时使用。通过多个函数调用传递一个int,用于可重复输出。看到术语表。
Attributes
base_estimator_estimator
总体增长的基础估计量。
estimators_list of classifiers
拟合估计量的集合。
classes_ndarray of shape (n_classes,)
类标签
n_classes_int
标签类型