xgboost简单介绍_Xgboost数学原理及特点

Xgboost是一个高效的Tree boosting工具,以其优秀的性能和广泛的语言支持受到青睐。文章详细介绍了Xgboost的目标函数、泰勒展开式以及如何通过损失函数优化树的结构。此外,还探讨了处理稀疏数据、缺失值的方法,以及分布式算法的实现,展示了Xgboost在数据科学比赛中的强大能力。
摘要由CSDN通过智能技术生成

Xgboost是目前Tree boosting method方法实现效果最好的工具,支持几乎所有的主流语言调用,在Kaggle等众多数据科学比赛中取得了十分优秀的成绩,该包由DMLC开发并维护。官网列出了它的优势所在我就直接贴出来了

按照官方的说法xgboost并不是boosting tree的简单实现,而是一个boosting系统。

首先是模型,假设有K棵树

$$\hat{y}_i=\sum^K f_k(x_i)$$

很简单,就是我们之前介绍的Additive Model,然后是目标函数

$$Obj=\sum_{i=1}^nl(y_i,\hat y_i)+\sum_{k=1}^K\Omega(f_k)$$

其中第一项表示损失函数,第二项表示正则项(包含树的深度和节点数量、叶节点权重的L2范数等)用于控制模型复杂度。由于这是一个Additive Model对于第t轮预测有:

$$Obj^{t}=\sum_{i=1}^nl(y_i,\hat y_i^{(t-1)}+f_t(x_i))+\sum_{k=1}^K\Omega(f_k)+constant$$

将损失函数做泰勒展开有:

$$Obj^t\simeq\sum_{i-1}^n[l(y_i,\hat y_i^{(t-1)})+g_if_t(x_i)+\frac{1}{2}h_if_t^2(x_i)]+\sum_{k=1}^K\Omega(f_k)+constant$$

去掉常数项有:

$$Obj^t\simeq\sum_{i-1}^n[g_if_t(x_i)+\frac{1}{2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值