AI开发平台MODELARTS-什么是Workflow:MLOps简介
MLOps简介
在介绍Workflow之前,先了解MLOps的概念。
MLOps(Machine Learning Operation)是“机器学习”(Machine Learning)和“DevOps”(Development and Operations)的组合实践。机器学习开发流程主要可以定义为四个步骤:项目设计、数据工程、模型构建、部署落地。AI开发并不是一个单向的流水线作业,在开发的过程中,会根据数据和模型结果进行多轮的实验迭代。算法工程师会根据数据特征以及数据的标签做多样化的数据处理以及多种模型优化,以获得在已有的数据集上更好的模型效果。传统的模型交付会直接在实验迭代结束后以输出的模型为终点。当应用上线后,随着时间的推移,会出现模型漂移的问题。新的数据和新的特征在已有的模型上表现会越来越差。在MLOps中,实验迭代的产物将会是一条固化下来的流水线,这条流水线将会包含数据工程、模型算法、训练配置等。用户将会使用这条流水线在持续产生的数据中持续迭代训练,确保这条流水线生产出来的模型始终维持在一个较好的状态。
MLOps的整条链路需要有一个工具去承载,MLOps打通了算法开发到交付运维的全流程。和以往的开发交付不同,以往的开发与交付过程是分离的,算法工程师开发完的模型,一般都需要交付给下游系统工程师。MLOps和以往的开发交付不同,在这个过程中,算法工程师参与度还是非常高的。企业内部一般都是有一个交付配合的机制。从项目管理角度上需要增加一个AI项目的工作流程机制管理,流程管理不是一个简单的流水线构建管理,它是一个任务管理体系。
这个工具需要具备以下的能力:
- 流程分析:沉淀行业样例流水线,帮助用户能快速进行AI项目的参考设计,启动快速的AI项目流程设计。
- 流程定义与重定义:以流水线作为承载项,用户能快速定义AI项目,实现训练+推理上线的工作流设计。
- 资源分配:支持账号管理机制给流水线中的参与人员(包含开发者和运维人员)分配相应的资源配额与权限,并查看相应的资源使用情况等。
- 时间安排:围绕子流水线配置相应的子任务安排,并加以通知机制,实现流程执行过程之间配合的运转高效管理。
- 流程质量与效率测评:提供流水线的任务执行过程视图,增加不同的检查点,如数据评估、模型评估、性能评估等,让AI项目管理者能很方便的查看流水线执行过程的质量与效率。
- 流程优化:围绕流水线每一次迭代,用户可以自定义输出相关的核心指标,并获取相应的问题数据与原因等,从而基于这些指标,快速决定下一轮迭代的执行优化。