SageMaker JumpStart - Amazon SageMaker
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

SageMaker JumpStart

重要

要对现有笔记本实例或 Studio 应用程序使用新功能,您必须重新启动笔记本实例或 Studio 应用程序才能获取最新更新。

您可以使用 SageMaker JumpStart,通过辅助一键式操作解决方案、示例笔记本和可部署的预训练模型来了解 SageMaker 的功能和特性。您还可以调整模型并部署它们。

要访问 JumpStart,您必须先启动 SageMaker Studio。JumpStart 功能在 SageMaker 笔记本实例中不可用,并且您无法通过 SageMaker APIs 或 AWS CLI 访问它们。

通过选择 JumpStart 图标 (JumpStart) 打开 ) (在 左侧边栏中)。

file and resource browser (文件和资源浏览器)(左侧窗格)中,您可以找到 JumpStart 选项。从此处,您可以选择浏览 JumpStart 中的解决方案、模型、笔记本和其他资源,也可以查看当前启动的解决方案、终端节点和训练作业。

要查看 JumpStart 必须提供的服务,请选择 JumpStart 图标,然后选择 Browse JumpStart (浏览 AWS IoT)。JumpStart 将在主要工作区域中的新选项卡中打开。在这里,您可以浏览一键式解决方案、模型、示例笔记本、博客和视频教程。

重要

Amazon SageMaker JumpStart 从第三方源提供特定内容。此内容可能受单独许可条款的约束。在下载或使用内容之前,您负责查看和遵守任何适用的许可条款,并确保它们对于您的使用案例是可接受的。

使用JumpStart

在 JumpStart 页面顶部,您可以使用搜索来查找感兴趣的主题。 

您可以使用搜索查找 JumpStart 资源,也可以通过浏览搜索面板后面的每个类别来查找资源:

  • 解决方案 一键式启动将 – 与其他 AWS 服务关联的端到端机器学习解决方案。SageMaker

  • 文本模型 为各种自然语言处理使用案例部署和微调预训练的转换器。–

  • Vision models (视觉模型) – 一键式部署和微调预训练模型以进行图像分类和对象检测。

  • 算法SageMaker 使用这些示例笔记本为各种问题类型训练和部署 – 内置算法。SageMaker

  • 示例笔记本 运行使用 – 功能的示例笔记本,例如 Spot 实例训练和在大量模型类型和使用案例中的试验。SageMaker

  • 博客 从由 Amazon 托管的机器学习专家中读取深入研究和解决方案。–

  • 视频教程 – 观看有关 SageMaker 功能和机器学习使用案例的视频教程(来自由 Amazon 托管的机器学习专家)。

Solutions

选择解决方案时,JumpStart 会提供解决方案的描述和 Launch (启动) 按钮。没有配置选项。解决方案启动运行解决方案所需的所有资源,包括训练和模型托管实例。启动解决方案后,JumpStart 会提供一个指向笔记本的链接,您可以用来探索解决方案的功能。JumpStart您可以通过选择 Delete solution resources (删除解决方案资源) 来删除解决方案的所有资源。

Models

模型可用于直接从 JumpStart 快速部署。 您还可以微调其中一些模型。浏览这些模型时,您可以滚动到 deploy,将调整部分调整到 Description (描述) 部分。在 Description (描述) 部分中,您可以了解有关模型的更多信息,包括模型可以使用模型执行哪些操作、所需的输入和输出类型,以及如果您要使用迁移学习来优化模型,则需要哪些数据类型。

部署模型

当您从 JumpStart 部署模型时,SageMaker 托管模型并部署可用于推理的终端节点。JumpStart 还提供了一个示例笔记本,可用于在部署模型后访问模型。

模型部署配置

选择模型后,Deploy Model (部署模型) 窗格将打开。选择 Deployment Configuration (部署配置) 以配置您的模型部署。

用于部署模型的默认 Machine Type (机器类型) 取决于模型。计算机类型是运行训练作业的硬件。在以下示例中,ml.m5.large 实例是此特定 BERT 模型的默认值。

您还可以更改 Endpoint Name (终端节点名称)

微调模型

