ML:MLOps系列讲解之系列知识解读全貌

导读:您将了解如何使用机器学习,了解需要管理的各种变更场景,以及基于ml的软件开发的迭代性质。最后,我们提供了MLOps的定义,并展示了MLOps的发展。

目录

ML:MLOps系列讲解之系列知识解读全貌

MLOps的简介

MLOps的意义

MLOps = ML+Dev+Ops

MLOps三大步骤

MLOps带给业务和数据科学优势

MLOps解决的主要挑战

MLOps全貌官网

1、MLOps的定义与发展—你为什么可能想使用机器学习

1.1、Deployment GapML部署的差距

1.2、Scenarios of Change That Need to be Managed需要管理的变化的场景

1.3、MLOps Definition定义

1.4、MLOps Evolution进化

1.5、The Evolution of MLOps

2、设计机器学习驱动的(ML-powered)软件—我们想要解决的业务问题是什么?

2.1、Work Flow Decomposition工作流程分解

2.2、AI Canvas

2.3、机器学习Canvas

3、端到端 ML工作流生命周期

3.1、Data Engineering

3.2、Model Engineering

3.3、Model Deployment

4、基于ML的软件的三个层次

4.1、Data: Data Engineering Pipelines

4.2、Model: Machine Learning Pipelines

4.3、Code: Deployment Pipelines

5、MLOps原则

5.1、Iterative-Incremental Process in MLOps MLOps中的迭代增量过程

5.2、Automation自动化

5.3、Continuous X持续部署

5.4、Versioning版本控制

5.5、Experiments Tracking实验跟踪

5.6、Testing测试

5.7、Monitoring 监控

5.8、“ML Test Score” System  “机器学习成绩”系统

5.9、Reproducibility可再现性

5.10、Loosely Coupled Architecture (Modularity) 松散耦合架构(模块化)

5.11、ML-based Software Delivery Metrics (4 metrics from “Accelerate”) 基于ML的软件交付指标(来自“加速”的4个指标)

5.12、Summary of MLOps Principles and Best Practices

6、CRISP-ML (Q)ML生命周期过程—了解机器学习开发的标准过程模型。

6.1、Business and Data Understanding业务和数据理解

6.2、Data Engineering (Data Preparation)数据工程(数据准备)

6.3、Machine Learning Model Engineering机器学习模型工程

6.4、Evaluating Machine Learning Models评估机器学习模型

6.5、Deployment部署

6.6、Monitoring and Maintenance监控和维护

6.7、Conclusion

6.8、Acknowledgements

7、MLOps Stack Canvas堆栈画布

7.1、MLOps Stack Canvas

7.2、Documenting MLOps Architecture  记录MLOps架构

7.3、MLOps Maturity Level  MLOps 成熟度级别

7.4、Conclusion  结论

7.5、Acknowledgements

8、ML模型治理

9、MLOps的State(工具和框架)


ML:MLOps系列讲解之系列知识解读全貌

MLOps的简介

在机器学习解决方案的开发、测试、部署支持过程中,多学科专家在互动中会遇到许多组织难题和技术障碍,这不仅延长了产品创建的时间,还降低了产品带给该项业务的实际价值。
        为了消除这些障碍,MLOps这一概念应运而生。MLOps是一门工程学科,旨在统一 ML 系统开发(dev)和 ML 系统部署(ops),以标准化过程生产高性能模型的持续交付。行业内,大多数的ML 系统的生命周期如下所示:

  • 业务开发或产品团队:用 KPI 定义业务目标
  • 数据工程:数据采集和准备。
  • 数据科学:构建 ML 解决方案和开发模型。
  • IT 或 DevOps:完成部署设置,与科学家一起进行监控。

2018年左右,在谷歌举办的一场演讲之后,业内专业人士首次公开谈及工业运行(生产)中机器学习生命周期集成化管理的必要性。
        自2019年起,MLOps连续两年进入Gartner数据科学与机器学习技术成熟度曲线,并被视为AI工程化的重要内容。MLOps将与AI工程化的DevOps、DataOps协调联通、互相赋能。

推荐文章:Paper:《Hidden Technical Debt in Machine Learning Systems》翻译与解读

MLOps的意义

