☰
混合专家(MoE)与稠密模型:作用、收敛优势与两条实践路径
2026/10/28 2:51:27 网站建设 项目流程

MoE 与稠密模型有什么作用?

核心优势:参数规模大,计算量基本不变

稠密模型每个 token 都要经过全部参数。MoE 把 FFN 拆成多个专家,每个 token 只激活其中少数几个。

设:

  • 稠密模型 FFN 参数量为PPP;
  • MoE 有EEE个专家,每个专家参数量也是PPP;
  • 每个 token 激活kkk个专家。

则:

指标稠密模型MoE
总参数量PPPE×PE \times PE×P
每 token 计算量PPPk×Pk \times Pk×P
参数/计算比1E/kE/kE/k

数值例子:
设P=1P = 1P=1亿,E=8E = 8E=8,k=2k = 2k=2。

  • 稠密模型:总参数 1 亿,每 token 计算 1 亿;
  • MoE:总参数 8 亿,每 token 计算 2 亿。

MoE 参数量是稠密的 8 倍,但计算量只是 2 倍,参数/计算比从 1 提升到 4。这就是“容量大、计算省”的来源。

天然支持专家并行

每个专家是独立的 FFN,可以放在不同设备上。路由器根据 token 把请求发到对应设备,计算在专家所在设备独立完成。

数值例子:
8 个专家分布在 8 块 GPU 上。一批 1024 个 token,Top-2 路由。

  • 每个 token 选 2 个专家;
  • 平均每个专家收到 1024 × 2 / 8 = 256 个 token;
  • 每块 GPU 只处理 256 个 token 的 FFN,而不是 1024 个。

这种结构切分让 MoE 能扩展到上百块 GPU,是超大规模模型的重要基础。

为什么 MoE 往往收敛更快、表现更好?

直观原因:

  • 参数容量大:更多专家意味着更大的表示空间,能存储更多知识;
  • 专家专业化:不同专家处理不同语义模式的 token,分工明确,减少干扰;
  • 稀疏激活:每个 token 只走少数专家,计算聚焦,梯度更新更有针对性。

但这不是绝对的,依赖数据规模、训练配方和评测任务。数据不足时,MoE 的专家可能训练不充分,反而不如稠密模型。

数值直觉:
设稠密模型有 1 亿参数,要拟合 10 种语义模式,每种模式平均只有 1000 万参数可用,容易互相干扰。

MoE 有 8 个专家、总参数 8 亿,Top-2 激活。理想情况下,每种模式可以由 1~2 个专家专门处理,每个专家有 1 亿参数专注一种模式,干扰更小,拟合更好。

两条实践路径:稠密→稀疏升级 vs 从零训练 MoE

路径一:稠密→稀疏升级(Upcycling)

做法:

  1. 先训练一个稠密模型;
  2. 把稠密 FFN 复制成EEE份,作为EEE个专家的初始权重;
  3. 加一个随机初始化的路由器;
  4. 继续训练,让专家逐渐分化。

数值例子:权重复制与早期输出
设稠密 FFN 对某个 token 的输出为:

h_dense = [1.0, 2.0]

Upcycle 成 4 个专家,初始时每个专家权重都等于原稠密 FFN,所以:

Expert0(h) = [1.0, 2.0] Expert1(h) = [1.0, 2.0] Expert2(h) = [1.0, 2.0] Expert3(h) = [1.0, 2.0]

路由器随机初始化,假设 Top-2 选中 Expert0 和 Expert2,权重各 0.5:

输出 = 0.5 * [1.0, 2.0] + 0.5 * [1.0, 2.0] = [1.0, 2.0]

早期所有专家输出相同,路由器收到的梯度信号很弱,专家分化慢。这就是 upcycling 的“起点优势”——输出已经不错,但“分工”需要时间。

路径二:从零训练 MoE

做法:

  1. 专家和路由器都随机初始化;
  2. 专家和路由器从头共同演化。

