首页 > 试题广场 >

xgb的boosting如何体现,有什么特殊含义

[问答题]
xgb的boosting如何体现,有什么特殊含义

推荐
XGBoost是一种集成学习方法。有时,仅仅依赖一个机器学习模型的结果可能是不够的。集成学习提供了一种系统的解决方案,结合多个学习者的预测能力。所得结果是一个单一模型,它给出了来自多个模型的聚合输出。
形成集成的模型,也称为基学习器(Base Learner),可以来自相同的学习算法或不同的学习算法。
在Boosting中,树是按顺序构建的,这样每个后续树的目的是减少前一棵树的错误。每个树从它的前辈学习并更新残余误差。因此,序列中生长的树将从残差的更新版本中学习。
Boosting的基学习器是偏向性高的弱学习器,其预测能力比随机猜测略好。这些弱学习器中的每一个都为预测结果贡献了一些重要的信息,使得boosting技术能够通过有效地结合这些弱学习器来产生强学习器。最终的强学习器会降低偏见和差异。
XGBoost模型是大规模并行boosting tree的工具,它是目前较好的开源boosting tree工具包。因此,在了解XGBoost算法基本原理之前,需要首先了解Boosting Tree算法基本原理。
Boosting Tree模型采用加法模型前向分步算法,而且基模型都是决策树模型。前向分步算法(Forward stage wise additive model)是指在叠加新的基模型的基础上同步进行优化,具体而言,就是每一次叠加的模型都去拟合上一次模型拟合后产生的残差(Residual)。
xgboost的目标函数如下:

其中第一项是训练误差,第二项是正则项,控制着模型的复杂度,包括了叶子节点数目T和leaf score的L2模的平方。
在Gradient Boost中,每个新模型的建立是为了使得之前模型的残差往梯度方向减少(当然也可以变向理解成每个新建的模型都给予上一模型的误差给了更多的关注),与传统Boosting对正确、错误的样本进行直接加权还是有区别的。
XGBoost算法的基本思想与GBDT类似,不断地地进行特征分裂来生长一棵树,每一轮学习一棵树,其实就是去拟合上一轮模型的预测值与实际值之间的残差。当我们训练完成得到k棵树时,我们要预测一个样本的分数,其实就是根据这个样本的特征,在每棵树中会落到对应的一个叶子节点,每个叶子节点就对应一个分数,最后只需将每棵树对应的分数加起来就是该样本的预测值。
总结来说,Xgboost是Boosting算法的其中一种,Boosting算法的思想是将许多弱分类器集成在一起,形成一个强分类器。Xgboost是一种提升树模型,它是将许多树模型集成在一起,形成一个很强的分类器。而所用到的树模型则是CART回归树模型。 Xgboost是在GBDT的基础上进行改进,使之更强大,适用于更大范围。

延伸考点

  • xgb 的基学习器是?
    • CART
  • 还知道那些决策树?
    • ID3
    • C4.5
    • CART
    • 等等 
编辑于 2021-09-15 18:18:59 回复(0)
XGBoost是一种集成学习方法。有时,仅仅依赖一个机器学习模型的结果可能是不够的。集成学习提供了一种系统的解决方案,结合多个学习者的预测能力。所得结果是一个单一模型,它给出了来自多个模型的聚合输出。
形成集成的模型,也称为基学习器(Base Learner),可以来自相同的学习算法或不同的学习算法。
在Boosting中,树是按顺序构建的,这样每个后续树的目的是减少前一棵树的错误。每个树从它的前辈学习并更新残余误差。因此,序列中生长的树将从残差的更新版本中学习。
Boosting的基学习器是偏向性高的弱学习器,其预测能力比随机猜测略好。这些弱学习器中的每一个都为预测结果贡献了一些重要的信息,使得boosting技术能够通过有效地结合这些弱学习器来产生强学习器。最终的强学习器会降低偏见和差异。
XGBoost模型是大规模并行boosting tree的工具,它是目前较好的开源boosting tree工具包。因此,在了解XGBoost算法基本原理之前,需要首先了解Boosting Tree算法基本原理。
Boosting Tree模型采用加法模型前向分步算法,而且基模型都是决策树模型。前向分步算法(Forward stage wise additive model)是指在叠加新的基模型的基础上同步进行优化,具体而言,就是每一次叠加的模型都去拟合上一次模型拟合后产生的残差(Residual)。
发表于 2022-08-25 21:54:21 回复(0)