使用资产(用户指南)
使用 SageMaker Assets,与组织中的其他人员无缝协作开展机器学习项目。通过 SageMaker Assets,您和您的合作者可以创建模型和数据表并相互共享。在 SageMaker Assets 中,这些模型和数据表被称为资产。
SageMaker Assets 是 Amazon SageMaker Studio 的一项功能。您或您的管理员在 Amazon DataZone 项目中创建一个 Studio 环境。有关设置 Amazon DataZone 的详细信息,请参阅 设置 SageMaker Assets(管理员指南)。
资产是指 ML 资产或数据资产。ML 资产是指向以下内容的元数据:
-
特征存放区特征组
-
SageMaker 模型组
基础模型组和特征组是数据来源。如果更新了特征组或模型组,模型组或特征组的资产会在当天内更新。
数据资产是指向以下内容的元数据:
-
Amazon Redshift 表
-
AWS Glue 表
对于数据资产,数据来源是从 AWS Glue 表和 Amazon Redshift 表中提取元数据到资产中的机制。例如,数据来源会将 AWS Glue 表中的元数据提取到该表的资产中。
您可以通过发布资产,让组织中的每个人都能看到它。个人可以查看资产中的元数据并申请访问。如果您提供访问权限,他们就能访问基础机器学习数据来源或表。
您的管理员可能已经授予您访问特征组、模型组和表格的权限。如果还没有,请参阅 设置 SageMaker Assets(管理员指南) 中的信息,以帮助您开始工作。
以下各节提供了特征组和模型组的参考信息。
Amazon SageMaker Feature Store 提供了一个集中位置,可帮助您存储和管理您的功能。它是一个高性能的存储库,可用于特征工程。
在特征存放区内,功能存储在一个特征组中。特征组是与您正在进行的项目相关的功能集合。例如,如果您正在做一个与预测房价有关的项目,那么特征组可能包括位置或卧室数量等功能。
有关如何使用特征组简化特征工程流程的更多信息,请参阅 使用特征存放区创建、存储和共享功能。
您可以在 SageMaker Model Registry 中使用 SageMaker 模型组来组织和管理不同版本的模型。您可以比较不同版本的模型,看看哪一款最适合您的使用情况。有关 SageMaker Model Registry 的更多信息,请参阅 利用模型注册中心进行模型注册部署。
以下是有关 Amazon Redshift 和 AWS Glue 的背景信息。
Amazon Redshift 是一种大型数据存储库服务,可在大型数据集上提供快速查询性能。有关 Amazon Redshift 的更多信息,请参阅 Amazon Redshift Serverless。
AWS Glue 是一种提取、转换、加载 (ETL) 服务,可用于简化数据准备过程。有关 AWS Glue 的更多信息,请参阅什么是 AWS Glue?
您可以使用 SQL 编辑器连接 AWS Glue 和 Amazon Redshift 数据库并运行查询。您可以在 SageMaker Assets 中共享在编辑器中创建的任何表格。有关更多信息,请参阅 在 Studio 中使用 SQL 准备数据。
术语和概念
在开始使用 SageMaker Assets 之前,最好先熟悉以下术语和概念:
-
资产 - 指向您要共享的模型或数据表的元数据。您可以申请访问他人拥有的资产,也可以与他人共享您的资产。您和您的队友可以访问资产以及与之相关的基础数据表或模型。
-
订阅资产 - 要申请访问资产,您需要提交订阅申请。如果您的申请获得批准,该资产就会出现在您订阅的资产下。
-
自有资产 - 您与队友共享的资产。
-
资产目录 - 在组织内共享的资产。
步骤 1:访问 SageMaker Assets
访问 SageMaker Assets,查看您的资产并与他人共享。以下信息可帮助您开始使用它。
您可以从 Amazon DataZone 域中的项目访问 SageMaker Assets。项目是您和团队成员之间的合作。在项目中,您和项目的其他成员可以访问您和其他团队成员在清单目录中创建的资产。您可以将资产发布到已发布的目录中,让组织中的其他人也能看到它们。
这些人可以申请访问您的资产。如果您为他们提供访问权限,他们就可以访问最新的数据来源。例如,如果个人订阅了您更新的 AWS Glue 表,他们就可以实时访问更新后的 AWS Glue 表。
使用以下步骤访问 SageMaker Assets。
访问 SageMaker Assets
-
打开 Amazon DataZone
管理控制台。 -
选择 查看域。
-
在包含项目的域旁边,选择 打开数据门户。
-
在分析工具下,选择 SageMaker Studio。
-
选择打开 Amazon SageMaker。
-
选择 Assets (资产)。
已与您共享的资产位于已订阅资产下。您和项目成员创建的资产位于自有资产下。您和组织其他成员发布的资产都在资产目录中。
步骤 2:共享资产并管理资产访问权限
创建机器学习模型、特征组或数据表后,您可以让与您在项目中合作的个人或您的组织更广泛地看到它们。您可以回复访问资产的请求。如果您批准了个人的请求,他们就可以修改资产的基础数据来源。
共享资产时,您有两种选择:
-
发布到资产目录 - 让组织中的每个人都能看到资产
-
发布到清单--让项目中的每个人都能看到资产
如果您已将资产发布到资产目录,组织内的个人就可以在资产目录中找到它。他们可以查看资产的元数据,并决定是否要申请访问这些资产。如果您批准了他们的请求,他们就可以访问基础数据来源。
如果发布到清单,您和项目的其他成员就可以访问该资产,而无需任何其他操作。
发布到库存中的资产只显示在自有资产下。发布到目录中的资产显示在自有资产和资产目录下。
发布数据表时,必须创建一个数据来源,以便从基础 AWS Glue 表或 Amazon Redshift 表中提取元数据到资产中。使用以下步骤发布 AWS Glue 或 Amazon Redshift 表。
使用以下步骤为特征组或模型软件包组发布资产。
使用以下步骤将自有资产中的资产发布到资产目录。
从 SageMaker Assets 页面发布资产
-
在 Studio 中,导航至资产。
-
选择自有资产。
-
在搜索栏中指定资产名称。
-
选择资产。
-
选择 发布。
您可以使用以下 SageMaker Python SDK 代码发布特征组或模型软件包组。代码假定您已经创建了特征组或模型软件包组。
from sagemaker.asset import AssetManager publisher = AssetPublisher() publisher.publish_to_catalog(
name-of-your-feature-group-or-model-package
)
步骤 3:管理访问请求
发布资产后,项目外的用户可能希望访问该资产。您可以提供、拒绝或撤销访问请求。您还可以删除资产,使数据的基本来源只对自己开放。
使用以下程序回复订阅请求。
批准订阅申请
-
导航至 SageMaker Assets 页面。
-
选择管理资产。
-
选择传入订阅请求。
-
-
(可选)选择批准并说明理由。
-
(可选)选择拒绝。
-
您可以撤销之前批准的资产访问权限。如果选择撤销访问权限,用户将失去对资产和基础资产的访问权限。使用以下程序撤销访问权限。
要取消访问权限
-
导航至 SageMaker Assets 页面。
-
选择管理资产。
-
选择传入订阅请求。
-
选择已批准选项卡。
-
选择资产旁边的撤销。
您还可以取消发布资产,使其只显示为自有资产。这些资产在资源目录中将不可见,但您已批准其订阅请求的个人仍可访问这些资产。
取消发布资产
-
导航至 SageMaker Assets 页面。
-
在自有资产下,选择要取消发布的资产。
-
选择 Unpublish (取消发布)。
您还可以从取消发布资产的同一页面删除资产。删除资产不会删除数据来源。删除资产只会让项目或组织的其他成员看不到该资产。
步骤 4:查找资产并申请访问权限
您可以申请访问其他用户已发布到资源目录中的资产。如果他们批准了订阅请求,您就可以访问基础数据来源。
在 SageMaker Assets 页面顶部,您可以指定搜索查询,以查找组织内其他用户已发布的资产。您还可以选择资产类型,查看该类型的所有已发布资产。例如,您可以选择 Glue Table 来查看所有已发布的 AWS Glue 表格。
您还可以直接在资产名称下查看资产类型。以下是资产类型的可用名称:
-
Redshift 表
-
Glue 表
-
模型
-
特征组
注意
以下存储空间中的特征组类型为 Glue 表:
-
离线
-
离线和在线
申请订阅
-
导航至 SageMaker Assets 页面。
-
-
在搜索栏中指定资产名称,然后选择搜索。
-
对于类型,选择资产类型,并在资源目录中找到要访问的资产。
-
-
选择资产。
-
选择订阅。
-
提供申请理由。
-
选择提交。
您的订阅请求会出现在管理资产请求下的出站订阅请求中。如果资产的发布者批准了您的请求,该资产就会出现在已订阅资产下。现在,您可以在机器学习工作流程中使用 Amazon Redshift、AWS Glue 表或 ML 数据来源。
步骤 5:在机器学习工作流程中使用共享资产
如果您的资产订阅请求获得批准,您就可以在机器学习工作流程中使用该资产。
您获得访问权限的特征组会出现在 Studio 中的特征组列表中。
您获得访问权限的模型组会出现在 Studio 中的模型组列表中。您可以从 SageMaker Assets 在模型注册表中打开模型组。使用以下步骤打开模型注册表中的模型组。已订阅资产。
从 SageMaker Assets 打开模型组
-
选择模型组。
-
选择在模型注册表中打开。
您可以在 SageMaker Canvas 中访问 Data Wrangler 中的 AWS Glue 或 Amazon Redshift 表。SageMaker Canvas 是一款无需代码即可执行探索性数据分析 (EDA) 和训练模型的应用程序。有关 SageMaker Canvas 的更多信息,请参阅 Amazon SageMaker Canvas。
您还可以使用 SQL 扩展将 AWS Glue 或 Amazon Redshift 表中的数据导入 Jupyter Notebook。您可以将数据转换为用于机器学习工作流程的 pandas 数据框。有关更多信息,请参阅 在 Studio 中使用 SQL 准备数据。