- 设计深度学习系统
- (美)王迟 (美)司徒杰鹏
- 873字
- 2025-03-13 16:30:30
总结
● 典型的机器学习项目开发会经历以下周期:产品启动、数据探索、模型原型制作、生产化和产品集成。
● 深度学习项目开发涉及七种不同的角色:产品经理、研究人员、数据科学家、数据工程师、MLOps工程师、机器学习系统工程师和应用工程师。
● 深度学习系统应该简化深度学习开发周期的复杂性。
● 在深度学习系统的帮助下,数据科学家无须成为专业的DevOps或数据工程师,就能够独立地以可伸缩的方式实现模型、构建数据流水线并在生产环境中部署和监控模型。
● 高效的深度学习系统应该使数据科学家能够专注于有趣和重要的数据科学任务。
● 图1.3中所示的高级参考架构可以帮助你快速启动新的设计。首先,从示例创建自己的副本,然后开始收集目标和要求。最后,根据需要添加、修改或删除组件及其之间的关系。
● 基本的深度学习系统包括以下关键组件:数据集管理器、模型训练器、模型服务、元数据和工件存储、工作流编排,以及数据科学环境。
● 数据管理组件有助于收集、组织、描述和存储数据,形成可用作训练输入的数据集。它还支持数据探索活动,并跟踪数据集之间的血统关系。第2章将详细讨论数据管理。
● 模型训练组件负责处理多个训练请求,并在给定的有限计算资源下高效地运行它们。第3章和第4章将详细讨论模型训练组件。
● 模型服务组件处理传入的推理请求,使用模型生成推理结果,并将其返回给请求者。我们将在第6章和第7章对其进行介绍。
● 元数据和工件存储组件记录元数据并存储系统其余部分的工件。系统产生的任何数据都可以视为工件。其中大部分是模型,它们带有存储在同一组件中的元数据。这提供了完整的血统信息,以支持实验和故障排除。我们将在第8章讨论此组件。
● 工作流管理组件存储工作流定义,将数据处理和模型训练的不同步骤串联在一起。它负责触发周期性的工作流运行,并跟踪正在其他组件上执行的每个运行步骤的进度,例如,正在模型训练服务上执行的模型训练步骤。在第9章,我们将详细介绍此组件的使用。
● 深度学习系统应该支持深度学习开发周期,并使多个角色之间的协作变得简单。
● 构建深度学习系统与开发深度学习模型并不相同。系统是支持深度学习模型开发的基础设施。