大语言模型概述(三):基于亚马逊云科技的研究分析与实践

news2024/12/22 15:00:42

上期介绍了基于亚马逊云科技的大语言模型相关研究方向,以及大语言模型的训练和构建优化。本期将介绍大语言模型训练在亚马逊云科技上的最佳实践。

大语言模型训练在亚马逊云科技上的最佳实践

本章节内容,将重点关注大语言模型在亚马逊云科技上的最佳训练实践。大致分为五大方面:

计算(Compute) — Amazon SageMaker Training

存储(Storage) — 可以通过两种方式完成数据加载和检查点(checkpointing)配置:Amazon FSx Lustre 文件系统或Amazon S3

并行化(Parallelism)— 选择分布式训练库对于正确使用 GPU 至关重要。我们建议使用经过云优化的库,例如 SageMaker 分片数据并行处理,但自管理库和开源库也可以使用

联网(Networking) — 确保 EFA 和 NVIDA的 GPUDirectRDMA已启用,以实现快速的机器间通信

弹性(Resiliency) — 在大规模情况下,可能会发生硬件故障。我们建议定期写入检查点(checkpointing)

以下我们会简单介绍下大语言模型训练并行化(Parallelism)在亚马逊云科技上的最佳实践。

大语言模型训练的并行化(Training Parallelism)

大语言模型通常有数十到数千亿个参数,这使得它们无法容纳在单个 GPU 卡中。大语言模型领域目前已有多个训练分布式计算的开源库,例如:FSDP、DeepSpeed 和 Megatron。你可以在 Amazon SageMaker Training 中直接运行这些库,也可以使用 Amazon SageMaker 分布式训练库,这些库已经针对亚马逊云进行了优化,可提供更简单的开发人员体验。

因此,在大语言模型领域的开发人员,在亚马逊云科技上目前有两种选择:

在 Amazon SageMaker 上使用优化过的分布式库进行分布式训练;

自己来管理分布式训练。

以下将概述如何在 Amazon SageMaker 上,使用优化过的分布式库进行分布式训练。

为了提供更好的分布式训练性能和可用性,Amazon SageMaker Training 提出了几种专有扩展来扩展 TensorFlow 和 PyTorch 训练代码。在真实场景里,大语言模型的训练通常以多维度并行(3D-parallelism)的方式在进行:

数据并行(data parallelism):可拆分训练小批次并将其馈送到大语言模型的多个相同副本,以提高处理速度

流水线并行(pipeline parallelism):将大语言模型的各个层归因于不同的 GPU 甚至实例,以便将大语言模型的大小扩展到单个 GPU 和单个服务器以外

Tensor 并行(tensor parallelism):将单个层拆分为多个 GPU,通常位于同一服务器内,以将单个层扩展到超过单个 GPU 的大小

以下示例图,展示了如何在具有 8*k*3 个 GPU(每台服务器 8 个 GPU)的 k*3 服务器集群上训练 6 层模型。数据并行度为 k,流水线并行度为 6,张量并行度为 4。集群中的每个 GPU 包含模型层的四分之一,完整模型分为三台服务器(总共 24 个 GPU)。

其中和大语言模型特别相关的分布式实践包括:

Amazon SageMaker 分布式模型并行 — 该库使用图形分区生成针对速度或内存进行了优化的智能大语言模型分区。Amazon SageMaker 分布式模型并行提供了最新、最好的大语言模型训练优化,包括数据并行、流水线并行、张量并行、优化器状态分片、激活检查点和卸载。

Amazon SageMaker 分片数据并行——在 MiCS: Near-linear Scaling for Training Gigantic Model on Public Cloud 论文中,引入了一种新的模型并行策略,该策略仅在数据并行组上划分模型,而不是整个集群。借助 MiCS,亚马逊云科技的科学家们能够在每个 GPU 上实现 176 万亿次浮点运算(理论峰值的 56.4%),从而在 EC2 P4de 实例上训练 210 层、1.06 万亿个参数的大语言模型。作为 Amazon SageMaker 并行共享数据,MIC 现已能够向 Amazon SageMaker Training 客户提供。