举个简单的例子,几年前,我们对于机器学习的印象主要是拿到一堆excel/csv数据,通过python编程,尝试做一些模型实验,最终会产出一个预测结果。但对于这个预测结果如何使用,对业务产生了什么影响,大家可能都不是很有概念。这就很容易导致机器学习项目一直停留在实验室阶段,一个接一个做POC测试(Proof of Concept),但都没法成功“落地”。
       MLOps的主要作用就是连接模型构建团队和业务,运维团队,建立起一个标准化的模型开发,部署与运维流程,使得企业组织能更好的利用机器学习的能力来促进业务增长。

  • 缩短模型开发部署的迭代周期:更快地试验和开发模型、更快地将模型部署到生产环境。
  • 即解决各类efficiency问题。从Algorithmia的2020年的报告中可以看到,很大一部分公司需要31-90天上线一个模型,其中有18%的公司需要90天以上来上线一个模型。且在中小型公司中,算法工程师花在模型部署方面的时间比例也明显偏多。MLOps希望通过更标准化自动化的流程与基础设施支持,来提升模型交付的整体效率。
  • 让专业的人更专注:好的MLOps实践,可以让算法工程师更专注于擅长的模型构建过程,减少对模型部署运维等方面的“感知”。
  • 让模型迭代流程更清晰:好的MLOps实践,可以让模型开发迭代的方向更加清晰明确,切实为业务产生价值。
  • 让各角色人员高效协同:MLOps还希望能提供一个企业内各个角色无缝协作的平台,让业务,数据,算法,运维等角色能更高效率的进行协作,提升业务价值产出,即transparency的需求。

就像今日的软件工程师很少需要关注运行环境,测试集成,发布流程等细节,但却做到了一天数次发布的敏捷高效,未来算法工程师应该也能更专注于数据insights获取方面,让模型发布成为几乎无感又快速的自动化流程

MLOps = ML+Dev+Ops

数字化将DataOps这一概念引入人们生活的同时,大数据正引入一种新的范式——MLOps。鉴于DevOps和DataOps在实践中越来越多的运用,该项业务需要机器学习模型使用过程中的所有参与者一直保持合作与互动,包括业务人员、工程师、大数据开发人员(数据科学家和机器学习专家)。
        与DevOps和DataOps类似,MLOps旨在提高自动化程度和工业机器学习解决方案的质量,同时兼顾监管需求和业务利益。MLOps是机器学习ML与DevOps的结合,旨在将敏捷软件工程的一些成熟功能引入机器学习和人工智能。机器学习生态系统需要一个强大的DevOps一样的框架、工具链和流程,将开发人员、数据科学家和操作员聚集在一起,通过有效的DevOps战略,组织可以加快向最终用户运送新功能和服务的速度。
        MLOps是结合系统开发和运营支持(包括集成、测试、发布、部署、基础设施管理等操作),以实现机器学习系统生命周期复合化和自动化管理的文化理念和应用实例。MLOps是机器学习模型管理实践和标准流程,衔接模型的开发、部署和运维,涉及算法、业务及运维团队,旨在提升模型生命流程的开发、部署、运维效率,促进模型规模化落地应用。
        MLOps借助敏捷的方法和技术工具扩展了CRISP-DM方法论(CRISP-DM跨行业数据挖掘标准流程),从而可以自动执行包括数据、机器学习模型、代码和环境在内的操作。这些工具中包括了Cloudera公司的数据科学工作台——ClouderaData Science Workbench,将MLOps付诸实践有助于数据科学家在CRISP-DM经典阶段规避常见陷阱和问题。

MLOps三大步骤

  • 项目设计:包括需求收集,场景设计,数据可用性检查等。
  • 模型开发:包括数据工程,模型工程,以及评估验证等。
  • 模型运维:包括模型部署,CI/CD/CT工作流,监控与调度触发等。

DevOps通过缩短开发部署的时间来更快地迭代软件产品,使得公司业务不断进化。MLOps的逻辑也是通过相似的自动化和迭代形式,加快企业从数据到insights的价值获取速度。

