集成学习——Adaboost

1. Adaboost算法基本原理

Adaboost:Adaptive Boosting(自适应增强)
自适应在于:前一个分类器分错的样本会被用来训练下一个分类器。该方法对噪声数据和异常数据很敏感。 但不容易出现过拟合。
每一轮训练都更加关心分类错误的案例,增加分类错误的样例权重,减少分类正确的样例权重

这里写图片描述
这里写图片描述
这里写图片描述

Adaboost 优点:
    很好的利用了弱分类器进行级联。
    可以将不同分类算法作为弱分类器
    Adaboost 具有很好高的精度,不容易过拟合
    相对于 bagging/Random Forest 算法,Adaboost充分考虑到每个分类器的权重

Adaboost 缺点:
    迭代次数也就是弱分类器数目不太好设定。
    训练比较长
    预测效果依赖于弱分类器的选择(Adaboost只是一个算法框架)

2.Adaboost 代码

sklearn.ensemble.AdaBoostClassifier(
    #弱分类器自身参数
    base_estimator = DcisionTreeClassifier,     #选择一个弱分类器

    #boosting框架参数
    n_estimators = 50,      #弱学习器 最大迭代次数
    learning_rate = 1.0,    #弱学习器 的权重缩减系数(0-1)
    algorithm = 'SAMME.R',  #弱分类器支持概率预测
    random_state = None

    )

猜你喜欢

转载自blog.csdn.net/wsp_1138886114/article/details/80554332
今日推荐