本文提供了在 Azure Databricks 中使用 XGBoost 训练机器学习模型的示例。 用于机器学习的 Databricks Runtime 包括适用于 Python 和 Scala 的 XGBoost 库。 可以在单个计算机上或分布式方式训练 XGBoost 模型。
在单个节点上训练 XGBoost 模型
可以使用 Python xgboost
包训练模型。 此包仅支持单节点工作负荷。 若要训练 PySpark ML 管道并利用分布式训练,请参阅 XGBoost 模型的分布式训练。
XGBoost Python 笔记本
XGBoost 模型的分布式训练
对于 XGBoost 模型的分布式训练,Databricks 包括基于 xgboost
包的 PySpark 估计器。 Databricks 还包括 Scala 包 xgboost-4j
。 有关详细信息和示例笔记本,请参阅以下内容:
- 使用
xgboost.spark
对 XGBoost 模型进行分布式训练(Databricks Runtime 12.0 ML 及更高版本) - 使用
sparkdl.xgboost
对 XGBoost 模型进行分布式训练(从 Databricks Runtime 12.0 ML 开始已弃用) - 使用 Scala 的 XGBoost 模型的分布式训练
在 Azure Databricks 上安装 XGBoost
如果需要在 Databricks Runtime 上安装 XGBoost,或使用不同于 Databricks Runtime ML 预装的版本,请按照以下说明操作。
在 Databricks Runtime ML 上安装 XGBoost
XGBoost 包含在 Databricks Runtime ML 中。 可以在 Databricks Runtime ML 中使用这些库,而无需安装任何包。
有关在所使用的 Databricks Runtime ML 版本中安装的 XGBoost 版本,请参阅 发行说明。 若要在 Databricks Runtime ML 中安装其他 Python 版本,请将 XGBoost 安装为 Databricks PyPI 库。 将其指定为以下内容,并将 <xgboost version>
替换为所需的版本。
xgboost==<xgboost version>
在 Databricks Runtime 上安装 XGBoost
Python 包:在笔记本单元中执行以下命令:
%pip install xgboost
若要安装特定版本,请将 <xgboost version>
替换为所需的版本。
%pip install xgboost==<xgboost version>
- Scala/Java 包:以 Databricks 库 的形式安装,其中包含 Spark 包名称
xgboost-linux64
。