MLOps带给业务和数据科学优势

  • 在机器学习项目中践行敏捷原则:加快企业从数据到insights的价值获取速度。实施MLOps带来的所有好处中,最为突出的是机器学习工业部署细节中的敏捷方法;
  • 统一机器学习模型和关联软件产品的发布周期:通过可靠且有效的机器学习生命周期管理,减少时间,从而得到高质量结果;
  • 在CI、CD、CT系统中支持机器学习模型和数据集:持续开发(CD)、持续集成(CI)、持续训练(CT)方法和工具保障了工作流程和模型的可重复性;随时随地轻松部署高精度机器学习模型;
  • 集成管理系统可连续监测机器学习资源
  • 使用机器学习模型减轻技术债:消除组织障碍,汇聚多学科机器学习专家的经验。

MLOps解决的主要挑战

  • 缺乏擅长开发和部署可扩展 Web 应用程序的数据科学家:如今,市场上出现了一种新的 ML 工程师简介,旨在满足这一需求。它是数据科学和 DevOps 交叉点的最佳选择。
  • 在模型中反映不断变化的业务目标:数据不断变化,维护模型的性能标准,确保人工智能治理,存在许多依赖关系。很难跟上持续的模型培训和不断发展的业务目标。
  • 技术团队和业务团队的trade off:技术和业务团队之间的沟通鸿沟,难以找到共同的协作语言。大多数情况下,这种差距成为大型项目失败的原因。
  • 风险评估:围绕此类 ML/DL 系统的黑盒性质存在很多争论。模型往往会偏离他们最初打算做的事情。评估此类故障的风险/成本是非常重要和细致的步骤。例如,与标记一个无辜的人进行欺诈、阻止他们的帐户和拒绝他们的贷款申请相比,YouTube 上不准确的视频推荐的成本要低得多。

参考文章
机器学习新概念-MLOps简介_java、c++、机器学习方向King-CSDN博客_mlops 开源框架
什么是 MLOps? - 知乎

MLOps全貌官网

原址:https://ml-ops.org/

Machine Learning Operations=Design+Model Development+Operations

Machine Learning Operations是借助机器学习模型操作化管理(MLOps),我们希望提供端到端的机器学习开发过程,以设计、构建和管理可再生、可测试和可演进的ML驱动软件。
       作为一个新兴的领域,MLOps正在数据科学家、ML工程师和AI爱好者中迅速获得势头。遵循这一趋势,持续交付基金会SIG MLOps将ML模型管理与传统软件工程区分开来,并建议以下MLOps能力:

  • MLOps旨在统一机器学习和软件应用程序发布的发布周期。
  • MLOps支持机器学习工件的自动化测试(例如数据验证、ML模型测试和ML模型集成测试)
  • MLOps能够将敏捷原则应用到机器学习项目中。
  • MLOps支持机器学习模型和数据集,将这些模型构建为CI/CD系统中的第一等级。
  • MLOps减少了跨机器学习模型的技术债务。
  • MLOps必须是一种与语言、框架、平台和基础设施无关的实践。

1、MLOps的定义与发展—你为什么可能想使用机器学习

1.1、Deployment GapML部署的差距

1.2、Scenarios of Change That Need to be Managed需要管理的变化的场景

1.3、MLOps Definition定义

1.4、MLOps Evolution进化

1.5、The Evolution of MLOps

相关文章:ML:MLOps系列讲解之《MLOps的定义与发展—你为什么可能想使用机器学习》解读

2、设计机器学习驱动的(ML-powered)软件—我们想要解决的业务问题是什么?

2.1、Work Flow Decomposition工作流程分解

2.2、AI Canvas

2.3、机器学习Canvas

2.3.1、机器学习画布(v1.0),THE MACHINE LEARNING CANVAS (V1.0)

 相关文章:ML:MLOps系列讲解之《设计机器学习驱动的(ML-powered)软件—我们想要解决的业务问题是什么?》解读

3、端到端 ML工作流生命周期

3.1、Data Engineering

3.2、Model Engineering

3.3、Model Deployment

 相关文章:ML:MLOps系列讲解之《端到端 ML工作流生命周期》解读

4、基于ML的软件的三个层次

4.1、Data: Data Engineering Pipelines

4.1.1、Data Ingestion

4.1.2、Exploration and Validation

4.1.3、Data Splitting

