跳到主要内容

通过免费托管的 MLflow 简化您的 MLflow 项目

·阅读时长 6 分钟
Abe Omorogbe
Databricks 机器学习产品经理

如果您是 MLflow 的新手,并希望开始使用完全托管且完全免费的 MLflow 部署,这篇博客将向您展示如何在几分钟内开始使用 MLflow。

简化您的机器学习项目:免费开始使用托管 MLflow

通过 Databricks Community Edition (CE) 探索大数据和机器学习的世界,它是 Databricks 平台的一个免费、有限1 的版本。该版本非常适合初学者以及 Databricks 和 MLflow 新手,它通过提供托管环境来简化学习过程。它消除了手动设置跟踪服务器的复杂性。Databricks CE 包含托管 MLflow,能够高效管理和可视化您的 MLflow 实验。这使其成为在用户友好的界面中开发机器学习项目的首选,允许您从您喜欢的 IDE、笔记本环境或 Databricks CE 笔记本内进行连接。

使用 Databricks CE 进行 MLflow 的好处

MLflow 是一个与任何平台兼容的开源框架,但与在其他平台相比,它在 Databricks(包括 Community Edition,CE)上使用时具有独特的优势。这些优势包括:

  1. 经济高效:MLflow on Databricks CE 免费,非常适合教育目的和小规模项目。

  2. 设置简单:随时随地访问完全托管的跟踪服务器和用户界面。要连接到 Databricks CE,只需执行 mlflow.login()

  3. 易于共享:在 Databricks 生态系统中,共享您的笔记本非常简单且无麻烦。

  4. 无缝集成:Databricks CE 允许直接存储和可视化 MLflow 实验、运行和模型。

  5. 可扩展性:MLflow on Databricks CE 为扩展您的项目提供了简单途径。它还与 Databricks 平台上的各种数据工具无缝集成。

场景

在这篇博客中,我们将介绍在本地设备上运行机器学习实验并在 托管在 Databricks CE 上的 MLflow 跟踪服务器上进行跟踪。

为了让您了解运行 MLflow 的可用选项,下图展示了常见设置配置的可能性。

Remote Tracking Server

在这篇博客中,我们展示的是 #3,使用远程(完全托管)跟踪服务器。

分步指南

1. 创建 Databricks CE 账户

如果您还没有,可以 注册一个免费账户。这个过程很快,通常只需 3 分钟。

填写注册表并选择“开始使用 Community Edition”。

Databricks CE Signup Page

注册后,您将收到有关如何设置密码的信息,您可以使用该密码登录 CE2

2. 安装依赖项

在开始之前,请确保您已安装必要的软件包。在您的设备上,在您喜欢的 IDE 或笔记本中运行以下命令

%pip install -q mlflow databricks-sdk

3. 设置 Databricks CE 身份验证

Databricks Community Edition (CE) 的主要优势在于其便利性:它提供了一个 MLflow 跟踪服务器,而无需 本地基础设施设置。创建 CE 账户后,您可以通过 mlflow.login() 函数轻松访问此服务器,从而简化 MLflow 实验跟踪过程。

要使用 Databricks CE 进行身份验证,请使用 mlflow.login() 函数。这将提示您输入:

  • Databricks Hosthttps://community.cloud.databricks.com/

  • Username:您的 Databricks CE 电子邮件地址。

  • Password:您的 Databricks CE 密码。

成功通过身份验证后,您将看到一条确认消息。

import mlflow

mlflow.login()

# Follow the prompts for authentication

4. 连接到托管 MLflow 并使用 Databricks CE 跟踪实验

从本地机器登录后,使用 mlflow.set_experiment() 启动一个实验并记录一些指标。例如:

mlflow.set_experiment("/Users/\<email>/check-databricks-ce-connection")

with mlflow.start_run():

    mlflow.log_metric("foo", 1)

    mlflow.log_metric("bar", 2)

注意:Databricks 环境要求您使用目录(从根目录)设置实验

/Users/{your email address for your account}/{name of your experiment},这与自托管 MLflow(以及本地运行 MLFlow 时)的行为不同。

5. 在 Databricks CE 中查看您的实验

现在,让我们导航到 Databricks CE 来查看实验结果。登录您的 Databricks CE 账户,然后点击左上角的下拉列表,选择 machine learning。最后,点击实验图标。请看下面的截图:

导航到机器学习部分

Navigate to ML Section of Databricks CE

导航到 MLflow UI

Navigate to the MLflow UI on Databricks CE

在“Experiments”视图中,您应该能够找到实验 /Users/{your email}/check-databricks-ce-connection,类似于:

Experiment view of Databricks MLflow server

点击运行名称,在本例中为“youthful-lamb-287”(请注意,您将在 CE 控制台中看到一个不同的、随机生成的名称),将带您进入类似以下的运行视图:

Run view of Databricks MLflow server

在运行视图中,您将看到我们的虚拟指标 “foo”“bar” 已成功记录。

6. 在 Databricks CE 中运行任何 MLflow 教程

如果您想尝试 MLflow 网站上的教程,您可以使用 Databricks CE 快速测试(如果您愿意,也可以修改)该教程。例如,如果您想测试 Creating Custom Pyfunc 教程

  1. 点击 Workspace 并选择“Import notebook”。

Import a Notebook

  1. 使用 URL 选项直接从 MLflow 文档网站导入笔记本。对于此示例,要导入,请将 URL 的最后一部分从 html 更改为 ipynb。这可以应用于 MLflow 网站上托管的任何教程或指南笔记本。

    .../notebooks/basic-pyfunc.html → .../notebooks/basic-pyfunc.ipynb3

Select the Notebook for Importing

结论

Databricks Community Edition (CE) 提供了一个易于访问且协作的 MLflow 实验跟踪平台,具有多项优势。其设置过程简单快捷,提供了用户友好的体验。此外,它还可以免费使用,是初学者、学习者和小规模项目的理想选择。

入门

Databricks 上试用该笔记本。

进一步阅读

脚注

  1. Databricks Community Edition 不提供 Model Registry 和 Model Deployment 功能。

  2. Databricks CE 仅支持基本的授权登录(用户名/密码)。对于更高级和安全的授权设置,只有完整的 Databricks 产品才支持这些。

  3. 或者,您可以 下载笔记本,然后在 UI 中选择 File 而不是 URL 来手动加载。