本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
微调模型
微调过程在新数据集上训练已经预训练的模型,而无需从头开始训练。这个过程也称为转移学习,可以使用较小数据集和较短的训练时间生成准确模型。如果模型的卡片显示可微调属性设置为是,则可以对其进行微调。
重要
截至 2023 年 11 月 30 日,之前的亚马逊 SageMaker Studio 体验现在被命名为 Amazon St SageMaker udio Classic。以下部分专门介绍如何使用 Studio Classic 应用程序。有关使用更新的 Studio 体验的信息,请参阅 亚马逊 SageMaker Studio。
Studio Classic 仍针对现有工作负载进行维护,但不再可供入门使用。您只能停止或删除现有的 Studio Classic 应用程序,不能创建新的应用程序。我们建议您将工作负载迁移到全新 Studio 体验。
注意
有关在 Studio 中微调 JumpStart 模型的更多信息,请参阅 在 Studio 中微调模型
微调数据来源
在微调模型时,您可以使用默认数据集或选择自己的数据,该数据位于 Amazon S3 存储桶中。
要浏览可供您使用的存储桶,请选择查找 S3 存储桶。这些存储桶受用于设置 Studio Classic 帐户的权限的限制。您也可以通过选择输入 Amazon S3 存储桶位置来指定 Amazon S3 URI。
提示
要了解如何格式化存储桶中的数据,请选择了解更多。模型的描述部分还提供了有关输入和输出的详细信息。
对于文本模型:
-
存储桶必须具有 data.csv 文件。
-
第一列必须是用于类标签的唯一整数。例如,
1、2、3、4、n -
第二列必须是字符串。
-
第二列应包含与模型的类型和语言相符的对应文本。
对于视觉模型:
-
存储桶中的子目录数量必须与类数相同。
-
每个子目录都应包含属于该类的 .jpg 格式的图像。
注意
Amazon S3 存储桶必须与您运行 SageMaker Studio Classic 的Amazon Web Services 区域位置相同,因为 SageMaker AI 不允许跨区域请求。
微调部署配置
p3 系列是用于深度学习训练最快的系列,建议用于微调模型。下图显示了每种实例类型 GPUs 中的数量。还有其他可供选择的选项,包括 p2 和 g4 实例类型。
| 实例类型 | GPUs |
|---|---|
| p3.2xlarge | 1 |
| p3.8xlarge | 4 |
| p3.16xlarge | 8 |
| p3dn.24xlarge | 8 |
超参数
您可以自定义用于微调模型的训练作业的超参数。每个可微调模型的可用超参数因模型而异。有关每个可用超参数的信息,请参阅您在Amazon 中的内置算法和预训练模型 SageMaker中选择的模型的超参数文档。例如,有关可微调图像分类 – TensorFlow 超参数的图像分类- TensorFlow 超参数的详细信息,请参阅。
如果您在不更改超参数的情况下将默认数据集用于文本模型,则会得到几乎相同的模型。对于视觉模型,默认数据集与预训练模型在训练时使用的数据集不同,因此您的模型也会不同。
以下超参数在模型中很常见:
-
纪元 – 一个纪元是遍历整个数据集的一个周期。通过多个时间间隔完成一个批次,通过多个批次最终完成一个纪元。系统运行多个纪元,直到模型的准确性达到可接受的水平,或者说当错误率降至可接受的水平以下时。
-
学习率 – 各个纪元之间应该变化的值的数量。随着模型的优化,其内部权重将被调整,并检查错误率以确定模型是否有所改善。典型的学习率为 0.1 或 0.01,其中 0.01 是一个小得多的调整,可能会导致训练需要很长时间才能收敛,而 0.1 则要大得多,可能会导致训练过度。这是在训练模型时可能会调整的主要超参数之一。请注意,对于文本模型,小得多的学习率(BERT 为 5e-5)可以生成更准确的模型。
-
Batch siz e — 要从数据集中为每个间隔选择的记录数量,然后发送到 GPUs 进行训练。
在图像示例中,您可以向每个 GPU 发送 32 张图像,所以批次大小是 32。如果您选择具有多个 GPU 的实例类型,则批次将除以数量 GPUs。建议的批次大小因数据和所使用的模型而异。例如,针对图像数据进行优化的方式与处理语言数据的方式不同。
在部署配置部分的实例类型图表中,您可以看到 GPUs 每种实例类型的数量。从推荐的标准批次大小开始(例如,对于视觉模型为 32)。然后,将其乘以您选择的实例类型 GPUs 中的数量。例如,如果您使用的是
p3.8xlarge,则这将是 32(批次大小)乘以 4 (GPUs),总共为 128,因为批量大小会根据数量进行调整。 GPUs对于 BERT 这样的文本模型,请尝试从批次大小 64 开始,然后根据需要减少。
训练输出
微调过程完成后, JumpStart 提供有关模型的信息:父模型、训练作业名称、训练作业 ARN、训练时间和输出路径。输出路径是您在 Amazon S3 存储桶中可以找到新模型的位置。文件夹结构使用您提供的模型名称,模型文件位于 /output 子文件夹内,其名称始终为 model.tar.gz。
示例:s3://bucket/model-name/output/model.tar.gz
配置模型训练的默认值
您可以为 IAM 角色和 KMS 密钥等参数配置默认值 VPCs,以便为 JumpStart 模型部署和训练进行预填充。有关更多信息,请参阅为 JumpStart 模型配置默认值。