0
点赞
收藏
分享

微信扫一扫

端到端机器学习工作流概述

在本文中,我们对基于机器学习的软件开发的典型工作流程进行了概述。通常,机器学习项目的目标是通过使用收集的数据并将机器学习算法应用于它们来构建统计模型。因此,每个基于 ML 的软件都包含三个主要制品:数据ML 模型代码。与这些制品相对应,典型的机器学习工作流程包括三个主要阶段:

  • 数据工程:数据采集和数据准备
  • ML 模型工程:ML 模型训练和服务
  • 代码工程:将 ML 模型集成到最终产品中

下图显示了典型机器学习工作流程中涉及的核心步骤。

端到端机器学习工作流概述_机器学习

数据工程

任何数据科学工作流程的第一步都是获取和准备要分析的数据。通常,数据是从各种资源整合而来的,并且具有不同的格式。数据准备遵循数据采集步骤,根据Gartner的说法,这是“一个迭代和敏捷的过程,用于探索、组合、清洗和将原始数据转换为用于数据集成、数据科学、数据发现和分析/商业智能 (BI) 的精选数据集用例”。

值得注意的是,虽然准备阶段是旨在为分析准备数据的中间阶段,该阶段往往在资源和时间方面是最昂贵的。数据准备是数据科学工作流程中的一项关键活动,因为避免数据错误传播到下一阶段数据分析非常重要,否则这会导致从数据中得出错误的见解。

数据工程流水线包括对可用数据的一系列操作,从而为机器学习算法提供训练和测试数据集:

  1. 数据获取-使用各种框架和格式收集数据,例如 Spark、HDFS、CSV 等。此步骤还可能包括模拟数据生成或数据增强。
  2. 探索和验证-包括数据分析以获取有关数据内容和结构的信息。此步骤的输出是一组元数据,例如值的最大值、最小值和平均值。数据验证操作是用户定义的错误检测功能,它扫描数据集以发现一些错误。
  3. 数据整理(清理) -重新格式化特定属性和纠正数据错误的过程,例如缺失值填补。
  4. 数据标注-数据工程流水线的操作,其中每个数据点都被分配到一个特定的类别。
  5. 数据划分-将数据拆分为训练、验证和测试数据集,以在核心机器学习阶段使用以生成 ML 模型。

模型工程

ML 工作流程的核心是编写和执行机器学习算法以获得 ML 模型的阶段。模型工程流水线包括许多导致最终模型的操作:

  1. 模型训练-将机器学习算法应用于训练数据以训练 ML 模型的过程。它还包括模型训练过程的特征工程和超参数调整。
  2. 模型评估-在将生产中的 ML 模型提供给最终用户之前,验证经过训练的模型以确保其满足原始编码目标。
  3. 模型测试-使用保留回测数据集执行最终的“模型验收测试”。
  4. 模型打包-将最终 ML 模型导出为特定格式(例如 PMML、PFA 或 ONNX)的过程,该格式描述模型,以供业务应用程序使用。

模型部署

一旦我们训练了机器学习模型,我们需要将其部署为业务应用程序的一部分,例如移动或桌面应用程序。ML 模型需要各种数据点(特征向量)来产生预测。ML 工作流程的最后阶段是将先前设计的 ML 模型集成到现有软件中。此阶段包括以下操作:

  1. 模型服务-在生产环境中处理 ML 模型制品的过程。
  2. 模型性能监控-根据实时和未知数据(例如预测或推荐)观察 ML 模型性能的过程。特别是,我们对特定于 ML 的信号感兴趣,例如与先前模型性能的预测偏差。这些信号可以用作模型重新训练的触发器。
  3. 模型性能日志- 每个推理请求都会产生日志记录。


https://ml-ops.org/content/end-to-end-ml-workflow

延伸阅读:《数据网格架构》https://www.datamesh-architecture.com




举报

相关推荐

0 条评论