什么是 Azure 机器学习工作区?

工作区是与同事协作创建机器学习项目并对相关工作进行分组的地方。 例如,试验、作业、数据集、模型、组件和推理终结点。 本文介绍工作区、如何管理工作区访问权限,以及如何使用工作区来安排工作。

准备好开始了吗? 创建工作区

在工作区中执行的任务

对于机器学习团队来说,工作区是安排其工作的地方。 下面是可从工作区开始的一些任务:

  • 创建作业–作业是用于生成模型的训练运行。 可以将作业分组到试验中以比较指标。
  • 创建者管道–管道是可重复使用的工作流,用于训练和重新训练模型。
  • 注册数据资产–数据资产有助于管理用于模型训练和管道创建的数据。
  • 注册模型–有了要部署的模型后,需要创建一个已注册的模型。
  • 部署模型–使用已注册的模型和评分脚本部署模型。

除了对机器学习结果进行分组外,工作区还托管资源配置:

  • 计算目标用于运行试验。
  • 数据存储定义你和其他人在使用数据资产时如何连接到数据源。
  • 安全设置 - 网络、身份验证和访问控制以及加密设置。

整理工作区

对于机器学习团队主管和管理员,工作区充当访问管理、成本管理和数据隔离的容器。 下面是整理工作区的一些技巧:

  • 在用户之间的工作区中使用用户角色进行权限管理。 例如,数据科学家、机器学习工程师或管理员。
  • 向用户组分配访问权限:借助 Microsoft Entra 用户组,无需将单个用户添加到同一组用户需要访问的每个工作区和其他资源。
  • 为每个项目创建一个工作区:虽然一个工作区可以用于多个项目,但将其限制为每个工作区一个项目,可以将成本报告累算到项目级别。 此外,你还可以管理每个项目范围内的数据存储等配置。
  • 共享 Azure 资源:工作区要求创建多个关联的资源。 在工作区之间共享这些资源,以保存重复的设置步骤。
  • 启用自助服务:以 IT 管理员身份预先创建和保护关联的资源,并使用用户角色让数据科学家自行创建工作区。
  • 共享资产:可以使用 Azure 机器学习注册表在工作区之间共享资产。

我的内容是如何存储在工作区中的?

工作区保留所有训练运行的历史记录,包括日志、指标、输出、世系元数据和脚本快照。 在 Azure 机器学习中执行任务时,会生成项目。 它们的元数据和数据存储在工作区及其关联的资源中。

关联的资源

创建新工作区时,需要引入其他 Azure 资源来存储数据。 如果你不提供资源,Azure 机器学习将自动创建这些资源。

  • Azure 存储帐户。 存储机器学习工件,例如作业日志。 默认情况下,将数据上传到工作区时会使用此存储帐户。 与 Azure 机器学习计算实例一起使用的 Jupyter 笔记本也存储在此处。

    重要

    若要使用现有的 Azure 存储帐户,它不能为 BlobStorage 类型、高级帐户(Premium_LRS 和 Premium_GRS),并且不能具有分层命名空间(用于 Azure Data Lake Storage Gen2)。 可以通过创建数据存储,将高级存储或分层命名空间用作额外存储。 升级到常规用途 v2 后,请勿在存储帐户上启用分层命名空间。 如果引入现有的常规用途 v1 存储帐户,可以在创建工作区后将其升级到常规用途 v2

  • Azure 容器注册表。 存储创建的 docker 容器(通过 Azure 机器学习生成自定义环境时)。 触发创建自定义环境的方案包括部署模型和数据分析时的 AutoML。

    注意

    如果不需要生成自定义 docker 容器,则可以在不使用 Azure 容器注册表作为依赖项的情况下创建工作区。 若要读取容器映像,Azure 机器学习还可与外部容器注册表配合使用。 生成自定义 docker 映像时,会自动预配 Azure 容器注册表。 使用 Azure RBAC 阻止生成客户 docker 容器。

    注意

    如果订阅设置需要向其下的资源添加标记,则 Azure 机器学习创建的 Azure 容器注册表 (ACR) 将失败,因为我们无法将标记设置为 ACR。

  • Azure Application Insights。 帮助你监视和收集推理终结点中的诊断信息。

    有关详细信息,请参阅监视联机终结点

  • Azure Key Vault。 存储计算目标使用的机密和工作区所需的其他敏感信息。

创建工作区

可通过多种方式创建工作区。 若要开始,请使用以下任一选项:

若要使用你的首选安全设置自动创建工作区,请执行以下操作:

  • 直接在脚本环境或 MLOps 工作流中使用 REST API 进行平台集成。

用于工作区交互和管理的工具

设置好工作区后,可以通过以下方式与之交互:

以下工作区管理任务可在每个界面中查看。

工作区管理任务 门户 工作室 Python SDK Azure CLI VS Code
创建工作区
管理工作区访问权限
创建和管理计算资源
创建计算实例

警告

不支持将 Azure 机器学习工作区移动到另一个订阅,或将拥有的订阅移到新租户。 这样做可能会导致错误。

子资源

在 Azure 机器学习中创建计算群集和计算实例时,会创建子资源。

  • VM:为用于运行作业的计算实例和计算群集提供算力。
  • 负载均衡器:网络负载均衡器可为每个计算实例和计算群集管理流量,即使在计算实例/群集停止时也可以工作。
  • 虚拟网络:这些网络可帮助 Azure 资源与其他 Azure 资源、互联网以及其他本地网络相互通信。
  • 带宽:封装跨区域的所有出站数据传输。

后续步骤

若要详细了解如何根据组织要求规划工作区,请参阅组织和设置 Azure 机器学习

若要开始使用 Azure 机器学习,请参阅: