Dense 与 MoE 模型:活跃参数、吞吐量与选择场景
NVIDIA Generativ2 天前
在大模型架构中,参数如何组织与模型总参数量同样重要。常见的两类架构是 Dense 模型 和 MoE(Mixture-of-Experts,专家混合)模型。
核心问题
一个拥有 300 亿参数的模型,为什么可以在处理每个 token 时只激活约 30 亿参数,同时仍然利用更大模型的容量?
答案在于 MoE 架构:它不会让所有参数都参与每次计算,而是为每个 token 选择一部分“专家”参与处理。
Dense 模型
Dense 模型的特点是:
- 每次推理时,模型的大部分或全部参数都会参与计算;
- 计算路径相对固定;
- 架构更直接,部署和性能分析通常更容易理解。
这类模型的总参数量与每次计算需要动用的参数量更接近。
MoE 模型
MoE 模型的特点是:
- 模型包含多个专家模块;
- 每个 token 只会路由到其中一部分专家;
- 因此“总参数量”可以很大,但“每个 token 的活跃参数量”可以明显更小。
例如,Nemotron 3.5 Lightning 展示了一种情况:模型总参数量约为 300 亿,但每个 token 只激活约 30 亿参数。
为什么活跃参数重要?
在比较模型时,只看总参数量可能不够。还需要关注:
- 每个 token 实际激活多少参数;
- 这种激活方式如何影响吞吐量;
- 模型容量与计算成本之间如何权衡。
MoE 的优势在于,它试图用较少的单次计算量访问更大的模型容量;Dense 模型则更直接地使用其参数。
选择时需要关注什么?
在 Dense 与 MoE 之间选择时,应重点比较:
- 活跃参数量:每个 token 实际参与计算的参数规模;
- 吞吐量:架构设计对推理效率的影响;
- 模型容量需求:是否需要更大的参数池来覆盖更多能力;
- 部署复杂度:MoE 的路由和专家选择会带来额外架构考量。
简单来说,Dense 模型更直接,MoE 模型更强调“按需激活”。两者并不是单纯由总参数量决定优劣,而是取决于参数组织方式、活跃参数规模和目标使用场景。