Amazon SageMaker 分布式训练库提供高性能和更简单的开发者体验。开发人员无需编写和维护自定义的并行进程启动器,或使用特定于框架的启动工具,因为并行启动器已经内置在 Amazon SageMaker 的任务启动 SDK 之中。

与传统分布式训练相比,大语言模型的微调通常不仅要求数据并行,数据并行和模型并行需要同时进行。Amazon SageMaker Model Parallelism 在易用性和稳定性 (OOM) 上与开源自建方案(如 DeepSpeed)相比具有核心竞争优势。对于基于哪些大语言模型进行具体微调、具体最佳实践等技术细节,你还可以咨询亚马逊云科技的解决方案架构师团队,获得更进一步的技术支持和专业建议。

总结

本期文章我们一起探讨大语言模型的发展历史、语料来源、数据预处理流程策略、训练使用的网络架构、最新研究方向分析(LLaMA、PaLM-E 等),以及在亚马逊云科技上进行大语言模型训练的一些最佳落地实践等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1246114.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据结构算法-贪心算法

引言 贪心:人只要有 “需求“ ,都会有有点“贪“, 这种“贪“是一种选择,或者“”取舍“ RTS(即时战略)游戏: 帝国时代里 首先确保拥有足够的人口 足够的粮食,足够的战略资源 足够的…

VMware vShere download

VMware 前言 VMware vSphere 是 VMware 的虚拟化平台,可将数据中心转换为包括 CPU、存储和网络资源的聚合计算基础架构。vSphere 将这些基础架构作为一个统一的运行环境进行管理,并为您提供工具来管理加入该环境的数据中心。 vSphere 的两个核心组件是 ESXi 和 vCenter Ser…

前端必学——实现电商图片放大镜效果(附代码)

放大镜可以说是前端人必须学会的程序之一,今天的案例为大家展示一下怎么实现放大镜的效果! 效果图展示 整个效果就是当鼠标放到展示图上的时候,会出现一个遮罩层以及弹出来一个框展示一个详情图,并且鼠标移动的时候详情图跟着移动&#xff0c…

老外对开发信的评价是什么?如何写开发信?

老外对开发信的评价和态度怎么样?国外客户喜欢的开发信类型有哪些? 许多中国公司和个人都在与老外打交道时,不可避免地需要发送开发信。但是,老外对开发信的评价究竟如何呢?在这篇文章中,蜂邮将深入探讨老…

【代码可视化实践】代码变更影响分析 | 京东云技术团队

1.前言 笔者前文“浅析代码可视化”中讲述了代码可视化的基本实现原理,并给出了一些业界的应用场景。由于涉及原理和技术范围较广,以笔者能力难以做到面面俱到,为了减少信息传递偏差,便给出了一些信息来源供读者深入阅读。不过针…

css图片缩放属性object-fit说明

object-fit 属性可以设置以下值: 属性值说明例子fill填充容器,可能会改变图片的比例。object-fit: fill;contain保持图片的原始比例,确保图片完全包含在容器内。object-fit: contain;cover保持图片的原始比例,确保图片覆盖整个容…

微信小程序开发资源汇总

本文收集了微信小程序开发过程中会使用到的资料、问题以及第三方组件库。本文不是一篇关于如何学习微信小程序的入门指南,也非参考手册,只是一些资料的整理。 本仓库中的资料整理自网络,也有一些来自网友的推荐。 官方文档 小程序设计指南…

【超详细】手搓一个微信日记本

🎀 文章作者:二土电子 🌸 关注公众号获取更多资料! 🐸 期待大家一起学习交流! 这里对之前的微信记事本小程序进行了重新编写,增加了更加详细的步骤描述,将全部图片都改成了本地图…

文心一言 VS 讯飞星火 VS chatgpt (142)-- 算法导论12.1 2题

