提升Boost
Boosting算法的工作机制是首先从训练集用初始权重训练出一个弱学习器1,根据弱学习的学习误差率表现来更新训练样本的权重,使得之前弱学习器1学习误差率高的训练样本点的权重变高,使得这些误差率高的点在后面的弱学习器2中得到更多的重视。然后基于调整权重后的训练集来训练弱学习器2.,如此重复进行,直到弱学习器数达到事先指定的数目T,最终将这T个弱学习器通过集合策略进行整合,得到最终的强学习器。
提升算法需要解决的问题:
1)如何计算弱分类器学习误差率e?
2) 如何得到弱学习器权重系数α?
3)如何更新样本权重D?
4) 使用何种结合策略结合得到强学习算法?
1、梯度提升(Gradient Boosting, GB)
在每一步生成弱分类器后,依据损失函数的梯度方向,迭代选择负梯度方向上的基函数,逼近局部极小值。
->GBDT & Xgboost
2、Boost Tree
在 boost tree 算法中,是以决策树为基函数的。思想与前向学习一致,也是逐步地将单个树加入到最终的分类器中。
3、样本加权
考虑提高分类错误样本的权值,即每次更关心做错了的部分,从而提高分类器的能力。
->Adaboost