UniPool:面向混合专家模型的全局共享专家池
UniPool: A Globally Shared Expert Pool for Mixture-of-Experts
论文信息
标题: UniPool: A Globally Shared Expert Pool for Mixture-of-Experts
作者: Minbin Huang, Han Shi, Chuanyang Zheng, et al.
发布日期: 2026-05-07
arXiv ID: 2605.06665v1
PDF 链接: 下载 PDF
3 分钟速览
研究问题:传统 MoE 模型每层都拥有独立的专家集合,专家参数必须随层数线性增长,深层专家是否存在冗余?能否将专家容量设计为可跨层复用的全局资源?
核心方法:提出 UniPool 架构,用一个全局共享的专家池取代逐层私有专家,所有层通过各自的路由器从同一池子中选择专家,并配合池级负载均衡损失和 NormRouter 实现稳定训练。
关键结果:在 182M~978M 五种规模上,UniPool 的验证损失比同等参数量的传统 MoE 最多降低 0.0386(830M 模型,见表 2);使用传统专家参数量的 41.6%~66.7% 即可匹配或超越传统 MoE。
主要局限:实验停留在 978M 参数、30B tokens 规模;未报告吞吐量等系统性能指标(附录 A);下游评估仅为零样本、任务数量有限。
适合读者:从事大规模语言模型训练、MoE 架构优化、参数效率研究的工程师和研究人员;对全局共享、负载均衡及路由设计有兴趣的深度学习者。
论文背景和研究动机
现代 MoE 模型在扩展 LLM 时,核心做法是每层自持一个专家集合,由层私有的路由器稀疏激活少量专家。这种方式将专家参数量和模型深度做了硬性绑定:增加层数必然线性增加专家参数,且不同层间的专家无法复用,即使它们可能学到相似的变换。
论文首先整理了近期关于层内专家冗余的多角度证据:Qwen 和 DeepSeek 的专家权重矩阵具有高度相似性(余弦相似度 > 0.9),将 token 重路由到最相似的同层专家几乎不损失精度,而在 Mixtral 8×7B 中剪枝约一半专家仅损失 8% 的相对质量,且冗余主要集中在深层。这些工作表明,冗余主要出在专家参数和输出上,但都只是事后压缩,没有改变分层私有的分配规则。
为了从路由器自身印证冗余,论文设计了一个简单而有力的探测实验:对三个生产级 MoE 模型(Qwen1.5‑MoE、DeepSeek‑V2‑Lite、Qwen3‑30B‑A3B),在单个深层 MoE 层内,用均匀随机选择替代原有的 top‑k 路由,并在五个下游任务上测量精度变化。随机化单层之后,三个模型的平均精度仅下降 1.0~1.6 点(表 1)。如此小的退化表明,深度层的路由决策并没有强功能分化,局部专家高度可替代。与其事后压缩冗余,不如从根本上取消逐层私有的约束,将所有层的路由指向一个全局共享的专家集合。
核心方法和技术细节
UniPool 将原本的 层、每层 个私有专家,替换为一个容量为 的全局共享池, 可灵活配置。每个层仍保留独立的路由器,但所有路由器的可选目标都是这同一个池子,第 层的输出计算变为:
其中 是全局专家,不随层变化。这样,专家参数不再被层深度捆绑,同一专家可被多个层调用,实现跨层复用。为了公平对比,默认配置设 ,使专家总容量和每 token 的活跃专家计算量与传统 MoE 完全相同,从而隔离出所有权、路由和负载均衡的差异(见表 7)。
池级辅助损失 解决了共享后负载均衡目标错位的问题。传统的 Switch 辅助损失在各层内独立计算,惩罚每层内分布不均,以确保层私有专家不被废置。共享池下,一个专家可能在某层调用极少,却在其他层频繁使用,这时强制该层平衡反而与全局参数有效利用相矛盾。UniPool 转而统计全局平均 token 比例 和平均路由概率 ,定义池级损失:
并可拆分成按层独立计算的形式(详见附录 G),实现上采用延迟一个微批次的统计方式避免跨层依赖,只更新路由器参数。这一设计使得整个池子的利用更加均衡,同时允许不同层专注于各自不同的专家子集。
NormRouter 则针对共享池下路由的稀疏性和尺度稳定性做了定制。传统 softmax 门控对 logit 幅值敏感,不同层的隐状态尺度差异可能导致路由锋利度不一致。NormRouter 采用 L2‑归一化 + ReLU + 可学习放缩因子:
其归一化使评分对输入缩放不敏感,ReLU 自然产生约一半的零评分,强化稀疏竞争;可学习的 允许每层自行调节路由强度。常数 由蒙特卡洛方法估计,使初始 top‑k 分数的量级接近 1(附录 H)。对于从大容量池子中选择少量专家,这种设计比 softmax 更为稳定。
创新点和贡献
全局专家池打破层深绑定:UniPool 首次将 MoE 的专家容量视作跨层共享的架构预算,而非逐层私有的固定开销。这使得专家参数不再随层数线性膨胀。
池级负载均衡和配套路由:提出单池全局负载均衡损失,解决了传统逐层损失在共享场景下引起的专家利用率坍塌(图 3 对比);同时将 NormRouter 适配到共享路由中,其尺度鲁棒性和天然稀疏性与大容量池选择非常契合。
子线性专家缩放:实验表明,池子只需传统逐层专家总数的 41.6%~66.7%,即可达到甚至超越传统 MoE(见图 2(a));且在更深的模型中,所需比例可以更低。这意味着专家参数量可与深度脱钩,实现更高效的参数预算分配。
路由承载力的重新激活:随机化单层路由时,UniPool 的精度降幅(4.1 点)远大于传统 MoE(1.3~1.5 点,表 4),说明共享池下的专家更加差异化和不可替代,打破了深层冗余。
实验结果分析
主要性能提升:在五种模型规模上,UniPool 的验证混杂度和困惑度均优于同等传统 MoE(表 2)。验证损失降低幅度稳定在 0.0172~0.0386 之间,同时还超越稠密基线。830M 模型(48 层)收益最大,暗示越深的模型越能从跨层专家复用中获利。零样本下游任务的整体平均准确率也都对 UniPool 有利(表 3)。
池大小作为新的缩放超参:通过训练缩池版 UniPool,验证损失与池容量的关系曲线显示,182M 模型只需 66.7% 的专家容量,469M 和 650M 只需 50%,830M 则只需 41.6%,就可超越传统 MoE(图 2(a))。这一单调递减趋势支持了 “浅层冗余少、深层冗余多” 的观察。而更细粒度的专家切分(如 32E/top‑4)也能与 UniPool 叠加获得更大增益(图 2(b) 及表 3 底部)。
组件消融(表 5):仅共享池但保留逐层辅助损失,效果反而不如传统 MoE;拆开来看,池级辅助损失和 NormRouter 各自贡献显著,两者联合达到最佳。共享范围的逐步扩大也能单调改善验证损失,全局共享(G=1)最优。
专家复用与路由分化:共享池下,一个 token 实际触及的独特专家数量比例随深度下降,从 12 层的 94.1% 逐渐减到 36 层的 82.7%(表 9),证明了跨层复用随深度增强。而相对应的路由随机化测试也确认了共享池专家的不可替代性,进一步呼应了架构去冗余的效果。
实践建议
对于希望将 UniPool 思想引入实际大模型训练的工程师,以下几点值得参考:
- 从深层开始试点共享池:深度层的冗余最为突出,可以保留浅层私有专家,仅将深层(例如后半段)改为跨层共享池,从而在不显著增加训练复杂度的情况下验证收益。
- 池级辅助损失不可省略:直接将传统逐层负载均衡应用到共享池,会导致仅少数精英专家被全局过度使用(图 3),必须替换为全局平均利用率驱动的损失。
- 路由采用 NormRouter 或类似方案:当各层共享一个大型专家池时,路由器的尺度稳定性至关重要。L2 归一化 + ReLU 可让每层自然聚焦不同专家,避免 softmax 引发的层间竞争不平衡。
- 池大小可作为调优旋钮:不必将池容量设为 ,可尝试更小的池,用节省的专家参数换取更大的模型深度或更细粒度的专家切分。实验显示,在 830M 模型上,将专家池压缩到传统容量的 41.6% 仍可获得更好效果,此比例可依据深度和所需复用程度进行网格搜索。
- 注意系统实现成本:共享池虽减少了存储参数(当缩池时),但每层需要与更大的候选集交互,对 token 调度和专家并行策略有额外开销,需结合实际并行方案评估吞吐影响,论文本身未给出此类对比(附录 A 指出)。
总体而言,UniPool 为 MoE 架构提供了一种更灵活的参数分配范式:专家不再与层数绑定,而是一个可跨层调配的全局计算资源,这为设计更高效、更节约的大型语言模型打开了新的方向。