用于 MLOps 的最佳训练编排工具(Aporia)

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第20天,点击查看活动详情

image.png

什么是训练编排?

训练编排使数据科学和机器学习团队能够运行高度并发、可扩展和可维护的训练工作流。

使用训练编排工具,您可以在云端而不是本地机器上运行模型训练流水线。这对于可能需要很长时间的训练过程特别有用,例如:深度学习模型。

为什么训练编排工具很重要?

训练编排工具允许使用协作界面自动管理和简化您的工作流程和流水线基础设施。通过采用训练编排工具,ML 团队能够大规模构建、训练和部署更多模型。

以下列表重点介绍了相关的训练编排工具及其对数据科学和机器学习团队的好处。

有关可帮助您构建 ML 基础架构的有用 MLOps 工具和项目的精选列表——包括训练编排、数据版本控制、特征存储、模型监控等,请参阅我们的项目:MLOps Toys

1. Determined

一个开源深度学习训练平台,使数据科学家能够快速轻松地构建他们的模型。

好处

  • 使用高级分布式训练更快地训练模型——无需更改模型代码
  • 超参数调整可以更轻松地更快、更大规模地构建模型
  • 智能调度和抢占式实例让您从 GPU 中获得更多收益并降低云 GPU 成本
  • 开箱即用的实验跟踪,可跟踪和重现实验

所有这些功能都集成到一个用户友好的深度学习环境中。

2. Flyte

为数据和机器学习轻松构建可扩展的生产级编排。

好处

  • Kubernetes 原生工作流自动化平台
  • 提供了 Python、Java 和 Scala 语言的人体工程学 SDK
  • 版本化和可审计
  • 可重现的流水线
  • 强数据类型

3. Kubeflow

Kubeflow 的目标是提供一种简单、可移植且可扩展的方式,将用于机器学习的同类最佳开源系统部署到各种基础设施。

4. Katonic.ai

一个具有统一 UI 的协作平台,用于在一个地方管理所有数据科学活动,并将 MLOps 实践引入客户和开发人员的生产系统。 它是用于 MLOps 的所有这些阶段的云原生工具的集合:

  • 数据探索
  • 特征准备
  • 模型训练/调优
  • 模型服务、测试和版本控制

好处

Katonic 适用于希望构建生产级机器学习实现的数据科学家和数据工程师,并且可以在您的开发环境或生产集群中本地运行。 Katonic 提供了一个统一的系统——利用 Kubernetes 实现容器化和可扩展性,以实现其流水线的可移植性和可重复性。

5. OpenPAI

一个开源平台,提供完整的 AI 模型训练和资源管理能力。

好处

  • 易于扩展
  • 支持本地、云和混合环境

6. Orchest

一个无需框架或 YAML 即可轻松构建数据流水线的平台。 允许您直接用 Python、R、Julia 或 Bash 编写数据处理代码。

好处

  • 通过对用户友好的 UI 直观地构建流水线
  • 代码在Notebooks中
  • 直接或定期运行流水线的任何子集
  • 轻松定义要在任何机器上运行的依赖项

7. Ploomber

一个在本地开发和测试工作流的框架,然后在分布式环境中无缝执行它们。

好处

  • 与云无关,在 AWS Batch、Airflow 和 Kubernetes 中运行
  • 与 Jupyter 集成,交互式开发,无需更改代码即可部署到云端
  • 增量构建; 通过跳过源代码未更改的任务来加快执行速度
  • 灵活的通过支持函数、脚本、notebooks 和 SQL 脚本作为任务
  • 通过自动并行化独立任务实现并行化
  • 交互式控制台,有助于快速调试工作流程

8. PrimeHub

一个开源、可插拔的 MLOps 平台,使企业能够大规模开发、训练和部署 ML 模型。

好处

  • 支持多租户集群计算
  • 一键式Notebook环境
  • 以组为中心的数据集管理/资源管理/访问控制管理
  • 使用镜像构建器(Image Builder)的自定义机器学习环境
  • 模型跟踪和部署
  • 通过第三方应用商店增强功能

9. Spock

帮助管理由简单且熟悉的基于类的结构定义的复杂参数配置的框架。 这允许 Spock 支持继承,读取多个标记格式,并允许通过组合进行分层配置。

好处

  • 简单声明,支持必需/可选和自动默认值
  • 轻松管理参数组、参数继承
  • 复杂类型、多种配置文件类型、分层配置
  • 命令行覆盖、不可变、易处理和可重现以保存运行时参数配置

10. Stoke

Stoke 是 PyTorch 的轻量级包装器,它为设备、分布式模式、混合精度和 PyTorch 扩展之间的上下文切换提供了一个简单的声明式 API。

好处

  • 支持从本地全精度 CPU 切换到具有扩展的混合精度分布式多 GPU
  • 显示每个底层后端的配置设置,供那些希望配置和原始访问底层库的人使用

11. Valohai

Valohai 是一个处理机器编排、自动重现性和部署的 MLOps 平台。

好处

  • 与技术无关,在 Docker 容器中运行所有内容,因此您几乎可以在其上运行任何内容
  • 在任何云上运行,原生支持 Azure、AWS、GCP 和 OpenStack
  • API、CLI、GUI 和 Jupyter 通过其众多接口集成到几乎任何工作流
  • 由经验丰富的 DevOps 工程师提供托管服务

12. Spell

一个端到端的深度学习平台,可以自动化复杂的ML基础设施以及训练和部署AI模型所需的操作工作。 Spell 是完全混合云,可以轻松部署到任何云或本地硬件中。

好处

  • 从用户的本地 CLI 自动执行云训练,作为可跟踪和可重复的实验,捕获所有输出和综合指标
  • 将模型从模型注册表直接服务到生产中,并包含沿袭元数据,由托管 Kubernetes 集群支持,以实现最大的可扩展性和稳健性
  • 在一个集中的控制面板下,在云端管理、组织、协作和可视化您的整个 ML 训练作品。

原文链接:Best Training Orchestration Tools for MLOps

猜你喜欢

转载自juejin.im/post/7108386768948297765