【NLP高频面题 - 分布式训练篇】ZeRO主要为了解决什么问题?

【NLP高频面题 - 分布式训练篇】ZeRO主要为了解决什么问题?

重要性:★★

零冗余优化器技术由 DeepSpeed 代码库提出,主要用于解决数据并行中的模型冗余问题,即每张 GPU 均需要复制一份模型参数。

ZeRO的全称是Zero Redundancy Optimizer,意为去除冗余的优化器。在之前的分布式训练中,我们了解到训练模型时,主要占用的参数主要分为了三个部分:模型参数(Parameters ),优化器状态(Optimizer States ),梯度(Gradients),他们三个简称为OPG。其中优化器状态会占据大约2倍参数量的显存空间,这取决于选择的优化器,也是整个训练中占据最大空间的部分。

ZeRO被分为了三个级别:

  1. ZeRO1:对优化器状态进行拆分。显存消耗减少 4 倍,通信量与数据并行相同。
  2. ZeRO2:在ZeRO1的基础上,对梯度进行拆分。显存消耗减少 8 倍,通信量与数据并行相同。
  3. ZeRO3:在ZeRO2的基础上,对模型参数进行拆分。模型占用的显存被平均分配到每个 GPU 中,显存消耗量与数据并行的并行度成线性反比关系,但通信量会有些许增加。

论文中给出了三个阶段的显存消耗分布情况:


NLP 大模型高频面题汇总

NLP基础篇
【NLP 面试宝典 之 模型分类】 必须要会的高频面题
【NLP 面试宝典 之 神经网络】 必须要会的高频面题
【NLP 面试宝典 之 主动学习】 必须要会的高频面题
【NLP 面试宝典 之 超参数优化】 必须要会的高频面题
【NLP 面试宝典 之 正则化】 必须要会的高频面题
【NLP 面试宝典 之 过拟合】 必须要会的高频面题
【NLP 面试宝典 之 Dropout】 必须要会的高频面题
【NLP 面试宝典 之 EarlyStopping】 必须要会的高频面题
【NLP 面试宝典 之 标签平滑】 必须要会的高频面题
【NLP 面试宝典 之 Warm up 】 必须要会的高频面题
【NLP 面试宝典 之 置信学习】 必须要会的高频面题
【NLP 面试宝典 之 伪标签】 必须要会的高频面题
【NLP 面试宝典 之 类别不均衡问题】 必须要会的高频面题
【NLP 面试宝典 之 交叉验证】 必须要会的高频面题
【NLP 面试宝典 之 词嵌入】 必须要会的高频面题
【NLP 面试宝典 之 One-Hot】 必须要会的高频面题
...
BERT 模型面
【NLP 面试宝典 之 BERT模型】 必须要会的高频面题
【NLP 面试宝典 之 BERT变体】 必须要会的高频面题
【NLP 面试宝典 之 BERT应用】 必须要会的高频面题
...
LLMs 微调面
【NLP 面试宝典 之 LoRA微调】 必须要会的高频面题
【NLP 面试宝典 之 Prompt】 必须要会的高频面题
【NLP 面试宝典 之 提示学习微调】 必须要会的高频面题
【NLP 面试宝典 之 PEFT微调】 必须要会的高频面题
【NLP 面试宝典 之 Chain-of-Thought微调】 必须要会的高频面题
...
相关推荐
吴佳浩27 分钟前
GPU 编号进阶:CUDA\_VISIBLE\_DEVICES、多进程与容器化陷阱
人工智能·pytorch·python
吴佳浩1 小时前
GPU 编号错乱踩坑指南:PyTorch cuda 编号与 nvidia-smi 不一致
人工智能·pytorch·nvidia
小饕1 小时前
苏格拉底式提问对抗315 AI投毒:实操指南
网络·人工智能
卧蚕土豆1 小时前
【有啥问啥】OpenClaw 安装与使用教程
人工智能·深度学习
GoCodingInMyWay1 小时前
开源好物 26/03
人工智能·开源
AI科技星1 小时前
全尺度角速度统一:基于 v ≡ c 的纯推导与验证
c语言·开发语言·人工智能·opencv·算法·机器学习·数据挖掘
zhangfeng11331 小时前
Windows 的 Git Bash 中使用 md5sum 命令非常简单 md5做文件完整性检测 WinRAR 可以计算文件的 MD5 值
人工智能·windows·git·bash
monsion2 小时前
OpenCode 学习指南
人工智能·vscode·架构
藦卡机器人2 小时前
中国工业机器人发展现状
大数据·人工智能·机器人
破阵子443282 小时前
小米AI新模型全面解析:从MiMo-V2系列到使用指南
人工智能