当前位置:首页 > 文章列表 > 科技周边 > 人工智能 > MLOps对比DevOps:有什么区别?

MLOps对比DevOps:有什么区别?

来源:51CTO.COM 2023-04-28 17:58:44 0浏览 收藏

本篇文章主要是结合我之前面试的各种经历和实战开发中遇到的问题解决经验整理的,希望这篇《MLOps对比DevOps:有什么区别?》对你有很大帮助!欢迎收藏,分享给更多的需要的朋友学习~

机器学习操作(简称MLOps)是机器学习(ML)工程的一个关键方面,专注于简化和加速将ML模型交付到生产以及维护和监控它们的过程。MLOps涉及不同团队之间的协作,包括数据科学家、DevOps工程师、IT专家等。

MLOps可以帮助组织创建和提高其AI和机器学习解决方案的质量。采用MLOps允许机器学习工程师和数据科学家通过实施持续集成和持续部署(CI/CD)实践来协作提高模型性能。它通过整合ML模型的适当监控、治理和验证来加速ML模型开发过程。

MLOps对比DevOps:有什么区别?

什么是DevOps?

DevOps结合了开发和运营的概念,描述了一种协作方法来执行通常与单独的应用程序开发和IT运营团队相关的任务。从最广泛的意义上说,DevOps是一种哲学,它鼓励组织内这些(和其他)团队之间改进沟通与合作。

在最狭义的意义上,DevOps是指采用能够部署和维护迭代应用程序开发、自动化和可编程基础架构的实践。它还包括工作场所文化的变化,例如开发人员、系统管理员和其他团队成员之间的信任建立和联系。DevOps使技术与业务目标保持一致,可以改变软件交付链、工作职能、服务、工具和最佳实践。

MLOps对比DevOps:主要差异

以下是MLOps和传统DevOps之间的一些主要区别。

开发

开发的概念是指每个模型中的不同事物,CI/CD管道略有不同。

开发运维:

  • 通常,代码会创建一个接口或应用程序。
  • 在使用一组检查进行部署和测试之前,将代码包装到可执行文件或工件中。
  • 理想情况下,这个自动化循环将一直持续到最终产品准备好。

MLOps:

  • 该代码使团队能够构建或训练机器学习模型。
  • 输出工件包括可以接收数据输入以生成推理的序列化文件。
  • 验证包括根据测试数据检查训练模型的性能。
  • 这个循环也应该一直持续到模型达到指定的性能阈值。

版本控制

开发运维:

  • 版本控制通常只跟踪代码和工件的更改。
  • 需要跟踪的指标很少。

MLOps:

  • MLOps管道通常有更多要跟踪的因素。构建和训练ML模型涉及一个迭代实验周期,需要跟踪每个实验的各种指标和组件(对于以后的审计至关重要)。
  • 要跟踪的其他组件包括训练数据集、模型构建代码和模型工件。
  • 指标包括超参数和模型性能指标,例如错误率。

可重用性

开发运维:

  • DevOps管道专注于可重复的流程。
  • 团队可以混合和匹配流程,而无需遵循特定的工作流程。

MLOps:

  • MLOps管道重复应用相同的工作流。跨项目的通用框架有助于提高一致性并允许团队更快地取得进展,因为他们从熟悉的流程开始。
  • 项目模板提供结构,支持定制以满足每个用例的独特需求。
  • 使用集中式数据管理来整合组织的数据,以加速发现和培训过程。集中化的常见方法包括单一事实来源和数据仓库。

持续监控

监控对于DevOps和MLOps都是必不可少的,但原因略有不同。

开发运维:

  • 站点可靠性工程(SRE)在过去几年一直是趋势,强调从开发到生产部署监控软件的必要性。
  • 软件不会像ML模型那样退化。

