## 视频
<video src="https://dev-media.amazoncloud.cn/30-LibaiGenerate/31-LiBaiRebrandingVideo/AIM326-Large_model_training_on_AWS_Deep_Learning_AMIs___PyTorch__ft__Pinterest-LBrebrandingWCaptionCN.mp4" class="bytemdVideo" controls="controls"></video>
## 导读
加入本论坛,深入了解用于在 Pinterest 训练大型模型的基础架构。它涵盖了训练硬件、计算编排和[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)应用程序开发 SDK,以及基础架构选择如何加速开发和提高模型训练效率。了解 Pinterest 如何集成 [Amazon EC2 ](https://aws.amazon.com/cn/ec2/?trk=cndc-detail)UltraClusters 和亚马逊云科技深度学习 AMI 等亚马逊云科技服务,以降低[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)基础架构的总体拥有成本。
## 演讲精华
<font color = "grey">以下是小编为您整理的本次演讲的精华,共1500字,阅读时间大约是8分钟。如果您想进一步了解演讲内容或者观看演讲全文,请观看演讲完整视频或者下面的演讲原文。</font>
本次演讲由热情洋溢的Rum Paul先生主持,主题是关于利用深度学习和亚马逊云科技的大型模型培训。主讲嘉宾来自Pinterest公司。作为亚马逊云科技的高级产品经理,他与包括Kartik(Pinterest公司的ML平台工程经理)和Zlatan(主要解决方案架构师,与Kartik和Rum紧密合作)在内的其他演讲者共同探讨这一主题。
Rum轻松地指出,随着他们的着装从商务休闲到智能休闲再到正装逐渐升级,内容将变得越来越技术化。接着,他简要概述了活动流程——他将讨论大型模型培训所面临的挑战,Kartik将介绍Pinterest的大型模型培训方法和业务影响,而Zlatan将概述为Pinterest实施的技术解决方案架构。最后,他们将总结关键收获并回答观众问题。
在谈到大型模型时,Rum解释称它们已经无处不在,能够生成电影、文本、音乐、代码、聊天机器人等领域的内容。我们正处于人工智能革命的边缘,客户们每天都在推动技术前沿以解决更有趣的日常使用案例。然而,训练大型模型也面临着巨大的挑战。
首先,大型模型需要大量的计算和存储资源。目前面临的一个主要行业问题是严重缺乏计算资源,尤其是用于培训和部署的GPU。尽管亚马逊云科技正在对用于培训和托管的硅进行重大投资,以帮助缓解这种短缺,但在业界仍然严重缺乏GPU芯片。部分解决方法可以提高现有GPU的效率以最大化利用率。
其次,大型模型需要大量数据(通常是petabytes)来准确训练。这引发了关于经济高效的存储、数据访问限制等问题。例如,训练一个单一模型可能需要petabytes的数据,这需要创造性的解决方案来以经济高效的方式存储、访问和标记这些数据。
在训练过程中,模型可能会遇到不稳定的情况,例如由于GPU内存不足而导致的错误和崩溃。因此,为了确保模型能够在合理的时间内正确收敛,需要对系统进行定期的健康检查和故障恢复。如果没有一个能够检测并从不可避免的硬件故障中恢复的健壮系统,可能会导致数天甚至数周的训练时间浪费。
此外,管理大量的计算资源、内存、存储等基础设施也是一个巨大的挑战。有效分配资源并在适当的时间内准确完成模型训练是一个持续性的难题。像亚马逊云科技提供的技术产品,如卡提克所提到的技术,旨在简化这一协调过程。
接下来,鲁姆简要介绍了Pinterest广泛使用的两种亚马逊云科技的关键技术——深度学习AMDs(DLAMDs)和深度学习容器(DLCs)以及亚马逊云科技Batch。DLAMDs和DLCs是为深度学习工作负载设计的预配置、安全且优化的Amazon Machine Images,这为客户节省了大量的时间,无需从头开始设置用于深度学习的基础设施。
亚马逊云科技Batch是一种传统的用于高性能计算的全托管批处理服务。然而,正如我们将要讨论的,它也能抽象基础设施复杂性,跨集群协调分布式模型训练。
总的来说,这些技术和服务有助于Pinterest更有效地管理和部署其庞大的[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)基础设施,从而实现了其个性化推荐的业务目标。
他将其[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)模型主要分为两类:推荐模型和内容理解模型。推荐模型采用变压器架构,每秒在推理过程中对数十亿个项目进行评分,以提供个性化的内容推荐。而内容理解模型则需要对整个Pin库进行批量推理评分,以识别诸如安全性、图像内容等信息。
卡提克介绍了他们的[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)培训基础设施的三大支柱:[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)应用开发、计算协调和培训硬件。他们使用名为MLN的内部软件开发工具包(SDK)来简化数据加载、指标、实验跟踪、集群部署等方面的抽象。这使得他们的200多名[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)工程师能够专注于模型实现细节,而无需关注基础设施。模型在单个Python存储库中开发,从而实现了方法的重用。通过持续集成和持续部署(CI/CD)集成,测试框架得到了升级。
他们的[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)堆栈理念是分离用户拥有的训练应用程序与平台拥有的一级下级软件/硬件,以实现标准化和提高效率。例如,在他们的大型团队中,标准化PyTorch版本的使用使得关键升级的推广速度提高了3倍。
在计算协调方面,他们的培训计算平台提供了Kubernetes和亚马逊云科技Batch后台。该平台支持每个团队的资源配额、作业管理、超参数调整、指标收集以及跨团队的智能调度,以优化资源使用。此外,该平台还收集完整的作业数据以进行离线优化和容量规划。
在培训硬件方面,Pinterest利用多种GPU实例类型,如p4d到g5,以平衡成本和性能。他们的开发、服务和培训团队共享深度学习环境,降低了总拥有成本并加速了PyTorch的部署。
卡提克随后展示了两个案例研究,展示了如何为他们推荐和内容理解模型扩展分布式培训。他们的推荐模型遵循行业标准,如采用密集和稀疏特征的变压器架构,在大量的数据集上进行训练,多达用户互动数据的30天。面临的挑战包括:
1. 高达PB规模的大型培训数据
2. 在16-32个GPU上分片嵌入表
3. 在模型训练前的迭代数据预处理
解决方案包括:
1. 使用PyTorch的分布式数据并行训练来跨数据集扩展
Amazon Web Services (亚马逊云科技) is leveraging its UltraClusters to provide low-latency network connections between GPUs for training large-scale models with up to 7 billion parameters using full sharding data parallelism, resulting in acceleration of 2x to 2.5x. This is achieved through the use of 亚马逊云科技's internal 400Gbps bandwidth and GPU direct RDMA functionality across multiple nodes."
"In addition, 亚马逊云科技's Ray technology enables a twofold speedup by decoupling data preprocessing from training. Due to the immense size of these models, they cannot be run on a single GPU; therefore, 亚马逊云科技's UltraClusters are used to facilitate multi-node training, taking advantage of their 400Gbps internal bandwidth and GPU direct RDMA functionality. This results in a 2x to 2.5x increase in training speed for large models."
"In one case study, they focused on accelerating the upgrade of the machine learning stack to take advantage of the latest advancements. Upgrading PyTorch involved complex dependencies across drives, CUDA, and the framework. Prior to the upgrade, separate development, service, and training images made coordinating upgrades to PyTorch, CUDA, and drives time-consuming and complex. Through the use of shared DLAMIs, deployment speed for PyTorch was increased by threefold, highlighting the importance of standardization for speed."
"During his summary, Kartik touched on key perspectives on standardized machine learning stacks, distributed training techniques, and collaboration with Amazon Web Services to reduce overall ownership costs and accelerate model training for faster experimentation. He then turned the floor over to Zlatan to discuss the implementation of Amazon Web Services solutions architecture and service improvements to meet Pinterest's needs."
"Zlatan emphasized the importance of close collaboration with the Amazon Web Services service team to build customer-centric products based on user feedback. The Batch service, originally designed for simple job workflow tasks, has been expanded to meet Pinterest's ML orchestration requirements, such as multi-node coordination, targeted at heterogeneous hardware, and layered reservation with minimum resources guaranteed to each team. Through customized optimization, job latency was reduced by twofold, throughput increased twofold, and scalability improved by 55x, all while improving reliability."
"Dedicated UltraCluster capacity reservation ensures high-performance network support for distributed training. On-demand capacity reservation allows for dynamic addition and reservation of capacity as needed. This architecture abstracts infrastructure complexity, providing advanced orchestration for end users. In conclusion, Zlatan highlighted key perspectives on machine learning-specific features, reduced ownership costs, optimized orchestration, and accelerated model training. Close collaboration with the Amazon Web Services engineering team will continue to directly impact multiple team roadmaps, listening to customer needs.
在总结中,演讲者详尽地阐述了Pinterest如何通过运用亚马逊云科技的服务,如DLAMIs、Batch和UltraClusters,来构建高效且经济实惠的[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)基础设施。他们的解决方案展示了一种创新的方法,用于扩展分布式训练、加快[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)堆栈的升级速度以及优化其200多名[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)工程师的用户体验。得益于与亚马逊云科技的紧密合作,Pinterest得以专注于开发满足客户需求的高性能[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)平台,从而能够运用诸如图神经网络和巨型变压器模型等先进技术。
**下面是一些演讲现场的精彩瞬间:**
本演讲将探讨Pinterest在大型模型训练方面所采用的方法,包括其目标、架构及对业务的影响。
![](https://d1trpeugzwbig5.cloudfront.net/AIM326-Large_model_training_on_AWS_Deep_Learning_AMIs___PyTorch__ft__Pinterest/images/rebranded/AIM326-Large_model_training_on_AWS_Deep_Learning_AMIs___PyTorch__ft__Pinterest_0.png)
Pinterest与Karti共同采用了独特的策略,利用亚马逊云科技的Batch进行模型训练。
![](https://d1trpeugzwbig5.cloudfront.net/AIM326-Large_model_training_on_AWS_Deep_Learning_AMIs___PyTorch__ft__Pinterest/images/rebranded/AIM326-Large_model_training_on_AWS_Deep_Learning_AMIs___PyTorch__ft__Pinterest_1.png)
通过这种方式,Pinterest能够利用大规模的[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)技术来理解图像、推荐内容并提供卓越的用户体验。
![](https://d1trpeugzwbig5.cloudfront.net/AIM326-Large_model_training_on_AWS_Deep_Learning_AMIs___PyTorch__ft__Pinterest/images/rebranded/AIM326-Large_model_training_on_AWS_Deep_Learning_AMIs___PyTorch__ft__Pinterest_2.png)
为了实现异构硬件资源的优化,Pinterest希望亚马逊云科技能够将作业提交视为跨多个节点的统一概念,而非独立的过程。
![](https://d1trpeugzwbig5.cloudfront.net/AIM326-Large_model_training_on_AWS_Deep_Learning_AMIs___PyTorch__ft__Pinterest/images/rebranded/AIM326-Large_model_training_on_AWS_Deep_Learning_AMIs___PyTorch__ft__Pinterest_3.png)
这样,可以更有效地利用资源。
![](https://d1trpeugzwbig5.cloudfront.net/AIM326-Large_model_training_on_AWS_Deep_Learning_AMIs___PyTorch__ft__Pinterest/images/rebranded/AIM326-Large_model_training_on_AWS_Deep_Learning_AMIs___PyTorch__ft__Pinterest_4.png)
## 总结
此次演讲探讨了Pinterest如何通过运用亚马逊云科技提供的服务,如深度学习镜像、容器和批量处理等技术,高效地进行大规模深度学习模型的训练。Pinterest在很大程度上依赖于[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)来实现推荐和内容理解的功能。然而,他们需要面对训练具有数十亿参数的模型这一挑战,这些模型并不适合单个GPU。通过采用分布式和分片并行训练等策略,可以有效扩展训练规模。此外,通过优化GPU的直接RDMA网络,可以提高系统吞吐量。基于深度学习镜像和标准化的容器,可以降低工程师的工作负担。借助亚马逊云科技的批量处理功能(如公平共享调度和动态环境),可以简化协同工作的过程。Ultra集群为大型模型训练提供了高速的GPU间互连。Pinterest已经看到了一些积极的变化,例如模型训练速度提高了2-3倍,PyTorch升级速度加快,整体拥有成本得到降低。演讲强调了一点,那就是与亚马逊云科技的合作如何帮助其满足[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)培训的需求。
## 演讲原文
## 想了解更多精彩完整内容吗?立即访问re:Invent 官网中文网站!
[2023亚马逊云科技re:Invent全球大会 - 官方网站](https://webinar.amazoncloud.cn/reInvent2023/?s=8739&smid=19458 "2023亚马逊云科技re:Invent全球大会 - 官方网站")
[点击此处](https://aws.amazon.com/cn/new/?trk=6dd7cc20-6afa-4abf-9359-2d6976ff9600&trk=cndc-detail "点击此处"),一键获取亚马逊云科技全球最新产品/服务资讯!
[点击此处](https://www.amazonaws.cn/new/?trk=2ab098aa-0793-48b1-85e6-a9d261bd8cd4&trk=cndc-detail "点击此处"),一键获取亚马逊云科技中国区最新产品/服务资讯!
## 即刻注册亚马逊云科技账户,开启云端之旅!
[【免费】亚马逊云科技“100 余种核心云服务产品免费试用”](https://aws.amazon.com/cn/campaigns/freecenter/?trk=f079813d-3a13-4a50-b67b-e31d930f36a4&sc_channel=el&trk=cndc-detail "【免费】亚马逊云科技“100 余种核心云服务产品免费试用“")
[【免费】亚马逊云科技中国区“40 余种核心云服务产品免费试用”](https://www.amazonaws.cn/campaign/CloudService/?trk=2cdb6245-f491-42bc-b931-c1693fe92be1&sc_channel=el&trk=cndc-detail "【免费】亚马逊云科技中国区“40 余种核心云服务产品免费试用“")