Model Registry
了解模型注册表如何对 ML 模型进行版本管理、治理和部署。探索 Ultralytics Platform,了解集中式训练、管理、监控和可复现性。
模型注册中心是一种集中式系统,用于在机器学习模型的整个生命周期中对其进行组织、版本管理、治理和检索。它将模型文件(例如学习得到的模型权重)与元数据关联起来,这些元数据描述了每个模型的训练、评估、审批和部署方式。作为机器学习运维的核心组件,注册中心为团队提供可信的信息源,用于决定哪个模型版本应当承载生产流量。
模型注册中心的工作原理#
模型注册会在一次训练运行生成候选模型后开始。注册中心会创建一个命名条目、分配一个版本,并记录理解和复现该模型产物所需的信息。典型条目包括:
- 模型产物: 序列化权重、预处理逻辑、配置文件,或指向其存储位置的引用。
- 版本: 用于区分不同候选模型的不可变标识符。
- 指标和参数: 验证准确率、精确率、召回率、延迟、数据集详情、超参数和其他测量值。
- 谱系: 模型、源代码、训练运行和数据之间的关联。
- 状态: 候选、已批准、已拒绝、冠军或已归档等标签。
- 部署信息: 当前使用该版本的环境和端点。
不同平台对这些理念的实现方式各不相同。MLflow Model Registry 工作流使用已注册模型、版本、别名和标签,而Amazon SageMaker Model Registry支持模型组、审批状态、谱系和部署自动化。有些系统还会记录模型签名:即Snowflake 模型签名文档中所述的预期输入和输出架构。
champion 或 production 等别名提供稳定名称,可以在不同不可变版本之间切换。正如Vertex AI 模型别名指南所述,应用可以请求别名,而无需将版本号硬编码在代码中。
模型注册中心与相关概念的比较#
模型注册中心与多个 ML 工具存在交集,但用途各不相同:
- **实验跟踪**记录训练运行,包括参数、指标和中间产物。注册中心会接收这些实验中经过选择的输出,并将其作为发布候选进行管理。
- 产物存储用于保存大型文件。注册中心可以直接存储这些文件,也可以充当元数据索引,指向外部对象存储。Kubeflow Model Registry 架构展示了这种以元数据为中心的设计。
- 源代码控制对代码进行版本管理,而模型注册中心则对训练产物及其特定于 ML 的元数据进行版本管理。GitLab model registry可以将模型版本与 CI/CD 作业、日志、指标和参数关联起来。
- **模型部署**使选定的模型可用于推理。注册中心负责标识已批准的模型产物;部署系统负责运行它。
- **模型监控**在模型发布后观察其生产环境中的行为。监控结果可以触发评估、重新训练、注册以及替换版本的晋级。
因此,注册中心充当实验与生产之间的控制点,而不是取代其周围的所有组件。
实际应用#
在制造业检测系统中,每当摄像头、材料或产品设计发生变化时,工程师都可能重新训练缺陷检测器。注册中心可以保留每个模型的数据集引用、平均精度均值、推理延迟和支持的硬件格式。测试确认第 12 版在不增加误报的情况下提升了划痕检测效果后,审批人可以将其晋级,同时保留第 11 版以便立即回滚。
在医学图像分析中,多个团队可能会评估肿瘤检测候选模型。注册过程会保留每个版本的验证结果、训练配置、负责人和审批历史。生产应用可以限制为仅使用经过审查的模型,而旧版本仍可用于审计和复现。基于角色的控制(例如Snowflake Model Registry 治理中所述的控制)有助于防止未经授权地替换或检查敏感模型产物。
Ultralytics 工作流中的模型注册#
Ultralytics Platform为计算机视觉模型提供集中式模型管理功能,涵盖数据集标注、训练、结果比较、导出、部署和监控。其文档化的Platform 模型管理工作流支持上传的 .pt 权重,以及通过云端或远程训练生成的模型。
下面介绍的文档化工作流会在本地训练Ultralytics YOLO26,同时将生成的模型、配置、指标和日志发送到一个命名的 Platform 项目中:
import os
from ultralytics import YOLO
# Authenticate remote training with Ultralytics Platform
os.environ["ULTRALYTICS_API_KEY"] = "YOUR_API_KEY"
model = YOLO("yolo26n.pt")
model.train(
data="coco8.yaml",
epochs=3,
project="username/model-registry-demo",
name="candidate-001",
)项目名称和运行名称使候选模型能够与相关模型一起被发现。团队可以对其进行评估,使用Ultralytics MLflow 集成记录更多实验信息,或者在注册模型必须运行于特定云端或边缘硬件上时应用YOLO 模型导出。
注册中心实用指南#
将每个已注册版本视为不可变版本。使用易于人类理解的别名进行部署,保留验证证据,并定义明确的晋级要求。基于语义化版本控制的命名策略可以传达兼容性变化,不过自动递增的版本号同样有效。
最重要的是,注册完整的模型包,而不是无法说明用途的权重文件。缺少预处理规则、类别名称、输入架构、依赖项或数据集引用,可能会使一个表面上有效的模型无法复现,或无法安全部署。访问控制、自动化测试、审批关卡、审计日志和回滚流程,可以将模型注册中心从文件目录转变为可靠的生产安全保障。