MLOps:

  • 机器学习模型会迅速退化,需要持续监控和更新。
  • 生产环境中的条件会影响模型的准确性。部署到生产环境后,模型开始根据来自现实世界的新数据生成预测。这些数据不断变化和适应,降低了模型性能。
  • MLOps通过合并程序以促进持续监控和模型再培训,确保算法保持生产就绪。

基础设施

DevOps和MLOps都严重依赖云技术,但有不同的操作要求。

DevOps依赖于基础设施,例如:

  • 基础设施即代码(IaC)
  • 构建服务器
  • CI/CD自动化工具

MLOps依赖于以下基础设施:

  • 深度学习和机器学习框架
  • 大型数据集的云存储
  • 用于深度学习和计算密集型ML模型的GPU

DevOps和MLOps趋势

以下是推动DevOps和MLOps发展的一些主要趋势。

GitOps

作为DevOps工作流程的新演变,GitOps是一种用于控制和自动化基础架构的新范例。面向Kubernetes的范例使开发人员和运营团队能够使用Git管理Kubernetes集群并交付容器化应用程序。为运营和开发团队实施Git工作流程允许开发人员利用Git拉取请求来管理软件部署和基础设施。

GitOps整合了现有的开发工具,通过CI/CD管理云原生和基于集群的应用程序。它使用Git存储库作为单一事实来源,自动部署、监控和维护云原生应用程序。

GitOps是一种在Kubernetes中实现和维护集群的方法。持续交付和部署允许开发人员通过增量发布更快地构建、测试和部署软件。Kubernetes持续集成和运行时管道必须能够读取和写入文件、更新容器存储库以及从Git加载容器。GitOps通过版本控制、实时监控和配置更改警报来帮助企业管理其基础架构。

综合数据

合成数据是人工生成的任何信息,而不是从真实事件中收集的信息。算法生成合成数据,用作操作和生产测试数据集的替代品。合成数据集也可用于验证数学模型和训练机器学习模型。

合成数据的好处包括:

  • 尽量减少与使用敏感和受监管数据相关的限制。
  • 根据实际数据中不可用的特定要求和条件自定义数据。
  • 为DevOps团队生成用于测试软件质量和性能的数据。

无代码机器学习和人工智能

机器学习通常涉及计算机代码来设置和处理模型训练,但情况并非总是如此。无代码机器学习是一种编程方法,它消除了ML应用程序通过耗时过程的需要。

CodelessML消除了专家开发系统软件的需要。它的部署和实施也更简单、更便宜。在机器学习过程中使用拖放输入可以通过以下方式简化培训工作:

  • 评估结果。
  • 拖放训练数据。
  • 创建预测报告。
  • 使用纯文本查询。

Codeless ML使开发人员可以轻松访问机器学习应用程序,但它不能替代高级、细致入微的项目。这种方法适用于缺乏资金来维持内部数据科学团队的小型企业。

TinyML

TinyML是一种机器学习和人工智能模型开发的新方法。它涉及在具有硬件限制的设备上运行模型,例如为智能汽车、冰箱和电表供电的微控制器。这种策略最适合这些用例,因为它加快了算法的速度——数据不需要在服务器上来回传输。它在大型服务器上尤为重要,可以加快整个ML开发过程。

在物联网边缘设备上运行TinyML程序有很多好处:

  • 更低的能源消耗。
  • 减少延迟。
  • 用户隐私保证。
  • 降低带宽要求。

使用TinyML提供了更大的隐私,因为计算过程完全是本地的。它消耗更少的功率和带宽,从而降低延迟,因为它不需要将数据发送到中央位置进行处理。正在利用这一创新的行业包括农业和医疗保健。他们通常使用嵌入了TinyML算法的物联网设备,使用收集到的数据来监控和预测现实世界的事件。

结论

