你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

如何处理机器学习操作

机器学习操作包含的原则和最佳做法可用于以可缩放的方式组织和标准化机器模型的开发、部署和维护。

显示机器学习操作概述的示意图。

下面概述了机器学习系统开发过程的主要组件:

显示生产环境中机器学习系统组件的示意图。

Sculley 等人编著 (2015 年)。 《机器学习系统中隐藏的技术债务》。 第 28 届神经网络信息处理系统国际会议论文集,第 2 卷 (NIPS 2015)。

机器学习操作与开发操作

虽然开发操作 (DevOps) 会影响机器学习操作,但过程之间也存在差异。 除 DevOps 做法外,机器学习操作还涉及 DevOps 中未涵盖的以下概念:

  • 数据版本控制:必须存在代码版本控制和数据集版本控制,因为架构和实际数据会随时间而改变。 这样,数据可以重现,其他团队成员可以看见数据,还有助于审核用例。

  • 模型跟踪:模型项目通常存储在模型注册表中,该注册表应标识存储、版本控制和标记功能。 这些注册表需要标识源代码、其参数以及用于训练模型的相应数据,所有这些内容都指示模型的创建位置。

  • 数字审核线索:使用代码和数据时,需要跟踪所有更改。

  • 通用化:模型不同于可重用代码,因为必须基于输入数据/方案调整模型。 可能需要针对新数据微调模型,才能将其用于新方案。

  • 模型重新训练:模型性能可能会随时间推移而降低,为让模型仍然可用,重新训练模型十分重要。

机器学习操作方法

组织内的数据科学家应用广泛的经验、成熟度、技能和工具来试验机器学习操作。 由于鼓励尽可能多的参与者接受 AI 非常重要,因此就所有组织应如何处理机器学习操作达成共识是不太可能或不可取的。 鉴于这种多样性,组织的一个明确起点是了解其规模和资源将如何影响其机器学习操作方法。

一个公司的规模和成熟度表明,数据科学团队或具有独特角色的个人能否负责机器学习的生命周期并驾驭每个阶段。 以下是每种方案中最常见的生命周期方法:

集中式方法

数据科学团队可能会在资源和专家有限的小公司中监视机器学习的生命周期。 此团队运用其技术专业知识来清理和聚合数据、开发和部署模型,以及监视和维护已部署的模型。

这种方法的一个优点是,它可以将模型快速推进到生产阶段,但由于需要保持数据科学团队的专业技能水平,因此增加了成本。 如果不具备这些必要的专业知识水平,质量就会受到影响。

分散式方法

在拥有专业操作团队的公司中,充当专用角色的个人可能会监视并负责机器学习生命周期。 用例获得批准后,将指派一名机器学习工程师评估其当前状态以及将其提升为可支持的格式所需的工作量。

数据科学家需要收集以下问题的信息:

  • 谁将成为业务所有者?
  • 如何使用模型?
  • 需要哪些级别的服务可用性?
  • 如何重新训练模型?
  • 重新训练模型的频率如何?
  • 谁将确定模型提升的条件?
  • 用例的敏感度如何,以及代码是否可共享?
  • 将来如何修改模型和代码?
  • 当前试验中有多少是可重用的?
  • 是否有现有的项目工作流可以提供帮助?
  • 将模型推进到生产阶段需要多少工作?

接下来,机器学习工程师设计工作流并估算所需的工作量。 一个最佳做法是让数据科学家参与构建工作流;这是开展交叉培训的关键机会,让他们熟悉最终的存储库,因为数据科学家将来会经常处理用例。

机器学习操作如何为业务带来好处

机器学习操作将传统开发操作、数据操作和数据科学/AI 联系起来。 了解机器学习操作如何为业务带来好处,将有助于你的 AI 之旅。

将机器学习操作与业务集成可以带来以下优势:

  • 企业模型管理可简化模型开发、训练、部署和实施的生命周期并使其自动化。 这使企业能够灵活地以可重复和可管理的方式应对即时需求和业务变化。

  • 企业利用模型版本控制和数据实现能够生成已进行迭代和版本控制的模型,以便根据数据的细微差别或特定用例进行调整。 这样就能灵活敏捷地应对业务挑战和变化。

  • 当组织监视和管理其模型时,这有助于快速响应数据或方案中的重要更改。 例如,由于外部因素或基础数据的变化,实现的模型可能会遇到极端数据偏移。 这会使之前的模型不可用,需要尽快重新训练当前模型。 要对机器学习模型的准确性和性能进行跟踪。 当更改影响模型可靠性和性能时,利益干系人会收到警报,从而可以快速重新训练和部署模型。

  • 应用的机器学习操作流程通过在整个开发生命周期内允许快速审核、合规性、治理和访问控制来支持业务成果。 随着业务发生变化,可以明确了解模型生成、数据使用情况和法规合规性。

后续步骤