M4-074M4: Sequences & TransformersMixture of Experts (MoE)Easy
Mastery:

Mixture of Experts (MoE): 解释 MoE 的基本结构与稀疏激活。

📐 Mathematical Definition
y=∑i∈Topk(g(x))gi(x)⋅Ei(x);g(x)=softmax(Wrx)y=\sum_{i\in\mathrm{Top}_k(g(x))}g_i(x)\cdot E_i(x);\qquad g(x)=\mathrm{softmax}(W_rx)
⚡ Executive Summary
Core Concept: 把 FFN 换成 N 个专家,路由器为每个 token 选 Top-k 个专家计算;总参数大但每 token 激活量小。

📌 Key Takeaways

  • •
    FFN 换成 N 个专家(总参数 ×N),每 token 只激活 k 个
  • •
    容量(总参数)与计算量(激活参数)解耦
  • •
    稀疏激活使'大参数 + 低 FLOPs'成为可能

📐 Mathematical Derivations

数学机理:<strong>结构</strong>——MoE 把 Transformer 的 FFN 子层替换为'<strong>N 个并行的专家(expert,各是一个 FFN)+ 一个路由器(router/gate)</strong>'。对每个 token,路由器计算它在各专家上的权重 g(x)=softmax(W_r x)∈ℝ^N,然后<strong>只取 Top-k 个专家</strong>计算并加权求和:y=Σ_{i∈Top_k} g_i(x)·E_i(x)。<strong>稀疏激活</strong>——虽然总参数量为 N 倍(如 N=64 时参数量 ×64),但每个 token 只经过 k 个专家(常 k=2),故<strong>每个 token 的激活参数 ≈ k/N × 总参数</strong>(如 64 个专家、k=2 时约 3%)。<strong>核心价值</strong>——<strong>容量与计算解耦</strong>:模型可以有很大的总参数(更强的知识容量与表达能力),但每 token 的计算量(FLOPs)保持在较低水平(只算 k 个专家)。这打破了稠密模型'参数 ∝ 计算'的约束。<strong>与稠密模型的对比</strong>——稠密模型增加参数必然增加 FLOPs(∝参数量×token 数);MoE 增加参数只增加显存(存储所有专家),FLOPs 只随 k 增长。<strong>实例</strong>——Mixtral 8x7B(8 个专家、k=2,总参数 47B、激活 13B)、DeepSeek-V2/V3(细粒度专家 + 共享专家)、Switch Transformer(k=1)。<strong>训练目标</strong>——除任务损失外,通常加<strong>负载均衡损失</strong>(防止专家使用不均,见下一题)。

🏭 Production Trade-offs

深度剖析与工程权衡:① <strong>'参数 vs FLOPs'的解耦是核心卖点</strong>——在给定算力预算下,MoE 能提供更大的参数量(更多知识容量);在给定参数量下,MoE 能提供更低的推理成本。这使 MoE 成为'用显存换质量'的路径。② <strong>显存是新的瓶颈</strong>——所有专家都要存在显存中(即使每 token 只激活 k 个),故 MoE 的<strong>显存需求 ∝ 总参数量</strong>(而非激活参数);这使 MoE 的部署门槛高(需大显存或多卡专家并行)。③ <strong>k 的选择</strong>——k=1(Switch)最省算力但负载均衡压力大、专家需更专精;k=2(Mixtral/DeepSeek)是常见折中(更稳定、质量更好);k 越大越接近稠密(成本上升)。④ <strong>与 FFN 的关系</strong>——MoE 只替换 FFN(占参数 2/3 的部分),注意力仍是稠密的(共享);这符合'FFN 是知识存储地'的观察。⑤ <strong>专家数 N 的选择</strong>——N 越大容量越高但负载均衡越难、通信开销越大;DeepSeek-V2 用'细粒度专家'(N 很大、每个专家更小)以提升专家组合的灵活性。⑥ <strong>面试要点</strong>——被问'MoE 是什么',应给出'<strong>FFN → N 个专家 + 路由器 Top-k</strong>'与'<strong>容量与计算解耦(参数 ∝N、FLOPs ∝k)</strong>';能指出'显存 ∝ 总参数是 MoE 的新瓶颈'是深度理解的标志。
⚠️ Common Interview Pitfalls
  • ✕
    以为 MoE 的推理成本 ∝ 总参数量(实际 ∝ 激活的 k 个专家)
  • ✕
    忽略 MoE 的显存需求 ∝ 总参数
🎯 Interviewer Follow-ups
  • ?
    为什么 MoE 能'参数大但计算少'?
  • ?
    k 通常取多少?
📚

Associated Knowledge Base Guides & Mindmaps

Explore the comprehensive technical article, exam cards, and global architecture tree.

← PreviousM4-073: Long Context Extensions & Scaling: 解释长上下文的注意力模式经验规律(sink + 局部窗口)。📋Back to BankNext →M4-075: Mixture of Experts (MoE): 解释 MoE 的负载均衡损失,为什么需要它。