12

机器学习平台是商业中的流行语之一,以促进开发 ML 或深度学习。

有一个通用部分工作流编排器或工作流调度器,可帮助用户构建 DAG、调度和跟踪实验、作业和运行。

有很多机器学习平台都有工作流编排器,比如Kubeflow pipelineFBLearner FlowFlyte

我的问题是气流和 Kubeflow 管道或其他 ML 平台工作流编排器之间的主要区别是什么?

而且气流支持不同语言的 API 并且拥有庞大的社区,我们可以使用气流来构建我们的 ML 工作流吗?

4

2 回答 2

6

您绝对可以使用 Airflow 来编排机器学习任务,但您可能希望通过操作员远程执行 ML 任务。

例如,Dailymotion 使用 KubernetesPodOperator 为 ML 任务扩展 Airflow。

如果您没有资源自己设置 Kubernetes 集群,则可以使用具有 Airflow 操作员的Valohai等 ML 平台。

在生产环境中进行 ML 时,理想情况下,您还希望对模型进行版本控制,以跟踪每次执行的数据、代码、参数和指标。

您可以在这篇关于 为机器学习工作流扩展 Apache Airflow 的文章中找到更多详细信息

于 2019-11-26T21:18:16.747 回答
1

我的问题是气流和 Kubeflow 管道或其他 ML 平台工作流编排器之间的主要区别是什么?

Airflow 管道在 Airflow 服务器中运行(如果任务过于占用资源,可能会导致其停机),而 Kubeflow 管道在专用的 Kubernetes pod 中运行。Airflow 管道也被定义为 Python 脚本,而 Kubernetes 任务被定义为 Docker 容器。

而且气流支持不同语言的 API 并且拥有庞大的社区,我们可以使用气流来构建我们的 ML 工作流吗?

是的,您可以,例如,您可以使用 Airflow DAG 在 Kubernetes pod 中启动训练作业以运行模拟 Kubeflow 行为的 Docker 容器,您会错过 Kubeflow 的一些 ML 特定功能,例如模型跟踪或实验。

于 2021-05-31T22:23:19.587 回答