跳到主要内容

使用免费托管 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 在 Databricks CE 上免费提供,非常适合教育用途和小规模项目。

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

  3. 易于共享:在 Databricks 生态系统中,共享您的笔记本非常直接且无忧。

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

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

场景

在本博客中,我们将介绍在本地设备上运行 ML 实验并在 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 主机https://community.cloud.databricks.com/

  • 用户名:您的 Databricks CE 电子邮件地址。

  • 密码:您的 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 帐户,然后单击左上角的下拉列表以选择机器学习。最后,单击实验图标。请参见下面的屏幕截图

导航到机器学习部分

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 快速测试(如果愿意,也可以修改)教程。例如,如果您想测试 创建自定义 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 不提供模型注册表和模型部署功能。

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

  3. 或者,您可以 下载笔记本 并通过选择 File 而不是 URL 来手动加载到 UI 中。