增量预训练经验积累(3)

站在巨人的肩膀上才能走的更远~本文主要是针对《千亿参数开源大模型 BLOOM 背后的技术》进行学习和提取关键经验。

1、BLOOM与Megatron-DeepSpeed

1.1 BLOOM训练细节

BLOOM 的模型架构与 GPT3 非常相似,只是增加了一些改进,176B BLOOM 模型的训练于 2022 年 3 月至 7 月期间,耗时约 3.5 个月完成 (约 100 万计算时),以下是其训练的一些细节信息。

硬件: 384 张 80GB A100 GPU
软件: Megatron-DeepSpeed
模型架构: 基于 GPT3
数据集: 含 59 种语言,共 3500 亿词元
训练时长: 3.5 个月

1.1.1 训练硬件
  • GPU: 384 张 NVIDIA A100 80GB GPU (48 个节点) + 32 张备用 GPU
  • 每个节点 8 张 GPU,4 条 NVLink 卡间互联,4 条 OmniPath 链路
  • CPU: AMD EPYC 7543 32 核处理器
  • CPU 内存: 每个节点 512GB
  • GPU 显存: 每个节点 640GB
  • 节点间连接: 使用 Omni-Path Architecture (OPA) 网卡,网络拓扑为无阻塞胖树
  • NCCL - 通信网络: 一个完全专用的子网
  • 磁盘 IO 网络: GPFS 与其他节点和用户共享
1.1.2 checkpoints
  • 主 checkpoints(https://huggingface.co/bigscience/bloom)
  • 每个 checkpoint 含精度为 fp32 的优化器状态和精度为 bf16+fp32 的权重,占用存储空间为 2.3TB。如只保存
    bf16 的权重,则仅占用 329GB 的存储空间。
1.1.3 数据集
  • 41.5TB 经过大量去重和清洗的文本,包含 46 种语言,最终转换为 350B 个词元
  • 模型的词汇表含 250,680 个词元
  • 更详细信息,请参阅 The BigScience Corpus A 1.6TB Composite Multilingual
    Dataset(https://openreview.net/forum?id=UoEw6KigkUn)

1.2 Megatron-DeepSpeed

176B BLOOM 模型使用 Megatron-DeepSpeed进行训练,它结合了两种主要技术:

  • DeepSpeed 是一个深度学习优化库,让分布式训练变得简单、高效且有效。
  • Megatron-LM 是由 NVIDIA 的应用深度学习研究团队开发的大型、强大的 transformer 模型框架。

DeepSpeed 团队通过将 DeepSpeed 库中的 ZeRO 分片和流水线并行 (Pipeline Parallelism) 与 Megatron-LM 中的张量并行 (Tensor Parallelism) 相结合,开发了一种基于 3D 并行的方案。有关每个组件的更多详细信息,请参见下表。

请注意,BigScience 的 Megatron-DeepSpeed 是基于原始 Me

你可能感兴趣的:(大模型,大模型,ChatGpt,gpt)