二、用go语言,二叉搜索树性质与最小堆性质(见 6.1 节)之间有什么不同?能使用最小堆性质在 O(n)时间内按序输出一棵有 n 个结点树的关键字吗?可以的话,请说明如何做,否则解释理由。 文心一言: 在二叉搜索树(Binary …

openEuler 22.03 LTS x86_64 cephadm 部署ceph18.2.0 未完成 笔记

环境 准备三台虚拟机 10.47.76.94 node-1 10.47.76.95 node-2 10.47.76.96 node-3 下载cephadm [rootnode-1 ~]# yum install cephadm Last metadata expiration check: 0:11:31 ago on Tue 21 Nov 2023 10:00:20 AM CST. Dependencies resolved. Package …

6 个有效且可用的顶级 Android 数据恢复工具

经过测试 42 种数据恢复软件产品,发现奇客数据恢复安卓版是 Android 设备的最佳选择。 过去几十年来,我一直在科技行业工作,经常帮助人们应对计算机灾难,包括丢失数据。 Android 数据恢复应用程序不在您的设备上运行&#xff0c…

教育+AIGC开局之年:教育派作业帮、科技派科大讯飞同路不同道

配图来自Canva可画 与往年相比,今年的双11显得格外冷清,GMV(商品交易总额)数据和增长数据无人提及,京东、淘宝天猫、抖音、快手等平台的火药味都淡了。一片祥和有序的双11氛围中,昔日的K12教育企业与科技企…

OpenMLDB SQL 开发调试神器 - OpenMLDB SQL Emulator

今天为大家介绍一款来自 OpenMLDB 社区的优秀独立工具 - OpenMLDB SQL Simulator(https://github.com/vagetablechicken/OpenMLDBSQLEmulator) ,可以让你更加高效方便的开发、调试 OpenMLDB SQL。 为了高效的实现时序特征计算,Op…

芯片设计—低功耗isolation cell

(一)低功耗isolation cell的目的 低功耗架构设计需要前后端拉通规划,前端设计有PMU功耗管理单元,比如A模块电压常开,B模块电压可关断,那么请思考,当B模块关断电压后,B模块输出到A模…

美国服务器在大陆连不上怎么回事?

​  在租用任何美国服务器之前,都需要先搞清楚一些使用问题,毕竟服务器能够不间断地访问也是站在们所期望的。但有时,美国服务器网站或许也会突然出现在大陆打不开的情况,在面临这种情况时,我们应该怎么做? 查看连不…

第98步 深度学习图像目标检测:SSD建模

基于WIN10的64位系统演示 一、写在前面 本期开始,我们继续学习深度学习图像目标检测系列,SSD(Single Shot MultiBox Detector)模型。 二、SSD简介 SSD(Single Shot MultiBox Detector)是一种流行的目标检…

鼠标点击位置获取几何体对象_vtkAreaPicker_vtkInteractorStyleRubberBandPick

开发环境: Windows 11 家庭中文版Microsoft Visual Studio Community 2019VTK-9.3.0.rc0vtk-example参考代码 demo解决问题:框选或者点选某一区域,并获取区域prop3D对象(红线内为有效区域,polydata组成的3d几何对象&a…

精益制造中的周转箱和工具柜优势

制造业(Manufacturing industry)是指机械工业时代利用某种资源(物料、能源、设备、工具、资金、技术、信息和人力等),按照市场要求,通过制造过程,转化为可供人们使用和利用的大型工具、工业品与…

杰发科技AC7801——EEP内存分布情况

简介 按照文档进行配置 核心代码如下 /*!* file sweeprom_demo.c** brief This file provides sweeprom demo test function.**//* Includes */ #include <stdlib.h> #include "ac780x_sweeprom.h" #include "ac780x_debugout.h"/* Define …

技术前沿探索:人工智能与大数据融合的未来

技术前沿探索&#xff1a;人工智能与大数据融合的未来 摘要&#xff1a;本博客将探讨人工智能与大数据融合领域的最新技术趋势、前沿研究方向以及挑战与机遇。通过介绍相关技术和案例&#xff0c;我们希望激发读者对这一领域的兴趣&#xff0c;并为其职业发展提供有益参考。 一…