机器学习系统架构的十个要素
来源:51CTO.COM
时间:2023-04-19 10:24:48 113浏览 收藏
本篇文章向大家介绍《机器学习系统架构的十个要素》,主要包括,具有一定的参考价值,需要的朋友可以参考一下。
这是一个AI赋能的时代,而机器学习则是实现AI的一种重要技术手段。那么,是否存在一个通用的通用的机器学习系统架构呢?
在老码农的认知范围内,Anything is nothing,对系统架构而言尤其如此。但是,如果适用于大多数机器学习驱动的系统或用例,构建一个可扩展的、可靠的机器学习系统架构还是可能的。从机器学习生命周期的角度来看,这个所谓的通用架构涵盖了关键的机器学习阶段,从开发机器学习模型,到部署训练系统和服务系统到生产环境。我们可以尝试从10个要素的维度来描述这样的一个机器学习系统架构。
1.数据和特征工程流水线
在给定的时间内提供高质量的数据,并以可伸缩和灵活的方式生成有用的机器学习特征。一般来说,数据流水线可以与特征工程流水线分离。数据流水线是指提取、转换和加载(ETL)的流水线,其中,数据工程师负责将数据传输到存储位置,比如建立在对象存储之上的数据湖,特征工程流水线侧重于将原始数据转换成可以帮助机器学习算法更快、更准确地学习的机器学习特征。
特征工程一般分为两个阶段。在第一阶段,特征工程逻辑通常由数据科学家在开发阶段通过各种实验创建,以便找到最佳的特征集合,而数据工程师或机器学习工程师则负责特征工程流水线的生产,为模型训练和在生产环境中服务提供高质量的特征数据。
2. 特征存储
存储机器学习的特征数据,进行版本管理,用于发现、共享和重用,并为模型训练和服务提供一致的数据和机器学习特征,从而提高机器学习系统的可靠性。
面对机器学习的特征数据,特征存储是特征工程流水线创建的持久化存储方案。特性存储支持模型训练和服务。因此,它是一个非常重要的部分,是端到端机器学习系统架构的一个重要组件。
3.机器学习模型训练和再训练流水线
对于机器学习训练运行不同的参数和超参数,以一种简单和可配置的方式进行实验,并记录这些训练所运行的各种参数和模型性能指标。自动评估、验证、选择性能最好的模型并将其记录到机器学习模型库中。
4.训练与模型的元存储
存储并记录机器学习的运行,包括参数、指标、代码、配置结果和经过培训的模型,并提供模型的生命周期管理、模型注释、模型发现和模型重用等功能。
对于一个完整的机器学习系统来说,以工程、模型训练和模型服务为特征,可以从数据中生成大量的元数据。所有这些元数据对于了解系统如何工作非常有用,可以从数据-> 特征-> 模型-> 服务端来提供可跟踪性,并在模型停止工作时提供用于调试的有用信息。
5.机器学习模型服务流水线
为在生产环境中使用机器学习模型提供适当的基础设施,既考虑到全程服务,也要考虑延迟。
一般来说,有三种服务模式: 批量服务、流式服务和online服务。每种服务类型都需要完全不同的基础设施。此外,基础设施应该是容错和自动扩展的,以响应请求和吞吐量波动,特别是对于关键业务的机器学习系统。
6.监控生产中的 ML 模型
在生产环境中,在发现数据和模型漂移及异常时,提供数据收集、监控、分析、可视化和通知功能,并提供必要的信息协助系统调试。
7.机器学习流水线
与特定的机器学习工作流相比,机器学习流水线提供了一个可重用的框架,使数据科学家能够更快地开发和迭代,同时保持高质量的代码并减少生产时间。一些机器学习流水线框架还提供了编排和架构抽象的功能。
8.工作流编排
工作流编排是集成端到端机器学习系统的关键组件,协调和管理所有这些关键组件的依赖项。工作流编排工具还提供诸如日志记录、缓存、调试和重试等功能。
9.持续集成/持续培训/持续交付(CI/CT/CD)
持续测试和持续集成是指持续用新数据培训新模型,在需要时升级模型性能,并以安全、敏捷和自动化的方式持续为生产环境提供服务并部署模型。
10.针对数据和模型的端到端质量控制
在端到端机器学习工作流的各个阶段,需要嵌入可靠的数据质量检查、模型质量检查、数据和概念漂移检测,以确保机器学习系统本身是可靠且可信的。这些质量控制的检查包括描述统计学、整体数据形状、数据缺失、数据重复、几乎恒定的特征、统计测试、距离指标和模型预测质量,等等。
以上,可以称之为机器学习系统架构的10个要素。在我们的实践中,整个工作流应该保持大致相同,但可能需要对其中某些要素进行调整和定制。
如何对机器学习的系统架构进行调整呢?
如何在产品设计之初精简架构要素呢?
如何在引入机器学习系统系统时,保持原有系统架构的持续性呢?
今天带大家了解了的相关知识,希望对你有所帮助;关于科技周边的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
215 收藏
-
301 收藏
-
222 收藏
-
364 收藏
-
377 收藏
-
167 收藏
-
122 收藏
-
194 收藏
-
169 收藏
-
281 收藏
-
443 收藏
-
273 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 508次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习