4.2、Model: Machine Learning Pipelines

4.2.1、Model Training

4.2.2、Model Evaluation

4.2.3、Model Testing

4.2.4、Model Packaging

4.2.5、Different forms of ML workflows不同形式的机器学习工作流程

4.2.6、ML Model serialization formats 机器学习模型序列化格式

4.3、Code: Deployment Pipelines

4.3.1、Model Serving Patterns模型服务模式

4.3.2、Deployment Strategies部署策略

 相关文章:ML:MLOps系列讲解之《基于ML的软件的三个层次》解读

5、MLOps原则

5.1、Iterative-Incremental Process in MLOps MLOps中的迭代增量过程

5.2、Automation自动化

5.3、Continuous X持续部署

5.4、Versioning版本控制

5.5、Experiments Tracking实验跟踪

5.6、Testing测试

5.6.1、Features and Data Tests特征和数据测试

5.6.2、Tests for Reliable Model Development可靠模型开发的测试

5.6.3、ML infrastructure test机器学习基础设施测试

5.7、Monitoring 监控

5.8、“ML Test Score” System  “机器学习成绩”系统

5.9、Reproducibility可再现性

5.10、Loosely Coupled Architecture (Modularity) 松散耦合架构(模块化)

5.11、ML-based Software Delivery Metrics (4 metrics from “Accelerate”) 基于ML的软件交付指标(来自“加速”的4个指标)

5.12、Summary of MLOps Principles and Best Practices

 相关文章:ML:MLOps系列讲解之《MLOps原则—迭代增量过程/自动化/持续部署/版本控制/实验跟踪/测试/监控/“ML成绩”系统/可再现性/松散耦合架构(模块化)/基于ML的软件交付指标/MLO等》解读

6、CRISP-ML (Q)ML生命周期过程—了解机器学习开发的标准过程模型。

6.1、Business and Data Understanding业务和数据理解

6.2、Data Engineering (Data Preparation)数据工程(数据准备)

6.3、Machine Learning Model Engineering机器学习模型工程

6.4、Evaluating Machine Learning Models评估机器学习模型

6.5、Deployment部署

6.6、Monitoring and Maintenance监控和维护

6.7、Conclusion

6.8、Acknowledgements

 相关文章:ML:MLOps系列讲解之《CRISP-ML (Q)ML生命周期过程—了解机器学习开发的标准过程模型—业务和数据理解→数据工程(数据准备)→ML模型工程→评估ML模型→模型部署→模型监控和维护》解读

7、MLOps Stack Canvas堆栈画布

7.1、MLOps Stack Canvas

7.2、Documenting MLOps Architecture  记录MLOps架构

7.3、MLOps Maturity Level  MLOps 成熟度级别

7.4、Conclusion  结论

7.5、Acknowledgements

 相关文章:ML:MLOps系列讲解之《MLOps Stack Canvas堆栈画布》解读

8、ML模型治理

本部分介绍了治理流程的概述,这些流程是MLOps不可或缺的一部分。

9、MLOps的State(工具和框架)

 相关文章:ML:MLOps系列讲解之《MLOps的State(工具和框架)》解读

