本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 AWS Clean Rooms ML 中使用增量培训
先决条件:
-
而且 AWS 账户 可以访问 AWS Clean Rooms
-
合作中现有的经过训练的模型
-
用于增量训练的新数据集或更新的数据集
-
在协作中创建和管理 ML 模型的适当权限
-
熟悉现有模型的超参数和配置
通过增量训练,您可以使用现有模型的构件和更新的数据集来训练新模型。增量训练可节省时间和资源。
使用增量训练可以:
-
使用扩展数据集训练新模型,该数据集具有先前训练中未考虑的潜在模式。
-
训练模型的多个变体,要么使用不同的超参数,要么使用不同的数据集。
- Console
-
运行增量训练作业(控制台)
-
登录 AWS 管理控制台 并打开 AWS Clean Rooms 控制台,地址为https://console.aws.amazon.com/cleanrooms
。 -
在左侧导航窗格中,选择协作。
-
在协作页面上,选择要用于增量训练的模型工件所在的协作。
-
协作打开后,选择 ML 模型选项卡。
-
在 “自定义 ML 模型” 下的 “训练模型” 部分中,选择要增量训练的训练模型旁边的单选按钮。
-
在 “概述” 页面的 “版本” 下,
-
选择要增量训练的训练模型旁边的单选按钮。
-
从版本中选择 “训练” 。
-
-
在 “从版本创建训练模型” 页面上,对于经过训练的模型版本,选择版本。
基本模型版本是自动选择的。如果存在其他版本,则可以更改此版本。
-
有关经过训练的模型的详细信息,请输入以下内容:
-
在 “名称” 中,输入协作中模型的唯一名称。
-
(可选)在描述中,输入训练模型的描述。
-
对于训练数据输入模式,请选择以下选项之一:
-
如果您的数据集较小,可以容纳 ML 存储量,并且您更喜欢使用传统文件系统访问训练脚本,请选择 “文件”。
-
对于大型数据集,选择 Pipe 可以直接从 S3 流式传输数据,从而无需将所有内容下载到磁盘,这样可以提高训练速度并降低存储需求。
-
FastFile如果要将从 S3 流式传输的优势与文件系统访问相结合,尤其是顺序读取数据或处理较少文件以缩短启动时间时,请选择此选项。
-
-
在增量训练频道名称中,输入增量训练频道的名称
注意
如果您在没有版本 ID 的情况下指定增量训练频道名称,则系统将使用基本模型进行增量训练。
-
-
要了解机器学习输入通道的详细信息,请执行以下操作:
-
对于 ML 输入通道,指定向模型算法提供数据的 ML 输入通道。
要添加另一个通道,请选择添加另一个 ML 输入通道。您最多可以添加 19 个额外 ML 输入通道。
-
对于频道名称,输入 ML 输入通道的名称。
-
对于 Amazon S3 数据分配类型,请选择以下选项之一:
-
选择 “完全复制”,为每个训练实例提供数据集的完整副本。当您的数据集足够小以容纳内存时,或者当每个实例都需要访问所有数据时,这种方法最有效。
-
选择 “按 S3 密钥分片”,根据 S3 密钥将数据集划分到训练实例中。每个实例接收 S3 对象总 1/n数的大约,其中 “n” 是实例的数量。这最适合您想要并行处理的大型数据集。
注意
选择分布类型时,请考虑您的数据集大小和训练要求。完全复制可提供完整的数据访问权限,但需要更多存储空间,而 Sharded by S3 密钥支持对大型数据集进行分布式处理。
-
-
-
对于最长训练持续时间,请选择您想要训练模型的最大时间。
-
对于超参数,请指定任何特定于算法的参数及其预期值。超参数特定于正在训练的模型,用于微调模型训练。
-
对于环境变量,指定任何特定于算法的变量及其预期值。环境变量在 Docker 容器中设置。
-
对于加密,要使用自定义 AWS KMS key,请选中使用自定义 KMS 密钥加密密钥复选框。
-
对于 EC2 资源配置,请指定有关用于模型训练的计算资源的信息。
-
对于实例类型,选择要运行的实例类型。
-
在 “实例数” 中,输入实例数。
-
对于以 GB 为单位的卷大小,请输入 ML 存储卷大小。
-
-
选择 “从版本创建经过训练的模型”。
-
- API
-
运行增量训练作业 (API)
使用您的特定参数运行以下代码:
import boto3 acr_ml_client= boto3.client('cleanroomsml') acr_ml_client.create_trained_model( membershipIdentifier= 'membership_id', configuredModelAlgorithmAssociationArn = 'arn:aws:cleanrooms-ml:region:account:membership/membershipIdentifier/configured-model-algorithm-association/identifier', name='trained_model_name', resourceConfig={ 'instanceType': 'ml.m5.xlarge', 'volumeSizeInGB': 1 }, incrementalTrainingDataChannels=[ { 'trainedModelArn': trained_model_arn, 'channelName': 'channel_name' }, ] dataChannels=[ { 'mlInputChannelArn': channel_arn_1, 'channelName': 'channel_name' }, { 'mlInputChannelArn': channel_arn_2, 'channelName': 'channel_name' } ] )注意
限制:总共最多 20 个频道(包括
dataChannels和incrementalTrainingDataChannels)。
注意
创建训练模型后,您无法对其进行编辑。要进行更改,请删除经过训练的模型并创建一个新模型。