微调在新数据集上训练预训练的模型,而无需从头开始训练。此过程也称为迁移学习,可以生成具有较少数据集和较少训练时间的准确模型。

微调数据源

当您优化模型时,您可以使用默认数据集或选择您自己的数据(位于 S3 存储桶中)。

要浏览可供您使用的存储桶,请选择 Find S3 bucket (查找 S3 存储桶)。这些存储桶受用于设置 Studio 账户的权限的限制。您还可以通过选择 Enter S3 bucket location (输入 S3 存储桶位置) 来指定 S3 URI。

提示

要了解如何设置 存储桶中的数据的格式,请选择 Learn more。此外,模型的描述部分还包含有关输入和输出的详细信息。 

对于文本模型:

  • 存储桶必须具有 data.csv 文件。

  • 第一列必须是类标签的唯一整数。例如:1、2、3、4、n.

  • 第二列必须是字符串。

  • 第二列应具有与模型的类型和语言匹配的相应文本。 

对于视觉模型:

  • 存储桶必须具有与类数相同数量的子目录。

  • 每个子目录都应包含属于该类的 .jpg 格式的图像。

注意

S3 存储桶必须位于运行 SageMaker Studio 的同一 AWS 区域中,因为 SageMaker 不允许跨区域请求。

微调部署配置

p3 系列推荐作为深度学习训练的最快系列,推荐用于微调模型。下图显示了每种实例类型中的 GPUs 的数量。还有其他可用选项可供选择,包括 p2 和 g4 实例类型。

实例类型 GPUs
p3.2xlarge 1
p3.8xlarge 4
p3.16xlarge 8
p3dn.24xlarge 8

Hyperparameters

您可以自定义用于优化模型的训练作业超参数。 

如果在不更改超参数的情况下将默认数据集用于文本模型,则会得到几乎相同的模型。对于视觉模型,默认数据集与用于训练预训练模型的数据集不同,因此您的模型因此会有所不同。

您有以下超参数选项:

  • 纪元 一个纪元是整个数据集的一个周期。–多个间隔完成一个批次,多个批次最终完成一个纪元。系统运行多个纪元,直到模型的准确性达到可接受的级别,换句话说,错误率下降到可接受的级别以下。

  • Learning rate (学习速率) – 应在纪元之间更改值的数量。随着模型的优化,将对该模型的内部权重进行轻移,并检查错误率以查看模型是否进行了改进。典型的学习速率为 0.1 或 0.01,其中 0.01 是大幅较小的调整,可能会导致训练需要很长时间才能收敛,而 0.1 的值大得多,并且可能导致训练覆盖。它是一个主要超参数,您可以对其进行调整以训练模型。请注意,对于文本模型,较低的学习率(对于 BERT 为 5e-5)可能会生成更准确的模型。

  • 批处理大小 –为每个间隔选择的数据集中要发送到训练中可用的 GPUs 的记录数。在图像示例中,您可能会为每个 GPU 发送 32 个图像,因此,32 将是您的批处理大小。如果您选择具有多个 GPU 的实例类型,则批次将除以 GPUs 的数量。 推荐的批处理大小因您所使用的数据和模型而异。例如,图像数据的优化方式与处理语言数据的方式不同。在部署配置部分的实例类型图中,您可以看到每个实例类型的 GPUs 数。从标准建议批处理大小开始(例如,对于视觉模型为 32)。然后,将此值乘以所选实例类型中的 GPUs 数量。例如,如果您使用的是 p3.8xlarge,则此值为 32(批处理大小)*4(GPU),根据 GPUs 的数量调整批处理大小时,合计为 128。 对于 BERT 之类的文本模型,请尝试从批处理大小为 64 开始,然后根据需要进行缩减。

训练输出

优化过程完成后,JumpStart 会提供有关模型的信息:父模型、训练作业名称、训练作业 Amazon 资源名称 (ARN)、训练时间和输出路径。输出路径是您可以在 S3 存储桶中找到您的新模型的位置。该文件夹结构使用您提供的模型名称,模型文件位于 /output 子文件夹中,并且始终名为 model.tar.gz。 

示例:s3://bucket/model-name/output/model.tar.gz

后续步骤

要深入了解 Studio 功能,请执行以下操作: