Skip to content
🔗 分享本题
查看我的学习进度 →

MoE 动漫知识图:路由器为每个 Token 选择少量专家计算并加权汇总,扩大模型容量但仍需加载专家权重,并面对通信、负载均衡和路由稳定性问题

🧠 图解记忆:路由决定激活专家,省计算不等于省权重与通信;点击图片可查看原图。

MoE(Mixture of Experts)= 把 Transformer 中的 FFN 层替换成"多个专家 + 路由器",每个 Token 只激活少数几个专家。

核心原理(面试必答)

传统 Dense 模型:
输入 → FFN(所有参数都计算)→ 输出

MoE 模型:
输入 → 路由器(Gating) → 选 Top-2 专家 → 只有选中专家参与计算 → 加权求和输出
        └─ 专家1(FFN-A) 专家2(FFN-B) ... 专家8(FFN-H)

三步流程:

  1. 路由器打分G(x) = Softmax(W·x),为每个 Token 算出各专家的选择概率
  2. 选 Top-K 专家:一般 K=2(Mixtral 8x7B 激活 2/8;DeepSeek-V3 激活 8/256 个专家路由)
  3. 加权融合:选中专家的输出乘上门控概率再相加

关键概念

概念说明
总参数量 vs 激活参数量DeepSeek-V3:总参数 671B,单 Token 只激活 37B——"总参大、激活少"
路由器(Router/Gating)一个小 FFN,决定每个 Token 走哪个专家
稀疏性不是所有专家都激活,这是省算力的根源
负载均衡损失辅助 Loss 惩罚"所有 Token 都挤向同一个专家",防止个别专家过载

为什么 2026 年大模型都用 MoE?(优势)

  1. 容量大、知识多:总参数大 → 记住更多知识(效果好)
  2. 计算省、推理快:激活参数少 → 同预算下 FLOPs 低 50%+,推理成本直降
  3. 扩展性好:加专家 ≈ 加容量,不必重训整个模型(如 Qwen3-MoE 从 30B 扩到 235B 总参)

挑战与坑(面试加分点)

  • 显存占用高:所有专家权重都要加载进显存(DeepSeek-V3 671B 需多机)
  • 通信开销:专家并行时 Token 要跨卡转发(All-to-All),专家数越多通信越重
  • 负载不均衡:热门专家被反复选中,需要 Auxiliary Loss 平衡
  • 微调更脆弱:MoE 微调容易过拟合路由偏好,LoRA 微调需同时冻结/约束路由

面试话术:

"MoE 的核心是'总参数大、激活参数少'——用路由器给每个 Token 挑 Top-2 专家,其余专家不计算。DeepSeek-V3 总参 671B 但单 Token 只激活 37B,效果接近稠密大模型、成本只有几分之一。但代价是显存和通信:专家全量驻留显存、跨卡通信是瓶颈,所以训练部署都比稠密模型更依赖集群设计。"