GBDT(梯度提升决策树)

  1. 梯度提升:在每一轮迭代中,GBDT会计算出损失函数的梯度,然后用这个梯度信息来训练新的决策树。这个过程中,模型会试图减小损失函数的梯度,从而提高模型的性能。
  1. 决策树:GBDT通常使用CART(分类与回归树)作为基础学习器,也就是每一轮迭代中训练的模型是一个决策树。
  1. 集成:GBDT通过将多个决策树集成在一起,来提高整体模型的性能。最终的预测结果是多个决策树预测结果的加权和。
  1. 正则化:为了防止过拟合,GBDT通常会采用正则化技术,如限制决策树的深度或叶子节点的数量。
 

决策树集成的体现,通过一颗颗新的决策树的梯度下载提升整体模型预测水准,权重由学习率控制

 

GBDT和传统梯度下降算法区别

  1. 目标函数不同
      • GBDT的主要目标是逐步改进一个模型,使其逼近真实的目标函数。它通过训练一系列决策树来减小损失函数(例如均方误差)的值,每个新的树都是为了纠正前一个模型的错误。
      • 传统梯度下降主要用于优化参数化的模型,例如线性回归或神经网络。其目标是通过调整模型参数来最小化损失函数。
  1. 优化方式不同
      • GBDT采用前向分布策略,通过负梯度信息训练一个新的决策树,然后将其添加到模型中。这是一种贪婪算法,每一步都试图最小化损失函数。
      • 传统梯度下降则是一种迭代的数值优化方法,它通过计算损失函数的梯度来更新参数,使其朝着梯度下降最快的方向移动。它可以用于任何可微分的损失函数,而不仅仅是均方误差。
  1. 模型结构不同
      • GBDT使用决策树作为基学习器,每个决策树通常是一个回归树或分类树。这些决策树是非参数的,可以适应复杂的数据分布。
      • 传统梯度下降可以用于各种参数化模型,包括线性模型、神经网络等。这些模型的结构在训练过程中保持不变。
  1. 集成方式不同
      • GBDT是一种集成方法,最终模型是多个决策树的组合。它通过加法模型的方式将多个树的输出相加,得到最终的预测。
      • 传统梯度下降通常是单一模型的优化,最终输出一个参数化模型。