ML:MLOps系列讲解之系列知识解读全貌相关推荐

  1. ML:MLOps系列讲解之系列知识解读之完整总结系列内容(第一章~第九章)

    ML:MLOps系列讲解之系列知识解读之完整总结系列内容(第一章~第九章) 导读:您将了解如何使用机器学习,了解需要管理的各种变更场景,以及基于ml的软件开发的迭代性质.最后,我们提供了MLOps的定 ...

  2. CANOe系列讲解 - CANOe基础知识介绍

    1. CANOe简介 返回总目录 CANoe是德国Vector公司出的一款总线开发环境,全称叫CAN open environment,主要用于汽车总线的开发而设计的.CANoe的前期是为了对CAN通 ...

  3. ML:MLOps系列讲解之《MLOps的State(工具和框架)》解读

    ML:MLOps系列讲解之<MLOps的State(工具和框架)>解读 目录 MLOps系列讲解之<MLOps的State(工具和框架)>解读 9.MLOps的State(工具 ...

  4. ML:MLOps系列讲解之《MLOps Stack Canvas堆栈画布之MLOps Stack CanvasCRISP-ML(Q)》解读

    ML:MLOps系列讲解之<MLOps Stack Canvas堆栈画布之MLOps Stack Canvas&CRISP-ML(Q)>解读 目录 MLOps系列讲解之<ML ...

  5. ML:MLOps系列讲解之《MLOps Stack Canvas堆栈画布》解读

    ML:MLOps系列讲解之<MLOps Stack Canvas堆栈画布>解读 目录 MLOps系列讲解之<MLOps Stack Canvas堆栈画布>解读 7.MLOps ...

  6. ML:MLOps系列讲解之《CRISP-ML (Q)ML生命周期过程—了解机器学习开发的标准过程模型—业务和数据理解→数据工程(数据准备)→ML模型工程→评估ML模型→模型部署→模型监控和维护》解读

    ML:MLOps系列讲解之<CRISP-ML (Q)ML生命周期过程-了解机器学习开发的标准过程模型-业务和数据理解→数据工程(数据准备)→ML模型工程→评估ML模型→模型部署→模型监控和维护& ...

  7. ML:MLOps系列讲解之《MLOps原则之监控/“机器学习成绩”系统/可再现性/松散耦合架构(模块化)/基于ML的软件交付指标/MLOps原则和实践的总结》解读

    ML:MLOps系列讲解之<MLOps原则之监控/"机器学习成绩"系统/可再现性/松散耦合架构(模块化)/基于ML的软件交付指标/MLOps原则和实践的总结>解读 目录

  8. ML:MLOps系列讲解之《MLOps原则之测试》解读

    ML:MLOps系列讲解之<MLOps原则之测试>解读 目录 MLOps系列讲解之<MLOps原则之测试>解读 5.6.Testing测试 5.6.1.Features and ...

  9. ML:MLOps系列讲解之《MLOps原则—迭代增量过程/自动化/持续部署/版本控制/实验跟踪/测试/监控/“ML成绩”系统/可再现性/松散耦合架构(模块化)/基于ML的软件交付指标等》解读

    ML:MLOps系列讲解之<MLOps原则-迭代增量过程/自动化/持续部署/版本控制/实验跟踪/测试/监控/"ML成绩"系统/可再现性/松散耦合架构(模块化)/基于ML的软件 ...

最新文章

  1. css-padding
  2. IMXRT 分散加载文件 修改OCRAM,DTCM、ITCM大小
  3. AS3.0中is,as运算符
  4. forceinline关键字
  5. 实验详解——DNS反向解析、DNS主服务器和从服务器的配置
  6. 第6/24周 聚集索引
  7. 信息学奥赛一本通 1069:乘方计算 | OpenJudge NOI 1.5 13
  8. java怎样生成32位全是整形的主键_用java生成32位全球唯一的id编号
  9. String.Format数字格式化输出 {0:N2} {0:D2} {0:C2}
  10. Android 3D系列之基本概念篇
  11. 【报告分享】2021年全国毕业生起薪点薪酬报告.pdf(附下载链接)
  12. Eclipse中JAVA项目的打包
  13. Solr分析器IK-analyzer配置及错误java.lang.AbstractMethodError解决
  14. android模糊搜索文件,模糊搜索_八门神器教程|安卓八门神器怎么用图文教程__单机攻略_跑跑车单机游戏网...
  15. 安装和卸载IE浏览器
  16. ANSYS 有限元分析 接触分析
  17. nebula graph调研
  18. 软考真题———2018上
  19. 编写测试用例方法之错误推测法
  20. CH340G的调试过程

热门文章

  1. Python-简单优先队列
  2. 数字图像处理实验(10):PROJECT 05-01 [Multiple Uses],Noise Generators
  3. 【机器学习入门笔记9:TensorFlow四则运算】20190216
  4. linux怎么远程windows桌面,Windows系统怎么远程登陆桌面Linux?
  5. mysql分库分表风险_数据库分库分表存在的问题及解决方案
  6. boost::shared_ptr shared_from_this
  7. Select下拉列表框(添加、删除option)
  8. asp利用dictionary创建二维数组
  9. 机房收费系统--准备工作
  10. 我觉得有不少人被Spring带着跑偏了!