目录:
0x00 前言
0x01 AdaBoost思想及算法流程回顾
1.1 AdaBoost思想
1.2 AdaBoost算法流程
0x02 AdaBoost分类及回归参数
2.1 AdaBoostClassifier
2.2 AdaBoostRegressor
2.3 默认决策树的重要参数
0x03 sklearn中的使用
3.1 数据准备
3.2 调用Adaboost分类器
3.3 调参
0xFF 总结
0x00 前言
在前一篇文章《入门数据竞赛系列(4):AdaBoost算法思想及推导》中我们已经学习到了AdaBoost算法的思想及其公式推导。下面我们就以scikit-learn中Adaboost类库为例,重点对调参的注意事项进行学习。
0x01 AdaBoost思想及算法流程回顾
1.1 AdaBoost思想
AdaBoost算法是一种模型是加法模型、损失函数为指数函数、学习算法为前向分步算法的学习方法。在每一轮训练中,当前若分类器都会针对于先前分类器分类错误的样本实例而进行调整。通过对之前分类结果不对的训练实例多加关注,使新的预测因子越来越多地聚焦于之前错误的情况。
在上图中,我们每次分类都会调整分类所谓的点(符号变大),进而将t个弱分类器再乘以其相应权重累加起来,得到强分类器:
1.2 AdaBoost算法流程
- 初始化权重;
- 在第t步:
- 使用具有权重 的样本集来训练数据,得到弱分类器
- 计算弱分类器的错误率
- 计算弱分类器的系数:
- 更新样本集的权重分布:,其中
- 构建最终分类器为:
现在,我们已经复习了Adoost算法的基本内容。接下来我们就看看AdaBoost算法在解决分类和回归问题时在sklearn中的具体应用