xgboost论文详细介绍及翻译

XGboost:一种可扩展的boosting系统”论文介绍

摘要

作者介绍了一种可扩展的端到端tree boosting模型,这种模型能广泛应用于数据科学中,模型训练迅速,并能得到目前为止最好的实验结果。文章可分为两大部分,第一部分作者介绍了模型的原理,并提出了相应的算法;而第二部分主要讲系统的设计和实现。
  第一部分中,作者介绍了模型的原理和推导,包括损失函数的构建、树分裂的原理等。为了有效的进行模型运算,作者提出了两种算法,一种为精确的朴素算法(Basic Exact Greedy Algorithm),而另一种为估计算法(Approximate Algorithm),这种算法能快速有效的进行分割点的查找,并能进行分布式的训练。在该估计算法下,作者还提出了对稀疏数据的解决方案(稀疏感知算法:Sparsity-aware algorithm)和一种能提出候选分割点的方法(加权分位草图:Weighted quantile sketch)。
  第二部分中在系统设计与实现中,作者提出了三种可用于系统优化的方法:适用于并行学习的列块(Column Block for Parallel Learning)、自适应cache访问(Cache-aware Access)、核外计算的块(Blocks for Out-of-core Computation),而这三种方法也正是该系统能够可扩展(Scalable)的原因。
  本文通过摘取和理解其中重要的部分,对该论文中的内容作出自己的解读和探讨。

一、模型的建立与推导

1.1正则化目标函数

由于XGboost是基于Tree Boosting的方法,因此作者首先简要地回顾了Tree Boosting的方法,并对其正则化目标函数做了微小的改进。
  对于给出的数据集:在这里插入图片描述
  其中n为数据集的个数;xi为第i条数据,且为m维向量;yi为第i条数据所对应的标签。
  Boosting是集成学习的一种算法,其基本思想是将一族弱分类器提升为强学习器的算法。为了拟合数据集真实的分布,我们定义有K个弱分类器用于预测输出结果:
在这里插入图片描述
  其中 y ^ \widehat{y} y i

XGBoost是一种基于决策树的集成学习算法,它在Kaggle等数据科学竞赛中有着广泛的应用。以下是XGBoost模型的详细介绍: ## 1. 原理 XGBoost的原理是通过构建多个弱分类器(决策树),将它们组合成一个强分类器。在每一次迭代中,XGBoost会根据数据集的特征,构建一棵决策树,并将这棵树的预测结果加入到前面决策树的预测结果中,形成一个累加的预测结果。XGBoost模型在构建每一棵决策树时,会根据之前已经建好的决策树的预测结果,将数据集的残差作为新的标签,然后训练新的决策树。通过不断迭代,XGBoost模型能够逐步提高预测的准确率。 ## 2. 特点 XGBoost模型有以下几个特点: - 速度快:XGBoost模型在训练和预测时都非常快,这是由于其采用了一些优化技巧,例如按特征列存储数据,利用缓存技术等。 - 高效性:XGBoost模型在处理大规模数据集时表现出色,因为它可以进行分布式计算。 - 鲁棒性:XGBoost模型对缺失值和异常值具有较好的处理能力。 - 准确率高:XGBoost模型在数据集较大和噪声较多的情况下,也能够取得很好的预测效果。 ## 3. 参数 XGBoost模型的训练过程中,有许多参数需要设置,以下是一些比较重要的参数: - max_depth:决策树的最大深度。 - learning_rate:学习率,即每一次迭代中,模型参数的更新步长。 - n_estimators:弱分类器的数量。 - subsample:每次迭代时,模型所使用的数据集的比例。 - colsample_bytree:每次迭代时,模型所使用的特征的比例。 - objective:损失函数。 ## 4. 应用场景 XGBoost模型在许多数据科学竞赛中都有着很好的表现,例如Kaggle的房价预测、葡萄酒品质预测等。除此之外,XGBoost模型还可以应用于金融风控、广告点击率预测、推荐系统等领域。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值