土法炼钢兴趣小组的算法知识备份

【Transformer 与注意力机制】44|MoE:稀疏激活的万亿模型路径

文章导航

分类入口
transformer
标签入口
#transformer#moe#mixture-of-experts#sparse-activation#switch-transformer

目录

Dense Transformer 有一个直接限制:参数越多,每个 token 通常要经过的计算也越多。MoE(Mixture of Experts)试图拆开这件事。模型可以有很多专家,总参数量很大;但每个 token 只路由到少数几个专家,因此每 token 计算量不必和总参数量同步增长。

这就是“稀疏激活”的含义。稀疏 attention 少算 token 之间的边,MoE 少激活参数路径。二者都在问同一个问题:能不能让模型容量变大,但每次计算只用其中一部分?

本篇能让你学会三件事:

  1. MoE 在 Transformer 中通常如何替换 FFN;
  2. router、expert、top-k routing、容量因子分别在做什么;
  3. 为什么 MoE 的难点不只是模型结构,还有负载均衡和分布式通信。

一、Dense 模型的绑定问题

在普通 Transformer 中,每个 token 都通过同一套 attention 和 FFN 参数。参数量越大,通常每个 token 的计算量也越大。扩大模型容量和控制推理成本之间存在紧张关系。

MoE 的想法是准备多个 FFN 专家。对每个 token,router 根据隐藏状态选择一个或几个专家执行。没有被选中的专家不参与当前 token 的计算。这样模型总参数量可以很大,但单 token 只走少数路径。

这不是简单 ensemble。Ensemble 通常多个模型都跑一遍再平均;MoE 是在一个模型内部做条件计算,token 级别动态选择专家。


二、为什么常替换 FFN

Transformer 的 FFN 层占据大量参数,并且对每个 token 独立执行。把 FFN 换成多个专家很自然:attention 负责 token 间通信,MoE-FFN 负责 token 内的非线性变换。

如果替换 attention,路由和通信会更复杂,因为 attention 本来就涉及 token 间关系。替换 FFN 则边界清楚:每个 token 被送到某个专家,专家输出再回到原位置。

所以许多 MoE Transformer 的基本形式是:attention 仍然 dense,部分或全部 FFN 层变成 MoE 层。


三、router 与 top-k routing

router 是一个小网络,输入 token 的隐藏状态,输出各专家的分数。top-k routing 选择分数最高的 k 个专家。Switch Transformer 使用 top-1 routing,把每个 token 送到一个专家,简化计算和通信。

top-1 简单高效,但更容易负载不均;top-2 或更多专家能增加冗余和表达能力,但计算与通信更贵。k 的选择就是质量、稳定和效率之间的权衡。

router 本身也要训练。它不是固定规则,而是和模型一起学习“什么 token 应该交给什么专家”。这带来能力,也带来不稳定。


四、负载均衡和容量因子

如果 router 总把 token 送到少数专家,热门专家会过载,其他专家闲置。这样既浪费参数,也会造成训练不稳定。MoE 训练通常需要 auxiliary loss 鼓励负载均衡。

容量因子(capacity factor)限制每个专家最多接收多少 token。超出容量的 token 可能被丢弃、跳过或走备用路径。容量太小,信息损失;容量太大,显存和通信成本上升。

这说明 MoE 不是“参数越多越好”。真正困难的是让 token 分配合理,让专家学到差异化能力,又不让系统被少数热点专家拖垮。


五、从 GShard 到 Switch Transformer、Mixtral

GShard 展示了大规模 MoE 在机器翻译等任务上的可行性。Switch Transformer 进一步简化路由,用 top-1 expert 让训练和扩展更容易。后来的 Mixtral 等开放模型让 MoE 在 LLM 社区更直观地进入公众视野。

这些工作共同说明,MoE 是扩大模型容量的重要路径。它让“总参数量”和“每 token 激活参数量”不再完全绑定。

但公开模型的成功不代表 MoE 简单。路由、并行、通信、专家分布、训练稳定和推理部署都很复杂。


六、MoE 的代价

MoE 的第一类代价是通信。不同 token 被送到不同专家,在分布式训练中往往需要 all-to-all 通信。通信一旦成为瓶颈,理论计算优势会被抵消。

第二类代价是训练稳定性。router 早期如果偏向某些专家,专家会强者恒强;如果路由抖动太大,专家又难以形成稳定专长。

第三类代价是部署复杂度。Dense 模型只要加载一套参数路径;MoE 需要处理专家分布、路由、batch 内 token 重排和不同专家负载。


七、关键概念回顾


八、常见误解

8.1 “MoE 推理免费”

不免费。虽然每个 token 激活参数少,但路由、通信、专家调度和显存占用仍然昂贵。

8.2 “MoE 就是 ensemble”

MoE 是 token 级条件计算,不是把多个完整模型结果平均。

8.3 “专家会自动学成领域专家”

不一定。专家分化取决于训练数据、路由损失、容量和优化过程,不能简单按人类领域命名。


九、下一步

MoE 说明 Transformer 可以通过稀疏激活扩大容量。下一篇转向视觉:ViT 如何把图像切成 patch,让图片也变成 token 序列。


十、参考文献

  1. Shazeer, N. et al. “Outrageously Large Neural Networks: The Sparsely-Gated Mixture-of-Experts Layer.” ICLR 2017.
  2. Lepikhin, D. et al. “GShard: Scaling Giant Models with Conditional Computation and Automatic Sharding.” ICLR 2021.
  3. Fedus, W. et al. “Switch Transformers: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity.” JMLR 2022.
  4. Jiang, A. Q. et al. “Mixtral of Experts.” arXiv:2401.04088, 2024.

← 上一篇:43|稀疏与局部注意力 | 下一篇:45|ViT

同主题继续阅读

把当前热点继续串成多页阅读,而不是停在单篇消费。

2026-04-15 · transformer

【Transformer 与注意力机制】39|T5:把所有 NLP 任务统一成 Text-to-Text

T5 的核心不是又发明了一种 Transformer,而是把翻译、摘要、分类、问答都改写成“输入文本到输出文本”的统一格式。本文解释 T5 为什么选择 Encoder-Decoder 架构,span corruption 和 BERT/GPT 的目标有什么差异,C4 和系统化消融实验为什么让 T5 成为迁移学习路线的重要基准。


By .