西瓜书+实战+吴恩达机器学习(十二)监督学习之AdaBoost
文章目录
如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔,我会非常开心的~
0. 前言
Boosting:先训练一个基学习器,然后根据学习器的表现对样本分布进行调整,给予做错的样本更多的关注,再基于调整后的分布训练下一个基学习器,如此重复达到指定的学习器数目,将这些学习器集成
Boosting主要关注降低偏差,因此能基于泛化性能弱的学习器构建出很强的集成。
AdaBoost是集成学习Boosting的代表算法。
1. AdaBoost算法
AdaBoost 算法流程可描述如下:
- 对每个训练样本设定相等的权重
- 训练一个加权错误率最低的最佳弱分类器,加权错误率为
- 根据加权错误率,计算弱分类器的分类器权重
- 更新权重向量,如果样本上一轮分类正确
- 更新权重向量,如果样本上一轮分类错误
- 执行第2步,继续训练下一个弱分类器,直到弱分类器达到指定数量
- 预测时,将数据通过每个弱分类器,将其结果加权求和
如下图所示(图源:机器学习):
如果发现当前学习器不满足条件(分类错误率大于0.5,意味着不如随机选择),则抛弃这个学习器,并停止学习。
如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔,我会非常开心的~