AdaBoot算法学习笔记

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AdaBoot算法学习笔记相关的知识,希望对你有一定的参考价值。

算法原理

相比单一的学习器,集成Ensemble的思想是将不同的分类器组合,以期得到更优的(组合)模型用于预测。根据实现的不同,集成算法又有多种形式:

  • 不同算法集成
  • 相同算法的不同参数(设置)集成
  • 使用数据集的不同部分

集成Ensemble算法主要分为Bagging和Boosting,AdaBoost是Boosting算法的主要代表,是"Adaptive Boosting"(自适应增强)的缩写,由Yoav Freund和Robert Schapire在1995年提出。它的自适应在于:前一个基本分类器分错的样本会得到加强,加权后的全体样本再次被用来训练下一个基本分类器。同时,在 每一轮中加入一个新的弱分类器,直到达到某个预定的足够小的错误率或达到预先指定的最大迭代次数。

整个Adaboost 迭代算法就3步:

  1. 初始化训练数据的权值分布。如果有N个样本,则每一个训练样本最开始时都被赋予相同的权值:1/N。
  2. 训练弱分类器。具体训练过程中,如果某个样本点已经被准确地分类,那么在构造下一个训练集中,它的权值就被降低;相反,如果某个样本点没有被准确地分类,那么它的权值就得到提高。然后,权值更新过的样本集被用于训练下一个分类器,整个训练过程如此迭代地进行下去。
  3. 将 各个训练得到的弱分类器组合成强分类器。各个弱分类器的训练过程结束后,加大分类误差率小的弱分类器的权重,使其在最终的分类函数中起着较大的决定作用, 而降低分类误差率大的弱分类器的权重,使其在最终的分类函数中起着较小的决定作用。换言之,误差率低的弱分类器在最终分类器中占的权重较大,否则较小。

 

AdaBoost算法过程

 技术分享

 

Reference:

【1】Adaboost 算法的原理与推导

【2】深入浅出ML之Boosting家族

以上是关于AdaBoot算法学习笔记的主要内容,如果未能解决你的问题,请参考以下文章

笔记总结计算机专业面向期末考试复习笔记专业课学习笔记课外算法与其他学习笔记

数据结构与算法学习笔记

ios学习笔记---排序算法

编程学习 l 《算法图解》读书笔记:选择排序(含 pdf 版本)

数据结构与算法学习笔记(10) 排序

算法学习笔记