0%

GBDT理解

2018年7月24日 下午2:02

GBDT(MART) 迭代决策树入门教程 | 简介 - CSDN博客
本文对c4.5分类树,回归树,GBDT核心等概念做出来清晰的解释。

  1. GBDT主要由三个概念组成:Regression Decistion Tree(即DT),Gradient Boosting(即GB),Shrinkage (算法的一个重要演进分枝,目前大部分源码都按该版本实现)。
  2. GBDT的核心就在于, 每一棵树学的是之前所有树结论和的残差,这个【残差】就是一个加预测值后能得真实值的累加量
    1. 比如A的真实年龄是18岁,但第一棵树的预测年龄是12岁,差了6岁,即残差为6岁。那么在第二棵树里我们把A的年龄设为6岁去学习,如果第二棵树真的能把A分到6岁的叶子节点,那累加两棵树的结论就是A的真实年龄;如果第二棵树的结论是5岁,则A仍然存在1岁的残差,第三棵树里A的年龄就变成1岁,继续学。
  3. 这篇文章讲解的例子是GBDT的一个特例
    1. 在当前版本GBDT描述中,的确没有用到Gradient,该版本用残差作为全局最优的绝对方向,并不需要Gradient求解.
  4. 既然图1和图2最终效果相同,为何还需要GBDT呢?
    1. 核心思想就是:为了防止过拟合别一次追求完美
  5. 与adaboost的区别?
    1. GBDT和adaboost都属于boosting,boosting的核心是:要分阶段,考虑的重点在于考虑当前阶段掉队的数据,然后在下一个阶段着重考虑他们
    2. GBDT的方法:通过梯度来构造掉队数据,再针对性训练(这个例子中梯度用残差代替)
    3. adaboost方法:通过给掉队的数据加大权重训练