数值例子:早期专家输出
4 个专家随机初始化,对同一 token 输出:`

Expert0(h) = [0.3, -0.1] Expert1(h) = [-0.5, 0.8] Expert2(h) = [0.9, 0.2] Expert3(h) = [0.1, -0.7]

路由器也随机,Top-2 选中 Expert1 和 Expert2,权重 0.6、0.4:

输出 = 0.6 * [-0.5, 0.8] + 0.4 * [0.9, 0.2] = [-0.3 + 0.36, 0.48 + 0.08] = [0.06, 0.56]

早期输出远离目标,但路由器梯度信号强,专家分化速度快。代价是前期收敛慢,需要更多 token 才能追上 upcycled 模型

25% vs 120% 的大差异怎么来的?

两个实验的结论

实验路由策略从零训练追上 upcycled 所需 token
OLMoETC约 500-600B,约为原稠密训练计算预算的 25%
Komatsuzaki 等EC约为原稠密训练量的 120%

数值例子:
设原稠密模型训练了 2T tokens 达到 loss 1.80。

  • OLMoE(TC):从零训练 MoE 约 2T × 25% = 500B tokens 时追上 upcycled 模型;
  • Komatsuzaki(EC):从零训练 MoE 约 2T × 120% = 2.4T tokens 才追上 upcycled 模型。

同样是“从零训练”,差距 4 倍以上。

为什么差这么多?

原因一:TC 与 EC 的早期动态不同

  • TC(Token Choice):每个 token 主动选专家。早期热门专家被大量 token 选中,迅速过载并更新,冷门专家闲置。专家分化快,但负载不均。
  • EC(Expert Choice):每个专家主动选 token。负载天然均衡,但早期部分 token 可能不被任何专家选中,信息丢失,专家分化慢。

数值例子:TC vs EC 的专家负载
4 个 token,3 个专家,Top-1。

TC 路由得分:

tokenE0E1E2TC 选中
t00.80.10.1E0
t10.70.20.1E0
t20.20.50.3E1
t30.10.30.6E2

TC 负载:E0=2,E1=1,E2=1。E0 快速更新,分化快。

EC 转置后每个专家选 Top-1:

专家t0t1t2t3EC 选中
E00.80.70.20.1t0
E10.10.20.50.3t2
E20.10.10.30.6t3

EC 负载:各 1 个,但 t1 被丢弃。t1 没有梯度,学习信号缺失,早期收敛慢。

原因二:模型范式不同

  • Decoder 架构(OLMoE)和 Encoder 架构(Komatsuzaki)训练目标、信息流不同;
  • Upcycling 的收益随范式变化,不能直接横向比较。

原因三:实验设置不同

数据规模、学习率、训练配方、评测任务都会影响追赶点。

OLMoE 指出的 upcycling 两个结构性问题

问题一:旧权重导致“遗忘与重学困难”

稠密权重已经编码了强通用能力。MoE 化后,这些参数需要部分“遗忘”旧表征,再重塑为专家专业化能力。但梯度流仍受旧表示影响,新学习信号容易被历史分布干扰。

数值直觉:

设稠密权重对某类 token 的输出是 [1.0,2.0],已经很好。

Upcycle 后,专家0 想专攻这类 token,专家1 想专攻另一类。

但专家0 初始权重就是稠密权重,它对另一类 token 也输出 [1.0,2.0]。

要让它“忘记”另一类、只专注第一类,需要较大梯度更新;而旧权重的强输出会持续干扰梯度方向,导致重学困难。

问题二:路由器学得太晚

路由器随机初始化,早期近似随机或均衡分配,前半程难形成清晰专家分工。等路由器逐渐稳定时,学习率往往已经衰减,专家“特长”划分仍模糊。

数值例子:
设训练 10000 步,学习率余弦衰减。

  • 前 3000 步:路由器输出接近均匀,Top-2 选择近似随机,专家分工不清晰;
  • 第 3000~7000 步:路由器开始分化,但学习率已从峰值降到一半以下;
  • 第 7000 步后:学习率很小,路由器调整缓慢,专家分工基本定型但仍模糊。

结果:路由器“学得太晚”,专家专业化不充分。

Qwen1.5-MoE 的成功案例

工程实践中也有成功 upcycling 的案例。

Qwen1.5-MoE 通过把已有稠密模型改造为 MoE,在保持或提升性能的同时显著提升计算参数效率,激活参数更少也能匹配更大稠密模型的表现。

这说明 upcycling 不是必然失败,关键在于训练配方、路由器初始化和学习率调度是否处理得当。

总结对比

对比项稠密模型MoE
总参数PPPE×PE \times PE×P
每 token 计算PPPk×Pk \times Pk×P
参数/计算比1E/kE/kE/k
并行方式张量并行、流水线并行天然专家并行
收敛优势稳定、简单容量大、专家专业化,但依赖数据和配方
路径做法优点缺点
Upcycling稠密权重复制成专家,加路由器继续训练复用训练成果,起点好旧权重干扰,路由器学得晚
从零训练专家和路由器随机初始化,共同演化专家分化自由,TC 下收敛快前期慢,需要更多 token
差异来源说明
TC vs ECTC 专家分化快但负载不均;EC 负载均衡但早期 token 丢失,分化慢
模型范式Decoder vs Encoder,训练目标和信息流不同
实验设置数据规模、学习率、训练配方影响追赶点

一句话:MoE 用“参数多、计算省”的稀疏架构扩大模型容量,天然支持专家并行;它往往比稠密模型收敛更快、表现更好,但依赖数据规模和训练配方。Upcycling 复用稠密权重,起点好但专家分化和路由器学习受旧权重干扰;从零训练专家分化自由,但前期慢。OLMoE 用 TC 约 25% 预算追上 upcycled,Komatsuzaki 用 EC 需约 120%,差异来自路由策略、模型范式和实验设置。Qwen1.5-MoE 证明 upcycling 在合适配方下也能成功。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询