XGBoost专题(三)

XGBoost专题(三)

XGBoost是由\(k\)个基模型组成的一个加法模型。假设第\(t\)次迭代的树模型是\(f_t(x)\)

\[\widehat{y}_i^{(t)}=\sum_{k=1}^k f_k(x_i)=\widehat{y}_i^{(t-1)}+f_t(x_i) \]

特点

  1. 优化过的分布式梯度提升库,大规模并行boosting tree的工具;

原理

XGBoost和GBDT都是提升方法,最大的差异就是目标函数的定义。

目标函数

\[L=\underbrace{\sum_{i=1}^{n}l(y_i,\widehat{y}_i^{(k)})}_{控制模型偏差} + \underbrace{\sum_{t=1}^k \Omega(f_t)}_{控制模型方差} \]

训练方式,固定t步之前的结构,然后训练第t步的结构。因此得到第t步的损失函数:

\[L^{(t)}=\sum_{i=1}^n l(y_i, \widehat{y}_i^{(t-1)}+f_t(x_i)) + \Omega(f_t) + constant \]

通过泰勒展开公式来计算偏差,具体推导等复习的时候再写。然后最优化目标函数,现在我还不知道优化的算法是什么。

为什么XGBoost根据分裂收益来构建一棵树,这棵树算出的目标函数能逐步逼近最优解。

参考链接

  1. https://www.latexlive.com/
  2. https://zhuanlan.zhihu.com/p/83901304
posted @ 2021-07-20 15:16  小肚腩的世界  阅读(44)  评论(0编辑  收藏  举报