当前位置:网站首页>Evolution of MLOps

Evolution of MLOps

2022-08-09 23:43:00 fox hat


1.从devops到mlops
2.Models are empowered from attempts0到1、1到100、规模化量产

1.Software1.0的演进历史:

特斯拉的 AI 高级总监 Andrej Karpathy 定义了 Software 2.0 时代,即以 MLOps 组织开发模式为主的时代,那么它的前身 Software 1.0是什么?This is from the era of software development thirty years ago:在 DevOps (Software 1.0) 的开发时代,软件开发以代码为中心,通过编程语言,完全基于程序员们手动编写代码来实现某项功能.Software1.0 的演进历史分为下面四个方面:

A.软件发布时效的演进

(以往每两年发布一次更新,用户需购买相应光盘,推演到现在每天都有新的版本发布.)

B.软件开发的演进

(从 Waterfall 瀑布式发布流程到 Agile A shift in agile development processes,The essence is to transition from a linear development process that is too inefficient to rapid iteration of small versions、A process centered on user needs.如果说瀑布式是由项目经理人工推动发布的,那么敏捷式就是由流水线自然推动发布的.)
在这里插入图片描述

C.协作和版本管理工具的演进

(from inefficiency、Sophisticated centralized file version management system switched to powerful branch management、Flexible and reliable open source distributed version control system)

D.软件开发组织的演进

(从全员软件工程师的团队优化到软件工程师+自动化工具工程师合作的分层组织)

DevOps 的核心:为了让团队成员更加专注于自己的职能,需要管理跨越职能的协作.简单来讲,开发的人要懂运维,运维的人要懂开发.

2.Software2.0登场:

MLOps的提出

Andrew Karpathy 定义的 **MLOps (Software 2.0) 的理念,是指软件开发以代码和数据为中心,通过 AI 技术寻找解决问题的方法.**你定义好输入和输出,中间的逻辑和对应关系由机器学习决定.通过编程语言,以及大量相关数据,在程序空间通过随机梯度下降(Stochastic Gradient Descent, SGD) 和反向传播寻找可以完成特定任务的程序,以机器为主导,自动完成特定任务.

那么产品开发的组织又如何升级呢?through multiple levels of organization,不同的人各司不同职能.那么组织如何流水线化?答案是需要自动化的工具 ,通过MLOps 进行串联.
Organizational evolution of machine learning product development:
在这里插入图片描述

MLOps是什么

mainstream view abroad:MLOps偏向于Devops的定义:
在这里插入图片描述
Gridwu Titanium has a different view:
在这里插入图片描述
对于ML产品迭代的2大流派–Model-Centric、Data-Centric 怎么看?
经典的 Model-Centric 是固定一组数据在多个模型种评估模型表现,而 Data-Centric 则是固定一个模型(BERT)去找更高质量的数据,使得整体系统性能更佳.不过,上述两种模式不是非此即彼的关系,在 AI Early in product development,When the amount of data is limited,使用 Model-Centric的方式是为了找到一个合适的 model;当这个模型慢慢确定后,慢慢进入Data Centric 阶段,目的是通过提高数据质量来提高整体性能.

3.MLOps的演进趋势

Lab environment to industrial production environmentML模型的变化:
实验室:
在这里插入图片描述
在工业界,随着项目体量的增加,由于数据不足,A team of data engineers is required to be responsible for data collection、Data labeling and data cleaning.比如在无人驾驶领域,你可能曾用 KITTI 公开数据集进行练习,可是当进入工业界你发现数据完全不够.你需要采集数据时,而采集The data itself is too complexSo much so that you need a multi-level organization to do it.when collectedThe amount of data exceeds the size of the hard disk时,又需要 Infrastructure Team 负责开发分布式系统.当你将数据放入模型以后,因为一直有新的模型出现,算法工程师需要不断对同一份数据尝试新的算法.每个模型又有非常多的超参,你又需要(雇人)调优不同的超参数…由于数据漂移、概念漂移,需要重新收集数据,重新训练.由于需要的数据越来越多、工作量加大,那么跨组织的、重复性的工作希望被自动化,才能满足开发流程的需要.
总结来说:

A.The evolution of real needs

Code-related problems compared to traditional software engineering,Software2.0There are still many algorithms to face、模型、Data instability and uncertainty,If the data volume is large、The data itself is complex、Data is prone to drift、The workload of model tuning is large、There is a lot of demand for personalized models、The experimental process is difficult to reproduce and other problems.
为了更好的解决这些问题,逐渐出现了MLModel production line、The evolution of collaboration tool platforms.

B.MLEvolution of the model development pipeline

Evolve from a one-off development process in a traditional lab environment to continuous training、持续集成、Agile iteration for continuous delivery,to deal with data drift、Personalized model needs many problems.
MLOps 成熟度的三个等级,从最常见的等级(该级别不涉及自动化)开始,一直到自动执行机器学习和 CI/CD 流水线.
1.MLOps 等级 0:手动过程.许多团队都有数据科学家和机器学习研究人员,他们可以构建领先的模型,但他们构建和部署机器学习模型的过程完全是手动的.这样的级别被视为基本成熟度等级(等级 0).下图展示了此过程的工作流.
在这里插入图片描述
2. MLOps 等级 1:自动化机器学习流水线.等级 1 的目标是通过自动执行机器学习流水线来持续训练模型;这样可以持续交付模型预测服务.如需自动执行在生产环境中使用新数据重新训练模型的过程,您需要在流水线中引入自动化数据和模型验证步骤,以及触发流水线和元数据管理.
在这里插入图片描述
3.**MLOps 等级 2:自动化 CI/CD 流水线.**如需在生产环境中快速、可靠地更新流水线,您需要一个可靠的自动化 CI/CD 系统.此自动化 CI/CD 系统可让您的数据科学家快速探索有关特征工程、模型结构和超参数的新想法.他们可以实现这些想法,并自动构建、测试新的流水线组件,以及将其部署到目标环境.
在这里插入图片描述

C.The evolution of collaboration and versioning tools

Clear division of roles,业务分析师、数据工程师、数据科学家、Machine learning engineers have their own roles,Develop collaboration on a unified platform,Data engineers deal with large volumes of data、Data complex issues;MLOpsTools such as data versioning toolsDVC、模型管理mlflow、feature platform, etc.
在这里插入图片描述

D.MLThe evolution of the model development organization

will appear in the near futuremlops自动化工程师、mlopsThe role of the analyst.

Part of the content of the article comes from「Grid Titanium Engineer」的原创文章,原文链接:https://blog.csdn.net/graviti/article/details/121743934

原网站

版权声明
本文为[fox hat]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/221/202208091956117008.html