文 | 王 思 若
2018年GP T 、BERT预训练模型的提出吹响了大模型“ 军备竞赛”冲锋的号角,一场大模型的狂
欢拉开帷幕,业界强大的算力支撑起例如Megatron-Turing、Switch Transformer、悟道2.0等
千亿&万亿参数量模型。与此同时,面对着超大模型训练在内存存储、网络通信、性能功耗等
方面的严峻挑战,这同样是一场工程上极致优化的探索之旅,各家公司纷纷提供了自己的解决
方案或训练框架,常用的方法有以下几种:
1. 并 行 化 方 法 : 主 要 包 括 数 据 并 行 、 模 型 并 行 和 流 水 线 并 行 , 切 分 数 据 、 Tensor 或 模 型
Block到不同GPU 上从而达到并行化的效果。之后,Google提出了基于专家并行的MoE 架构,
通过稀疏结构拓展实现了大模型万亿参数量的飞跃。
2. 内 存 &通 信 优 化 方 法 : 进一步为了应对并行化方法在内存及通信量上的局限,16年,陈天
奇团队提出亚线性内存优化的Checkpointing(重计算)方法,在反向传播时重新计算前向传播的
中 间激 活 达 到 节 省 显 存 的目 的 。 21年 , 微软 提 出 了 CP U of f load的 ZeRO-Offload方 案 ,将 梯
度、优化器、参数在CPU和GPU间Swapping,通过通信成本来大幅度的节省显存开销。当然,
混合精度或者半精度模型训练即采用FP16代替FP32模型参数的量化方法是更加常见有效的方
案,大幅度减少内存带宽和存储空间并且提高系统吞吐量,几乎可以成倍提升模型训练速度。
在 这 场 巅 峰 较 量 中 , Facebook表 示 : 只 需 更 改 两 行 代 码 , 带 你 体 验 极 致 的 显 存 优 化 , 单
机 即 可 训 练 千 亿 模 型 , 助 力 贫 民 玩 家 实 现 大 模 型 梦 ! 虽 然 这 里 单 机 至 少 需 要 8 张 RTX