架构框架:AI 和机器学习视角中的这篇文档简要介绍了一些原则和建议,可帮助您优化 Google Cloud 上 AI 和机器学习工作负载的性能。本文档中的建议与架构框架的性能优化支柱保持一致。
AI 和机器学习系统可为贵组织赋予新的自动化和决策能力。这些系统的性能可能会直接影响您的业务驱动因素,例如收入、成本和客户满意度。为了充分发挥 AI 和机器学习系统的潜力,您需要根据业务目标和技术要求优化其性能。性能优化过程通常涉及某些权衡。例如,提供所需性能的设计选择可能会导致成本更高。本文档中的建议将性能置于成本等其他因素之上。
为了优化 AI 和机器学习的性能,您需要就模型架构、参数和训练策略等因素做出决策。在做出这些决策时,请考虑 AI 和机器学习系统及其部署环境的整个生命周期。例如,非常大的 LLM 可以在庞大的训练基础架构上实现高性能,但在容量受限的环境(例如移动设备)中,非常大的模型可能无法取得理想的效果。
将业务目标转化为效果目标
若要做出有助于优化性能的架构决策,请先明确一组业务目标。设计 AI 和机器学习系统,以提供支持您的业务目标和优先事项所需的技术性能。您的技术团队必须了解效果目标与业务目标之间的映射。
请考虑以下建议:
- 将业务目标转化为技术要求:将 AI 和机器学习系统的业务目标转化为具体的技术性能要求,并评估未满足这些要求的影响。例如,对于用于预测客户流失情况的应用,机器学习模型在准确率和召回率等标准指标方面应表现出色,并且应用应满足低延迟时间等操作要求。
- 在模型生命周期的所有阶段监控性能:在模型部署后的实验和训练期间,监控关键绩效指标 (KPI),并观察与业务目标存在的任何偏差。
- 自动执行评估,使其可重复且标准化:借助标准化且可比较的实验评估平台和方法,工程师可以加快性能改进速度。
运行和跟踪频繁的实验
要将创新和创造力转化为效果提升,您需要营造一种支持实验的文化,并打造一个支持实验的平台。由于 AI 和机器学习技术在不断快速发展,因此性能改进是一个持续的过程。为了保持快速迭代的过程,您需要将实验环境与训练和服务平台分开。制定标准化且可靠的实验流程至关重要。
请考虑以下建议:
- 构建实验环境:若要提升性能,需要专用的强大交互式环境,以支持机器学习流水线的实验和协作开发。
- 将实验作为一种文化植入:在任何生产环境部署之前运行实验。迭代发布新版本,并始终收集性能数据。使用不同的数据类型、特征转换、算法和超参数进行实验。
构建和自动执行训练和服务
训练和部署 AI 模型是 AI 服务的核心组成部分。您需要强大的平台和实践,以支持快速可靠地创建、部署和提供 AI 模型。请花些时间和精力,为核心 AI 训练和服务任务创建基础平台。这些基础平台有助于您的团队缩短工作时间和减少工作量,并从中长期提高输出质量。
请考虑以下建议:
- 使用训练服务的 AI 专用组件:此类组件包括高性能计算组件和 MLOps 组件,例如特征存储区、模型注册表、元数据存储区和模型性能评估服务。
- 使用预测服务的 AI 专用组件:此类组件可提供高性能且可伸缩的资源,支持特征监控,并实现模型性能监控。为防止和管理性能下降,请实施可靠的部署和回滚策略。
将设计选项与性能要求相匹配
在做出设计决策以提升性能时,请仔细评估这些决策是否符合您的业务要求,还是会造成浪费和适得其反。如需选择合适的基础架构、模型或配置,请找出性能瓶颈并评估它们与性能指标之间的关联。例如,即使在功能强大的 GPU 加速器上,您的训练任务也可能会因存储层的数据 I/O 问题或模型本身的性能限制而出现性能瓶颈。
请考虑以下建议:
- 根据性能目标优化硬件用量:为了训练和部署符合性能要求的机器学习模型,您需要优化计算层、存储层和网络层的基础架构。您必须衡量和了解影响效果目标的变量。这些变量在训练和推理方面有所不同。
- 侧重于工作负载专用要求:将性能优化工作重点放在 AI 和机器学习工作负载的独特要求上。依靠托管服务来确保底层基础架构的性能。
- 选择适当的训练策略:我们提供了多个预训练基础模型,并且会经常发布更多此类模型。选择可为您的任务提供最佳性能的训练策略。确定您是应构建自己的模型、根据您的数据调整预训练模型,还是使用预训练模型 API。
- 认识到效果优化策略的回报率可能会递减:如果某种特定的效果优化策略未能带来可衡量的增量业务价值,请停止采用该策略。
将效果指标与设计和配置选项相关联
为了创新、排查和调查性能问题,请在设计选择和性能结果之间建立明确的联系。除了实验之外,您还必须可靠地记录资产、部署、模型输出以及生成输出的配置和输入的谱系。
请考虑以下建议:
- 构建数据和模型谱系系统:所有已部署的素材资源及其效果指标都必须与导致部署系统的数据、配置、代码和选择相关联。此外,模型输出必须与特定的模型版本以及输出的生成方式相关联。
- 使用可解释性工具提升模型性能:采用并标准化用于模型探索和可解释性的工具和基准。这些工具可帮助机器学习工程师了解模型行为,并提升性能或消除偏差。
贡献者
作者:
- Benjamin Sadik | AI 和机器学习专家客户工程师
- Filipe Gracio,博士 | 客户工程师
其他贡献者:
- Kumar Dhanagopal | 跨产品解决方案开发者
- Marwan Al Shawi | 合作伙伴客户工程师
- Zach Seils | 网络专家