十大经典预测算法(八)---adboost

1、基本原理算法

  AdaBoost是adaptive boosing的缩写,它是一种基于Boosting框架的算法。下图为该算法的迭代过程。框架

AdaBoost从原始数据集D1开始学习第个模型,通过三轮的迭代,获得三个弱分类器,每一轮的迭代都要评估下模型的分类偏差,在一轮时把分错的样本进行加权,最后把三个分类器按照必定的权重组合起来获得一个强分类器。学习

 

从上图能够看出,每个弱分类器的模型都很简单,示例图中的它们只是一个一层的决策树,每个弱分类器在融合的时候都有一个权重,三个弱分类器融合后,变成一个能力更强的复杂模型。spa

  

  由上图可知,AdaBoost是由多个弱分类器组成,每次由一个弱分类器训练数据集,而后把这个训练器分错的数据集权重加大,没分错的减少权重,再由下一个弱学习器训练这个数据集,这样一直迭代下去,最后融合成一个最强的学习器。3d

  AdaBoost算法构建过程,blog

  一、假设训练集T = {(X1,Y1),(X2,Y2)……(Xn,Yn)}原理

  二、初始化训练数据权重分布,im

    D1 = (Wl1,Wl2……Wln),Wli = 1/n,i=1,2……nd3

  三、使用具备权值分布的Dm的训练集学习,获得基本分类器数据

      

  四、计算Gm(x)在训练集上的分类偏差

    

 

  五、计算Gm(x)模型的权重系数am

    

  六、权重训练集的权值分布

    

  七、这里Zm是规范化因子(规一化)

    

  八、构建分类器的线性组合

    

  九、获得最终分类器

    

AdaBoost算法推导

  

算法的直观理解

   

 

 

 

 

 

 

 

 

 

 AdaBoost小结

  一、AdaBoost是一种Boosting的融合算法,它经过级联的方式,把一系列的弱学习模型融合在一块儿变成一个强分类器。

  二、AdaBoost既能够作分类,也能够作回归

  三、AdaBoost作分类模型的时候,默认的基学习类型是决策树。

   四、AdaBoost的多个子模型经过加权求和的方式融合,并非简单的求平均,子模型的权重取决于子模型的偏差率大小,偏差率越小,权值越大

相关文章
相关标签/搜索