本文介绍了MLOps和DevOps之间的主要区别:

  • 开发——DevOps管道专注于开发新版本的软件产品,而MLOps专注于提供有效的机器学习模型。
  • 版本控制——DevOps主要关注跟踪二进制文件和软件工件,而MLOps跟踪其他因素,如超参数和模型性能。
  • 可重用性——DevOps和MLOps都努力创建可重用的流程和管道,但使用不同的策略来实现可重复性。
  • 持续监控——监控对DevOps很重要,但在MLOps中更为重要,因为模型和数据漂移会导致模型性能下降。

最后介绍了一些将在不久的将来改变DevOps和MLOps的关键趋势。我希望这将有助于您在新的、令人兴奋的开发生态系统中发现自己的位置。

文中关于机器学习,开发,MLOps,DevOps的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《MLOps对比DevOps:有什么区别?》文章吧,也可关注golang学习网公众号了解相关技术文章。

版本声明
本文转载于:51CTO.COM 如有侵犯,请联系study_golang@163.com删除
有效融合语言模型、图神经网络,文本图训练框架GLEM实现新SOTA有效融合语言模型、图神经网络,文本图训练框架GLEM实现新SOTA
上一篇
有效融合语言模型、图神经网络,文本图训练框架GLEM实现新SOTA
核酸采样机器人,一个新兴的千亿市场
下一篇
核酸采样机器人,一个新兴的千亿市场
查看更多
最新文章
查看更多
课程推荐
  • 前端进阶之JavaScript设计模式
    前端进阶之JavaScript设计模式
    设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
    542次学习
  • GO语言核心编程课程
    GO语言核心编程课程
    本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
    508次学习
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
    497次学习
  • JavaScript正则表达式基础与实战
    JavaScript正则表达式基础与实战
    在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
    487次学习
  • 从零制作响应式网站—Grid布局
    从零制作响应式网站—Grid布局
    本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
    484次学习
查看更多
AI推荐
  • 可图AI图片生成:快手可灵AI2.0引领图像创作新时代
    可图AI图片生成
    探索快手旗下可灵AI2.0发布的可图AI2.0图像生成大模型,体验从文本生成图像、图像编辑到风格转绘的全链路创作。了解其技术突破、功能创新及在广告、影视、非遗等领域的应用,领先于Midjourney、DALL-E等竞品。
    32次使用
  • MeowTalk喵说:AI猫咪语言翻译,增进人猫情感交流
    MeowTalk喵说
    MeowTalk喵说是一款由Akvelon公司开发的AI应用,通过分析猫咪的叫声,帮助主人理解猫咪的需求和情感。支持iOS和Android平台,提供个性化翻译、情感互动、趣味对话等功能,增进人猫之间的情感联系。
    30次使用
  • SEO标题Traini:全球首创宠物AI技术,提升宠物健康与行为解读
    Traini
    SEO摘要Traini是一家专注于宠物健康教育的创新科技公司,利用先进的人工智能技术,提供宠物行为解读、个性化训练计划、在线课程、医疗辅助和个性化服务推荐等多功能服务。通过PEBI系统,Traini能够精准识别宠物狗的12种情绪状态,推动宠物与人类的智能互动,提升宠物生活质量。
    28次使用
  • 可图AI 2.0:快手旗下新一代图像生成大模型,专业创作者与普通用户的多模态创作引擎
    可图AI 2.0图片生成
    可图AI 2.0 是快手旗下的新一代图像生成大模型,支持文本生成图像、图像编辑、风格转绘等全链路创作需求。凭借DiT架构和MVL交互体系,提升了复杂语义理解和多模态交互能力,适用于广告、影视、非遗等领域,助力创作者高效创作。
    31次使用
  • 毕业宝AIGC检测:AI生成内容检测工具,助力学术诚信
    毕业宝AIGC检测
    毕业宝AIGC检测是“毕业宝”平台的AI生成内容检测工具,专为学术场景设计,帮助用户初步判断文本的原创性和AI参与度。通过与知网、维普数据库联动,提供全面检测结果,适用于学生、研究者、教育工作者及内容创作者。
    46次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码