UniMoMo:面向推荐 MoE 的专家合并式部署加速
导语
稀疏混合专家(MoE)已经成为提升推荐模型容量的一种常见思路:每次只激活部分专家,却能在参数规模上承载更复杂的用户、物品和场景模式。但问题也随之出现——训练好的 checkpoint 仍然保存完整专家池,线上路由也要面对原有专家规模。对于高吞吐推荐服务来说,这会带来显存、延迟和部署成本压力。
UniMoMo 关注的正是这个更贴近工程落地的问题:在不额外引入专门在线压缩模块的前提下,把一个已训练好的推荐 MoE 转换成专家数量更少、仍然标准的 MoE 模型。
核心要点
-
从“参数相似”转向“功能相似”:传统合并容易比较专家权重之间的距离,但权重接近并不一定意味着对真实推荐状态的响应接近。UniMoMo 使用无标签校准集,让不同专家处理相同隐藏状态,再根据输出行为判断它们是否可以合并。
-
把压缩建模为受约束图粗化问题:论文将专家合并视作在明确专家预算下的图合并过程。这样可以把“哪些专家应归为一组”转化为更系统的优化问题,而不是简单删除或平均。
-
保护高流量专家:推荐 MoE 中,不同专家被路由命中的频率并不均衡。UniMoMo 引入层自适应保护机制,根据路由曝光度限制高流量专家被随意合并,降低关键路径受损的风险。
-
合并后仍是标准 MoE:压缩后的模型不依赖额外推理插件或特殊在线组件,仍按常规 top-k MoE 方式运行。这一点对线上系统尤其重要,因为额外模块往往意味着更多延迟、维护成本和兼容性问题。
-
包含校准感知的重建步骤:针对 SwiGLU 专家合并,UniMoMo 还使用最小二乘校正来更好恢复原有中间激活,减少合并带来的表示偏移。
实验结果与意义
在 Amazon Beauty、KuaiRec 和 TenRec 三个数据集,以及 2、4、6 个 MoE block 的设置下,UniMoMo 将模型导出为 4 专家 checkpoint 后,五次运行平均的 NDCG@10 相对原模型比例达到 99.92%—102.30%,A100 实测加速为 1.28 倍—1.63 倍。更激进的 2 专家、top-1 设置下,相对比例为 98.36%—104.24%,加速提升到 1.47 倍—2.21 倍。
这些数字说明,推荐 MoE 的专家池中可能存在相当程度的功能冗余。更重要的是,UniMoMo 提供了多个服务预算下的导出路径:业务可以在质量和延迟之间选择 4 专家或 2 专家等不同版本,而不必重新设计推理架构。
当然,这类方法仍依赖校准数据能否代表真实线上分布;如果流量分布快速变化,合并策略可能需要重新评估。但从部署角度看,UniMoMo 的价值在于把 MoE 压缩做成了“离线转换 + 标准模型上线”的流程,降低了大规模推荐模型使用 MoE 的工程门槛。
评论
正在确认登录状态……
正在加载评论……