用于机器学习的 Databricks Runtime

用于机器学习的 Databricks Runtime (Databricks Runtime ML) 是一个针对机器学习而优化的现成环境。 Databricks Runtime ML 群集包括最常见的机器学习库,例如 TensorFlow、PyTorch、Keras 和 XGBoost,还包括分布式训练所需的库,如 Horovod。 使用 Databricks Runtime ML 可以加快群集创建速度,并确保已安装的库版本兼容。

有关使用 Azure Databricks 进行机器学习和深度学习的完整信息,请参阅Databricks 机器学习指南

有关每个 Databricks Runtime ML 版本的内容的信息,请参阅发行说明

Databricks Runtime ML 基于 Databricks Runtime 构建。 例如,用于机器学习的 Databricks Runtime 7.3 LTS 是基于 Databricks Runtime 7.3 LTS 构建的。 Databricks Runtime 发行说明中列出了基本 Databricks Runtime 中包含的库。

用于机器学习的 Databricks Runtime 的简介

本教程为 Databricks Runtime ML 的新用户设计。 完成此过程大约需要 10 分钟,并显示加载表格数据、训练模型、分布式超参数优化和模型推理的完整端到端示例。 示例还演示了如何使用 MLflow API 和 MLflow 模型注册表。

Databricks 教程笔记本

获取笔记本

Databricks Runtime ML 中已包含库

Databricks Runtime ML 包含各种常见的 ML 库。 该库使用每个发行版进行更新,以包括新功能和修复。

Azure Databricks 已将受支持的库的子集指定为顶层库。 对于这些库,Azure Databricks 提供了更快的更新节奏,并使用每个运行时版本更新到最新的包版本(禁止依赖项冲突)。 Azure Databricks 还为顶层库提供高级支持、测试以及嵌入式优化。

有关顶层库和其他提供的库的完整列表,请参阅以下有关每个可用运行时的文章:

如何使用 Databricks Runtime ML

除了预安装的库之外,Databricks Runtime ML 与群集配置中的 Databricks Runtime 和管理 Python 包方式有所不同。

使用 Databricks Runtime ML 创建群集

创建群集时,请从“Databricks 运行时版本”下拉列表中选择 Databricks Runtime ML 版本。 CPU 和启用 GPU 的 ML 运行时均可用。

选择 Databricks Runtime ML

如果选择已启用 GPU 的 ML 运行时,系统将提示你选择兼容的驱动程序类型和辅助角色类型 。 下拉列表中不兼容的实例类型将灰显。 “GPU 加速”标签下列出了已启用 GPU 的实例类型。

警告

工作区中自动安装到所有群集的库可能与 Databricks Runtime ML 中包含的库冲突。 在使用 Databricks Runtime ML 创建群集之前,为了避免库冲突,请清除“在所有群集上自动安装”复选框。

管理 Python 包

在 Databricks Runtime 9.0 ML 及更高版本中,virtualenv 包管理器用于安装 Python 包。 所有 Python 包都安装在单一的环境中:/databricks/python3

在 Databricks Runtime 8.4 ML 及更低版本中,Conda 包管理器用于安装 Python 包。 所有 Python 包都安装在单个环境中:/databricks/python2 在使用 Python 2 的群集上,/databricks/python3 在使用 Python 3 群集上。 不支持切换(或激活)Conda 环境。

有关管理 Python 库的信息,请参阅

支持自动化机器学习

Databricks Runtime ML 包括用于自动执行模型开发过程的工具,并帮助你有效地查找性能最佳的模型。

  • AutoML 自动创建、调整和评估一组模型,并为每个运行创建包含源代码的 Python 笔记本,以便你查看、重现和修改代码。
  • 托管的 MLFlow 管理端到端模型生命周期,包括跟踪试验运行、部署和共享模型以及维护集中式模型注册表。
  • Hyperopt扩展了 类,可自动执行和分发 ML 模型参数优化。