Databricks最近正式发布了 MLflow 与 Databrick 笔记本集成,面向其数据工程和高级订阅。该集成将 MLflow 的特性与 Databrick 笔记本和作业的特性结合起来。最初,在 2018 年 6 月,Databricks 将 MLflow 作为一个开源项目编写,并且一直可以作为单独的命令行工具使用。
MLflow 提供了以下三个主要特性:试验跟踪、项目和 MLflow 模型。这些特性中的每一个都可以使用或不使用 Databricks 在线服务。当与Databricks集成或不集成时,这些特性有不同的表现方式。
MLflow 试验跟踪需要一个位置存储 MLflow 执行过程。MLflow 命令行工具有一个内置的跟踪服务器,可以在其中存储执行过程,并且 MLflow 可以使用本地文件系统存储执行过程。MLflow 命令行工具的用户负责维护执行过程的存储。Databrick 提供了一个与 Databrick 笔记本集成的试验跟踪服务器,从而使用户不必自己管理跟踪。此外,每次记录试验的一次运行时,Databrick 都会存储一个版本的笔记本。最后,Databricks 提供了一个用户界面来研究 MLflow 试验和执行过程,类似于独立 UI,可以通过 MLflow 命令行工具访问。
MLflow 提供了一种结构化的配置驱动的方式,可以将可重复执行的代码视为项目。MLflow 通过包含适当的配置文件将 Git 存储库转换为项目,并支持以下环境:Conda、Docker 或系统环境。Databricks 增加了在 Databrick 集群上将项目作为作业运行的能力。用户需要首先在他们的 Databricks 帐户中创建一个试验,然后用户可以从 MLflow 命令行针对 Databrick 作业和试验运行一个项目。
MLflow 将模型存储为试验中运行的构件。Databrick 试验允许为存储大型模型的试验指定外部存储。可以使用 MLflow API 从 Databrick 笔记本或作业中恢复特定执行过程中的模型。然后,用户可以在笔记本中使用恢复的模型,使用 Apache Spark UDF 进行预测,或者将模型部署到AWS Sagemaker和Microsoft Azure ML等外部服务上。
Databricks 首席技术专家 Matei Zaharia宣布了 MLflow 1.0 版本中的两个新特性:多步工作流和模型注册表。声明中展示了这些特性,其中有一个用户界面,可以用于可视化多步工作流,然后注册生成的模型。模型注册之后,可以通过一个新的用户界面部署和跟踪模型。
查看英文原文:Databricks MLflow Integration Now Generally Available
评论