编程 MoE 路由为什么不稳定,以及怎么稳定

2026-08-30 15:21:47 views 7

MoE 路由为什么不稳定,以及怎么稳定

MoE 的核心矛盾一句话:总参数量很大,但每次推理只激活一部分专家。路由策略决定哪些 token 分给哪些专家。它直接决定算力花在哪、专家有没有被用上。路由的离散性最容易被低估。

不稳是普遍现象,有具体数字

StableMoE(ACL 2022)给过一组数字:训练进行到 20% 时,仍有 40.9% 的 token 找不到一个「稳定」的目标专家——同一输入在训练过程中路由到的专家在变化;其中 15.4% 的 token 会反复切换专家。推理时每个 token 最终只激活一个专家。

结果就是:同一输入在训练时更新了多个专家,推理却只用其中一个,样本效率被浪费。路由波动直接作用在收敛速度和下游性能上。

top-k 路由为什么漂

传统 top-k 路由基于 token 的显式特征做选择,问题有三个:

  • 对噪声敏感。相似的 token 可能因为微小扰动被分到不同专家,输出不一致。
  • 负载不均。热门专家反复被选,其他专家闲置,这就是路由坍塌(Routing Collapse)。
  • 决策是离散的,梯度不平滑,训练震荡难收敛。

路由坍塌是训练里最常见的坑:路由器学成「总把 token 发给同一两个专家」,其他专家永远拿不到梯度,形成恶性循环。

怎么判断?原素材没有给具体报错文本,实际也极少直接报错。看指标:检查每个专家收到的 token 分配比例,算使用率的熵。如果熵远低于 log(N)(N 个专家均匀分布对应的熵),基本就是塌了。

稳定化的路线和取舍

1. z-loss(ST-MoE,2022)

给路由网络的 logits 加一个惩罚项,迫使 logits 的绝对值保持较小,减少 exp/softmax 的舍入误差和梯度爆炸。

对比梯度裁剪:把梯度裁剪收紧会显著损害模型质量;z-loss 在几乎不降质量的前提下提升稳定性。

工程注意:路由器计算分布用 float32 精度(选择性精度)。路由涉及 exp 等对精度敏感的操作,不能随便降精度。

2. 蒸馏路由器 + 冻结(StableMoE,ACL 2022)

两阶段:

  1. 学一个「平衡且连贯」的路由策略,同步蒸馏成一个与骨干解耦的轻量级路由器。
  2. 用蒸馏出的路由器确定 token->expert 分配并冻结。

训练和推理都用同一个冻结路由器,保证一致性。路由从「学习期波动」变成「训练后固定」。代价是流程多一个蒸馏阶段。

3. 潜空间路由(Stable LatentMoE / Kimi K3 采用思路)

top-k 在 token 显式特征上直接选。Stable LatentMoE 先把 token 经轻量路由网络映射到潜空间,再基于潜空间的聚类结构分配专家:每个专家对应一个聚类中心。

三个直接收益:

  • 潜空间表示对输入噪声更鲁棒,相似 token 更可能落到同一专家,路由更稳;
  • 聚类天然均衡负载;
  • 潜空间连续,梯度更平滑。

超长上下文下还有一个复杂度收益。传统路由如果依赖全局上下文,复杂度是 O(n);潜空间路由可以做到 O(1),每个 token 独立路由。Kimi K3 是 1M token 上下文,这个差距被放大。

需要说明:Kimi K3 的具体实现细节属于公开推测,我没有实测信息,原文也未提供更多细节。

4. DeepSeek-V3 的动态偏置项

为每个专家维护一个偏置项 b_i。它只用于路由选择,不参与梯度计算,动态调整实现负载均衡。核心均衡不靠辅助损失,只留一个很小的辅助损失(α≈0.001)兜底。

这样负载均衡和模型性能两个目标互不干扰。

5. 共享专家

设若干共享专家,所有 token 都过一遍,再叠加路由专家。共享专家捕获通用模式(语法、常识),路由专家捕获领域知识。本质是避免通用知识和专业知识在同一个专家里竞争。实现简单,代价是每个 token 多过一遍共享专家。

工程上的判断

  • MoE 不是银弹。价值在解耦容量和计算成本。模型本身不大、任务单一,稠密模型更简单高效。
  • 「更多更小的专家」通常优于「更少更大的专家」。增加专家数比增加每 token 激活数更高效。
  • 推理时全部专家参数都得装下。Mixtral 8x7B 这类规模,显存/内存预算按总参数量算,不是按激活量算。RAM 不够就上不了。
  • 超长上下文会放大路由的复杂度问题。从 O(n) 到 O(1) 是潜空间路由的核心卖点之一。
  • 未实测的部分要标明。Kimi K3 的实现细节就是这一类。

| StableLatentMoE

复制全文 生成海报 StableLatentMoE MoE 大模型 架构

推荐文章

程序员茄子在线接单