与 Amazon SageMaker 一起使用拥抱脸 - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

与 Amazon SageMaker 一起使用拥抱脸

Amazon SageMaker 使客户能够在 SageMaker 上使用用于自然语言处理的拥抱人脸模型 (NLP) 来训练、微调和运行推理。你可以使用 Hugge Face 进行训练和推理。这个功能可以通过开发 Hugge Face 获得AmazonDeep Learning 容器. 这些容器包括 Hugging Face 变形器、Tokenizer 和数据集库,它们允许您将这些资源用于训练和推理工作。有关可用的 Deep Learning Containers 映像的列表,请参阅可用的 Deep Learning Containers 映像. 这些 Deep Learning Containers 映像通过安全补丁进行维护和定期更新。

要将拥抱面部 Deep Learning Containers 与 SageMaker Python SDK 结合使用进行培训,请参阅拥抱面孔 SageMaker 估算器. 使用拥抱人脸估算器,您可以像使用任何其他 SageMaker 估计器一样使用拥抱脸模型。但是,使用 SageMaker Python SDK 是可选的。您还可以通过Amazon CLI和Amazon SDK for Python (Boto3).

有关 Hugging Face 及其中提供的模型的更多信息,请参阅拥抱 Face 文档.

培训

要进行训练,您可以使用 Hugging Face 中可用的数千种模型中的任意一种,并通过额外的培训来根据您的具体使用案例对它们进行微调。使用 SageMaker,您可以使用标准培训或利用SageMaker 分布式数据和模型并行培训. 与其他使用自定义代码的 SageMaker 培训作业一样,您可以通过将指标定义传递给 SageMaker Python SDK 来捕获自己的指标,如中所示定义训练指标(SageMaker Python 开发工具包). 然后可以通过以下方式访问捕获CloudWatch而且作为熊猫DataFrame通过培训职位分析方法。一旦你的模型经过训练和微调,你可以像任何其他模型一样使用它来运行推理作业。

如何使用拥抱人脸估算器进行训练

您可以使用 SageMaker Python SDK 实现拥抱人脸估算器来进行培训作业。SageMaker Python SDK 是一个开源库,用于在 SageMaker 上训练和部署机器学习模型。有关 Hide Face 的更多信息,请参阅SageMaker Python SDK 文档。

借助 SageMaker Python 开发工具包,您可以在以下环境中使用 Hide Face 开发工具包运行训练作业:

  • SageMaker Studio:Amazon SageMaker Studio 是第一个用于机器学习 (ML) 的完全集成开发环境 (IDE)。SageMaker Studio 提供了一个基于 Web 的单一可视化界面,您可以在其中执行准备、构建、训练和调整、部署和管理模型所需的所有机器学习开发步骤。有关在 Studio 中使用 Jupyter 笔记本的信息,请参阅使用 Amazon SageMaker Studio 笔记本.

  • SageMaker 笔记本实例:Amazon SageMaker 笔记本实例是一个运行 Jupyter 笔记本应用程序的机器学习 (ML) 计算实例。借助此应用程序,您可以在笔记本实例中运行 Jupyter Notebook,以准备和处理数据,编写代码以训练模型,部署模型到 SageMaker 托管,以及测试和验证模型,而无需调试器、模型监控和基于 Web 的 IDE 等 SageMaker Studio 功能。

  • 截图等):如果你有连接Amazon并拥有适当的 SageMaker 权限,您可以在本地使用 SageMaker Python SDK 为 SageMaker 中的 Hugge Face 启动远程训练和推理作业Amazon. 这适用于您的本地计算机,以及其他Amazon具有连接 SageMaker Python SDK 和适当权限的服务。

推理

为了进行推理,您可以使用训练有素的拥抱人脸模型或其中一个预先训练的 Hugging Face 模型来部署 SageMaker 的推理作业。通过这种协作,您只需要一行代码即可使用 SageMaker 部署训练过的模型和预训练模型。您还可以运行推理作业,而无需编写任何自定义推理代码。使用自定义推理代码,您可以通过提供自己的 Python 脚本来自定义推理逻辑。

如何使用 Hugging Face Deep Learning Containers 部署推理作业

您有两个选项可以使用 SageMaker 运行推理。你可以使用你训练的模型来运行推理,也可以部署预先训练的 Hugging Face 模型。

  • 使用训练有素的模型运行推理:用自己训练的模型运行推理有两种选择。您可以使用使用 SageMaker Hugging Face Deep Learning Containers 使用现有的拥抱人脸模型训练的模型运行推理,也可以自带现有的拥抱人脸模型并使用 SageMaker 进行部署。当您使用使用 SageMaker Hugge Face Estemator 训练的模型运行推理时,您可以在训练完成后立即部署模型,也可以将训练过的模型上传到 Amazon S3 存储桶,然后在以后运行推理时将其摄取。如果您自带现有的 Hugging Face 模型,则必须将训练过的模型上传到 Amazon S3 存储桶,然后在运行推理时摄取该存储桶,如中所示部署你的拥抱脸变压器作为推理示例.

  • 使用预先训练的 HuggingFace 模型运行推理:您可以使用成千上万个预训练的 HugGING Face 模型之一来运行推理工作,而无需额外的培训。要运行推理,您可以从列表中选择预训练的模型拥抱 Face 模型,如中所述部署预先训练的拥抱脸变压器以获取推理示例.

您需要做什么?

Hugging Face 笔记本存储库中的以下 Jupyter 笔记本说明了如何在各种使用案例中将 Hugging Face Deep Learning Containers 与 SageMaker 结合使用。

我想在 PyTorch 中使用 SageMaker 中的 Hugge Face 训练和部署文本分类模型。

有关示例 Jupyter 笔记本,请参阅PyTorch 入门.

我想在 SageMaker 中使用 TensorFlow 中的 Hugge Face 训练和部署文本分类模型。

有关示例 Jupyter 笔记本,请参阅TensorFlow 入门示例.

我想使用 Hugging Face 和 SageMaker 分布式运行具有数据并行性的分布式训练。

有关示例 Jupyter 笔记本,请参阅分布式训练示例.

我想使用 Hugging Face 和 SageMaker 分布式运行具有模型并行性的分布式训练。

有关示例 Jupyter 笔记本,请参阅模型并行性示例.

我想要在 SageMaker 中使用 Hugging Face 训练和部署模型。

有关示例 Jupyter 笔记本,请参阅Spot 实例示例.

在 SageMaker 中使用 Hugge Face 训练文本分类模型时,我想捕获自定义指标并使用 SageMaker 检查点。

有关示例 Jupyter 笔记本,请参阅使用自定义指标训练示例.

我想在 SageMaker 中使用 Hugge Face 训练分布式问答 TensorFlow 模型。

有关示例 Jupyter 笔记本,请参阅分布式 TensorFlow 训练示例.

我想要在 SageMaker 中使用 Hugging Face 训练分布式总结模型。

有关示例 Jupyter 笔记本,请参阅分布式总结培训示例.

我想在 SageMaker 中使用 Hugge Face 训练图像分类模型。

有关示例 Jupyter 笔记本,请参阅视觉变压器培训示例.

我想在 SageMaker 中部署我训练有素的拥抱脸模型。

有关示例 Jupyter 笔记本,请参阅部署你的拥抱脸变压器作为推理示例.

我想在 SageMaker 中部署预先训练的拥抱脸模型。

有关示例 Jupyter 笔记本,请参阅部署预先训练的拥抱脸变压器以获取推理示例.