本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
创建 Amazon SageMaker 笔记本实例
重要
允许 Amazon SageMaker Studio 或 Amazon SageMaker Studio Classic 创建亚马逊 SageMaker资源的自定义IAM策略还必须授予向这些资源添加标签的权限。需要向资源添加标签的权限,因为 Studio 和 Studio Classic 会自动标记他们创建的任何资源。如果IAM策略允许 Studio 和 Studio Classic 创建资源但不允许标记,则在尝试创建资源时可能会出现 AccessDenied “” 错误。有关更多信息,请参阅 提供标记 SageMaker资源的权限。
Amazon Amazon 托管政策 SageMaker授予创建 SageMaker 资源的权限已经包括在创建这些资源时添加标签的权限。
Amazon SageMaker 笔记本实例是运行 Jupyter Notebook 应用程序的 ML 计算实例。 SageMaker 管理创建实例和相关资源。在笔记本实例中使用 Jupyter 笔记本可以:
-
准备和处理数据
-
编写用于训练模型的代码
-
将模型部署到 SageMaker 托管
-
测试或验证您的模型
要创建笔记本实例,请使用 SageMaker 控制台或 CreateNotebookInstance
API。
您选择的笔记本实例类型取决于您使用笔记本实例的方式。确保您的笔记本实例不受内存CPU、或 IO 的约束。要将数据集加载到 notebook 实例的内存中进行探索或预处理,请为数据集选择具有足够RAM内存的实例类型。这需要具有至少 16 GB 内存(.xlarge 或更大)的实例。如果您计划使用笔记本进行计算密集型预处理,我们建议您选择计算优化型实例,例如 c4 或 c5。
使用 SageMaker 笔记本时,最佳做法是使用笔记本实例来编排其他 Amazon 服务。例如,您可以使用 notebook 实例来管理大型数据集的处理。为此,请调用 Amazon Glue 获取ETL(提取、转换和加载)服务,或调用 Amazon 使用 Hadoop EMR 进行映射和数据缩减。您可以使用 Amazon 服务作为数据的临时计算或存储形式。
您可以使用 Amazon 简单存储服务存储桶存储和检索您的训练和测试数据。然后,您可以使用 SageMaker 来训练和构建模型。因此,笔记本的实例类型不会影响模型训练和测试的速度。
收到请求后,执行以下 SageMaker 操作:
-
创建网络接口-如果选择可选VPC配置,则 SageMaker 会在中创建VPC网络接口。它使用您在请求中提供的子网 ID 来确定要在哪个可用区中创建子网。 SageMaker 将您在请求中提供的安全组与子网相关联。有关更多信息,请参阅 将中的笔记本实例VPC连接到外部资源。
-
启动 ML 计算实例 — 在中SageMaker启动 ML 计算实例 SageMaker VPC。 SageMaker 执行允许它管理您的笔记本实例的配置任务。如果您指定了VPC,则 SageMaker 启用您VPC和笔记本实例之间的流量。
-
为常见的深度学习平台安装 Anaconda 软件包和库 — SageMaker 安装安装程序中包含的所有 Anaconda 软件包。有关更多信息,请参阅 Anaconda 软件包清单
。 SageMaker 还会安装 TensorFlow 和 Apache MXNet 深度学习库。 -
连接 ML 存储卷 — 将 ML 存储卷SageMaker附加到 ML 计算实例。您可以将卷用作工作区来清理训练数据集或临时存储验证、测试或其他数据。以 1 GB 为增量,为卷选择 5 GB 到 16384 GB 之间的任意大小。默认值为 5 GB。ML 存储卷已加密,因此 SageMaker 无法确定卷上的可用空间量。因此,您可以在更新笔记本实例时增加卷大小,但无法减小卷大小。如果要减小正在使用的 ML 存储卷的大小,请创建一个具有所需大小的新笔记本实例。
只有保存在
/home/ec2-user/SageMaker
文件夹中的文件和数据才会在笔记本实例会话之间持续存在。当笔记本实例停止或重新启动时,保存在此目录之外的文件和数据将被覆盖。每个笔记本实例的 /tmp 目录在实例存储中提供至少 10 GB 的存储空间。实例存储是非持久的临时性块级存储。当实例停止或重新启动时, SageMaker 会删除目录的内容。该临时存储是笔记本实例根卷的一部分。如果笔记本实例使用的实例类型有NVMe支持,则客户可以使用适用于该NVMe实例类型的实例存储卷。对于具有NVMe存储卷的实例,所有实例存储卷将在启动时自动连接到该实例。有关实例类型及其关联NVMe存储量的更多信息,请参阅 Amazon Elastic Compute 云实例类型详情
。 要使附加的NVMe存储卷可用于您的笔记本实例,请完成使实例存储卷在您的实例上可用中的步骤。使用 root 访问权限或使用生命周期配置脚本完成这些步骤。
注意
NVMe实例存储卷不是永久存储。该存储在实例中的使用寿命很短,每次启动带有此存储的实例时都必须重新配置。
-
复制 Jupyter 笔记本示例 — 这些 Python 代码示例展示了使用不同算法和训练数据集的模型训练和托管练习。
要创建 SageMaker 笔记本实例,请执行以下操作:
-
打开 SageMaker 控制台,网址为https://console.aws.amazon.com/sagemaker/
。 -
选择笔记本实例,然后选择创建笔记本实例。
-
在创建笔记本实例页面上提供以下信息:
-
对于笔记本实例名称,请键入您的笔记本实例的名称。
-
对于笔记本实例类型,请选择适合您的使用案例的实例大小。有关支持的实例类型和配额的列表,请参阅 Amazon S SageMaker ervice Quotas。
对于平台标识符,选择要在其上创建笔记本实例的平台类型。此平台类型决定了创建笔记本实例的操作系统和 JupyterLab 版本。有关平台标识符类型的信息,请参阅 Amazon Linux 2 笔记本实例。有关 JupyterLab版本的信息,请参见JupyterLab 版本控制。
-
(可选)其他配置允许高级用户创建可在您创建或启动实例时运行的 Shell 脚本。此脚本称为生命周期配置脚本,可用于设置笔记本的环境或执行其他功能。有关信息,请参阅使用LCC脚本自定义 SageMaker 笔记本实例。
-
(可选)其他配置还允许您指定附加到笔记本实例的 ML 存储卷的大小,以 GB 为单位。您可以选择介于 5 GB 到 16384 GB 之间的大小,以 1 GB 为增量。您可以使用该卷来清理训练数据集,或临时存储验证或其他数据。
-
(可选)对于最低IMDS版本,请从下拉列表中选择一个版本。如果该值设置为 v1,则两个版本都可用于笔记本实例。如果选择了 v2,则IMDSv2只能与笔记本实例一起使用。有关的信息IMDSv2,请参见使用IMDSv2。
注意
从 2022 年 10 月 31 日起, SageMaker 笔记本实例的默认最低IMDS版本IMDSv1将从变为IMDSv2。
从 2023 年 2 月 1 日起,IMDSv1不再可用于创建新的笔记本实例。在此日期之后,您可以创建最低IMDS版本为 2 的笔记本实例。
-
对于IAM角色,请选择账户中具有访问 SageMaker资源的必要权限的现有IAM角色或创建新角色。如果选择 “创建新角色”,则 SageMaker 会创建一个名为的IAM角色
AmazonSageMaker-ExecutionRole-
。 Amazon 托管策略YYYYMMDD
THHmmSS
AmazonSageMakerFullAccess
已附加到该角色。该角色提供的权限允许笔记本实例调用 SageMaker 和 Amazon S3。 -
要获得 root 访问权限,要为所有 notebook 实例用户授予 root 访问权限,请选择 “启用”。要删除用户的根访问权限,请选择 “禁用”。如果您授予 root 用户访问权限,则所有 notebook 实例用户都具有管理员权限,并且可以访问和编辑其上的所有文件。
-
(可选)加密密钥允许您使用 Amazon Key Management Service (Amazon KMS) 密钥,对连接到笔记本实例的 ML 存储卷上的数据进行加密。如果您计划在 ML 存储卷上存储敏感信息,请考虑加密信息。
-
(可选)网络允许您将笔记本实例放在虚拟私有云中(VPC)。A VPC 提供了额外的安全性,并限制了VPC来自外部来源的资源访问权限VPC。有关的更多信息VPCs,请参阅 Amazon VPC 用户指南。
要将您的笔记本实例添加到VPC:
-
选择VPC和一个SubnetId。
-
对于安全组,请选择您的VPC默认安全组。
-
如果您希望笔记本实例能够访问 Internet,请启用直接 Internet 访问。对于直接 Internet 访问,请选择启用。Internet 访问可能会降低笔记本实例的安全性。有关更多信息,请参阅 将中的笔记本实例VPC连接到外部资源。
-
-
(可选)要将 Git 存储库与笔记本实例相关联,请选择一个默认存储库以及最多 3 个额外的存储库。有关更多信息,请参阅 带有 SageMaker 笔记本实例的 Git 存储库。
-
选择创建笔记本实例。
几分钟后,Amazon 就会 SageMaker 启动一个 ML 计算实例(在本例中为笔记本实例),并向其连接一个 ML 存储卷。笔记本实例有一个预配置的 Jupyter 笔记本服务器和一组 Anaconda 库。有关更多信息,请参阅
CreateNotebookInstance
API。
-
-
在控制台中,当笔记本实例的状态为
InService
时,笔记本实例即可使用。选择笔记本名称旁边的打开 Jupyter 以打开经典 Jupyter 控制面板。注意
为了增强您的 Amazon SageMaker 笔记本实例的安全性,所有区域
域名都已在互联网公共后缀列表 () PSLnotebook
.region
.sagemaker.aws中注册。为了进一步提高安全性,我们建议您使用带 __Host-
前缀的 Cookie 来为 SageMaker 笔记本实例的域设置敏感 Cookie。这有助于保护您的域名免受跨站请求伪造企图的侵害()CSRF。有关更多信息,请参阅 m ozilla.org开发者文档网站中的 S et-Cookie 页面。 您可以选择 “打开” JupyterLab 来打开 JupyterLab控制面板。控制面板允许访问您的笔记本实例和包含完整代码演练的示例 SageMaker 笔记本。这些演练展示了如何使用 SageMaker 来执行常见的机器学习任务。有关更多信息,请参阅 访问示例笔记本。有关更多信息,请参阅 控制对 SageMaker 笔记本实例的 root 访问权限。
有关 Jupyter 笔记本的更多信息,请参阅 Jupyter 笔记本
。