白板GBDT

白板GBDT思路。

一. 概括

  • 解决问题:分类或回归
  • 定义:GBDT是 Boosting Tree 的 一种改进,利用损失函数的负梯度作为残差的近似值,解决了Boosting Tree 对一般损失函数优化困难的问题。
  • Boosting Tree: 以分类树或回归树为基本分类器的提升方法。

二. 推导

1.第t棵树的损失函数
$L(y,F(x)) = L(y,y^{t-1}+f_t(x))$
2.泰勒展开(GBDT一阶导函数、XGBoost二阶导函数展开)
$L(y,F(x)) = L(y,y^{t-1}) + gf_t(x)+\frac{1}{2}hf_t^2(x) 二阶泰勒展开$
$g:一阶偏导 h:二阶偏导$
3.函数空间最小值
$g_i = \sigma_{y^{t-1}}l(y_i,y_i^{t-1})$
$h_i = \sigma^{2}_{y^{t-1}}l(y_i,y_i^{t-1})$
$f_t(x) = - \frac{g}{h} $
$GBDT时h = 1, y^{t-1}为之前t-1颗树的累加值$
4.计算第T棵CART树,拟合$f_t(x)$

三.参考资料

1.xgboost

2.梯度提升树(GBDT)原理小结]

3.GBDT算法原理深入解析