DOCAI · 概念 · L3
什么是 MoE(混合专家)
一句话定义
把模型拆成多个「专家」子网络,每次只激活其中少数几个,用更少的计算跑更大的参数量。
专业更新 2026-11-13核验 2026-11-13 · docai 编辑部
它解决什么
稠密模型参数越大,每个 token 都要经过全部参数:总参数涨一倍,单次计算也涨一倍。
MoE 把参数分成若干「专家」,每个 token 只走其中几个。于是可以做到总参数很大,单次计算较小。
怎么工作
- 路由器(router)看这个 token,给每个专家打分。
- 选 top-k 个专家(常见是 2 个)。
- 只经过这几个专家计算,结果加权合并。
训练时还会加负载均衡约束,避免所有 token 都涌向同一个专家。
代价是什么
- 显存:虽然只算一部分,但全部专家都要装进显存。
- 路由不均:热门专家过载、冷门专家闲置,是训练难点。
- 通信开销:专家分布在不同设备上时,token 要跨设备转发。
三个常见误解
- 「MoE 是多个模型投票」:不是。它是一个模型,内部按 token 路由。
- 「总参数等于计算量」:不等于。看的是激活参数,不是总参数。
- 「MoE 自动更聪明」:同样的数据与训练方法下,它提升的是「同等计算下的容量」,不是能力上限本身。
和稠密模型对比
| 对比 | 稠密模型 | MoE |
|---|---|---|
| 总参数 | 全用 | 很大 |
| 单次计算 | 随参数线性涨 | 只看激活部分 |
| 显存 | 等于参数量 | 仍要装全部专家 |
| 训练稳定性 | 较稳 | 路由与负载均衡更难 |