混合专家模型(MoE):用稀疏激活扩展参数

混合专家模型(Mixture of Experts,MoE)是一种让模型在保持巨大参数规模的同时,只对每个输入激活其中一小部分参数的神经网络结构。它的核心思想是「把多个子网络(专家)组合起来,由门控网络按需挑选」。这样既扩充了模型容量,又控制了单次前向推理的计算开销。

结构:专家与门控路由

标准 MoE 层用一个门控网络(router/gating)取代或叠加在 Transformer 的前馈网络(FFN)之上。每一层包含若干并行的专家子网络(通常是独立的 FFN),门控网络为每个 token 计算各专家的权重,并只把 token 送给权重最高的若干专家。

MoE 层(每层):
  专家 E1, E2, ..., Ek     (k 个并行 FFN)
  门控网络 G(x)            (输出 k 个专家的分数/权重)

  对 token x:
    权重 w = softmax(G(x))
    选出 top-N 专家(N < k)
    输出 = 求和( 选中专家的输出 * 对应权重 )

门控通常取最简单的「线性层 + softmax + top-N」,但路由策略(如带噪声的 top-k、专家容量上限)会显著影响实际效果。

稀疏激活:参数与算力解耦

密集模型(dense)的参数量基本等于每次推理的计算量;MoE 把这二者解耦:总参数量由专家总数决定,而实际算力只取决于被激活的少数专家。

Mixtral 8x7B(已核验,Mixtral of Experts, 2024-01)
  每层 8 个专家,每 token 激活 2 个
  总参数约 47B(每 token 可触及),推理激活约 13B

DeepSeek-V3(已核验,技术报告 v1 2024-12)
  总参数 671B,每 token 激活 37B

换句话说,模型「记住」知识的容量随专家数量增长,而「思考」一个 token 的成本只随激活专家数增长。这是 MoE 能以更少算力换来更大参数量的关键。

负载均衡损失

门控网络在训练中可能退化:少数专家被反复选中,其余专家「饥饿」、得不到更新。为此通常加入负载均衡辅助损失(load balancing loss),鼓励 token 在专家间尽量均匀分配。

负载均衡损失(示意)
  f_i = 该批中路由到专家 i 的 token 比例
  P_i = 门控给专家 i 的平均概率
  L_aux = alpha * 求和_i( f_i * P_i )
  目标:让 f_i 与 P_i 都趋于 1/k

DeepSeek-V3 进一步提出「无辅助损失」(auxiliary-loss-free)的负载均衡策略,通过动态调整每个专家的偏置项来均衡负载,避免辅助损失对主任务的干扰(待核实:偏置项的具体调度细节与超参)。

代表模型:Mixtral 与 DeepSeek

  • Mixtral 8x7B(Mistral AI,2024):开源 Sparse MoE 的代表,8 个专家路由 2 个,性能对标 Llama 2 70B,推理成本接近 13B 密集模型(已核验)。
  • DeepSeek-V3(DeepSeek-AI,2024):671B 总参数、37B 激活,采用 DeepSeekMoE 与多头潜在注意力(MLA),并以无辅助损失策略做负载均衡(已核验)。
  • 更早的 GShard、Switch Transformer,以及 Qwen、GLM 等系列也广泛采用 MoE(待核实:各系列的具体专家配置与激活数)。

训练与推理要点、局限

训练要点:

  • 负载均衡是稳定训练的前提,否则会出现专家坍缩。
  • 小批量下路由的随机性较大,需用较大批次与专家容量上限(capacity factor)约束。
  • 专家并行带来显存与通信开销,常配合张量并行与专家并行(EP)切分。

推理要点:

  • 虽然激活参数少,但全部专家权重都必须驻留显存,因此显存占用接近总参数量级别。
  • 吞吐受限于「激活专家数 × 单专家计算」与跨设备路由通信。
  • 量化与专家卸载可在显存受限时部署大模型。

主要局限:

  • 显存占用高,部署门槛高于同激活规模的密集模型。
  • 路由不均会导致部分专家利用率低,需要精心调参。
  • 微调时易过拟合到少数专家,泛化需谨慎。

小结

混合专家模型通过「专家 + 门控路由 + 稀疏激活」,把总参数量与单次计算量解耦,使模型能在可控算力下拥有巨大容量。Mixtral 与 DeepSeek-V3 等已验证其可行性。负载均衡是训练稳定的关键,而无辅助损失策略是近期的重要改进方向。MoE 的代价是更高的显存占用与路由通信开销。

参考与延伸阅读

Mixtral of Experts(arXiv:2401.04088,2024-01) DeepSeek-V3 Technical Report(arXiv:2412.19437,2024-12) Switch Transformers: Scaling to Trillion Parameter Models(arXiv:2101.03961) GShard: Scaling Giant Models with Conditional Computation(arXiv:2006.16668)

本文累计阅读