预训练工程模块四 · 参数量计算计算约 12 分钟
MoE 参数量:激活参数 vs 总参数
为什么 MoE 号称「大而不贵」
学完这节你能:
- 区分总参数与激活参数
- 会估算 MoE 的两类参数
- 理解 MoE 的算力/显存账
MoE 把 FFN 换成 E 个专家,每个 token 只走 Top-K 个。于是「总参数」很大,但「每步实际参与计算的激活参数」小很多。
总参数 共享部分 单个专家参数
激活参数 共享部分 单个专家参数()
激活参数 共享部分 单个专家参数()
▪ 手算直觉
设共享部分 2B,单专家 0.5B,专家数 E=64,Top-K=2
总参数 ≈ 2 + 64×0.5 = 34B(决定显存)
激活参数 ≈ 2 + 2×0.5 = 3B(决定单步算力)
→ 用 3B 的算力,装 34B 的知识容量
⚠️ 别被「激活少」骗了:所有专家参数都要常驻显存,所以 MoE 的显存开销按「总参数」算,通常远大于同算力的稠密模型。
自测MoE 模型的「激活参数」决定的是:
自测变式(换数字再算):共享部分 1B、单专家 0.4B、专家数 E=32、Top-2,激活参数约为:
// 带走一句话
MoE:总参数(全专家,定显存)≫激活参数(Top-K 专家,定算力);用小算力装大容量,但显存按总参数算。
独立练习
做到这些,才算完成本节
- 分别计算 8 专家 Top-2 MoE 的总参数与单 token 激活参数。
- 保持激活参数不变增加专家数,解释显存、计算和通信分别如何变化。
- 替换例题中的数值,从头独立算一遍。
- 用数量级、边界值或反向计算检查结果是否合理。
学习记录
记录本节阅读进度
建议先独立回答自测。读完记录不等于已经掌握。