Logo
Section 1 / 10

简介

XGBoost与梯度提升决策树简介

导入

简介

XGBoost与梯度提升决策树简介

在本章中,你将学习 XGBoost,这是一个用于高效实现梯度提升决策树的库。它是数据科学中用于分类和回归任务的主流工具之一。

A. XGBoost 与 scikit-learn 的对比

在前面三章中,我们使用 scikit-learn 完成了多种与数据相关的任务。在本章中,我们将介绍 XGBoost,这是一款用于执行分类和回归任务的前沿数据科学库。XGBoost 采用梯度提升决策树技术,其性能优于普通的决策树。

除了性能优势外,XGBoost 实现了极为高效的梯度提升树算法。相比 scikit-learn 中的模型,XGBoost 模型训练速度更快,同时仍保持了同样简便的使用体验。

在使用中小规模数据集的数据科学和机器学习竞赛(例如 Kaggle)中,XGBoost 始终是表现最出色的模型之一。

B. 梯度提升树

普通决策树的问题在于,它们通常复杂度不足,难以捕捉大型数据集中的复杂模式。虽然我们可以不断增大决策树的最大深度以适应更大的数据集,但节点过多的决策树容易出现过拟合现象。

为此,我们采用梯度提升方法,将多个决策树“组合”成一个用于分类或回归的统一模型。梯度提升从一棵决策树开始,然后迭代地添加新的决策树,逐步修正模型在训练数据上的预测误差。

XGBoost 的 API 为我们自动处理了梯度提升的过程,最终得到的模型性能远优于单棵决策树。

使用 scikit-learn 进行聚类

XGBoost 基础知识