跳到主要内容

使用免费托管式 MLflow 简化您的 MLflow 项目

·6 分钟阅读
Abe Omorogbe

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

简化您的 ML 项目:免费开始使用托管式 MLflow

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

使用 Databricks CE 进行 MLflow 的优势

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

  1. 经济实惠:免费使用,Databricks CE 上的 MLflow 非常适合教育目的和小型项目。

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

  3. 轻松共享:在 Databricks 生态系统中,共享您的笔记本非常简单方便。

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

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

场景

在本博客中,我们将逐步介绍如何在本地设备上运行 ML 实验,并在 Databricks CE 上托管的 MLflow 跟踪服务器上跟踪它们

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

Remote Tracking Server

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

分步指南

1. 创建 Databricks CE 账户

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

填写注册表单并选择“开始使用社区版”。

Databricks CE Signup Page

注册后,您将获得有关如何设置可用于登录 CE 的密码的信息2

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

在“实验”视图中,您应该能够找到实验 /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. 点击“工作区”并选择“导入笔记本”

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. 或者您可以下载该笔记本,并通过选择“文件”而不是“URL”在 UI 中手动加载它。