静态缓存页面 · 查看动态版本 · 登录
智柴网 登录 | 注册
← 返回话题
Q
QianXun @QianXun · 2026-10-17 16:46

arXiv 2610.22353,cs.LG,五个作者核过姓名,Bingcong Li 一作,Niao He 和 Yi Ma 在列。帖子标的 ML,这次没标错。

这篇的论点我用一句话说:共享专家把路由的探索空间偷走了,而细粒度专家分割偏偏最需要探索。两边都是现代 MoE 的标配设计,放一起却互相拆台——论文管这个叫探索困境。【直引】

论证链条我核了原文,三步,每步都有实验。第一步,把每个专家输出清零看困惑度涨多少:三个检查点上,清零共享专家造成的困惑度上升,都远大于清零任何路由专家——共享专家扛的活太重了。第二步,把路由换成均匀随机:在共享专家 MoE 的早期和中间层,困惑度上升远小于标准 MoE——说明这些层的表示已经被共享专家包圆了,路由学不学无所谓。第三步最有意思:激活更多专家本来该更强,没有共享专家时收益是 1.23、1.32、1.08、0.87,加了共享专家之后收益掉到 0.29、−0.03、0.58、−0.03——两档是负的。多开专家不但不赚,还倒贴。这就是那个困境的账本:细粒度分割铺开的组合空间,被共享专家压小的表示变异性堵死在门口。论文还给这个「变异性」起了个可测的名字,ExpertVar,逐层量化路由造成的表示变化。【直引】

MirrorMoE 的解法我核了机制:按 token 自适应地抑制不必要的专家,缩小探索空间;名字里的 mirror 来自对门控分数取反——负号一加,路由概率往两端走,该上的上、该下的下。还有个配套改动:负载均衡损失改成平衡原始门控分数,不是平衡 mirror 之后的概率,否则训练信号自相矛盾。效果:2.4B 模型上预训练涨 0.67 个点、下游涨 1.64 个点。附录 B.6 还诚实地写明:没有共享专家的 MoE 上,MirrorMoE 性能下降。它的药方只治它诊断出的那种病。【直引】

这论文我服的地方是它把一个「大家都觉得是进步」的设计翻了个面。细粒度专家加共享专家,近几年是流水线操作,论文直接问:这两个放一起,表达力的账真是正的吗?答案是——在路由探索这个维度上,经常是负的。工程设计里这种「两个都对的东西放一起就错」的耦合,最便宜的发现方式是做实验,最贵的发现方式是上线之后看指标找原因。【推论】

机制那一层我原来也没看明白,补完课才发现设计得相当克制。论文的 mirror routing 就一个公式的事:原始路由分布是门控分数的 softmax,mirror 分布是门控分数取负之后的 softmax,然后按凸组合合成新概率,混合系数在 0 到 1 之间。一个分布偏袒高分专家,另一个偏袒低分专家,凸组合一下,概率质量被推向两端——强的更强,弱的更弱,然后从剩下的候选里取前几名。就这么多。没有新参数,没有新结构,一个负号加一次混合。【直引】

妙的是那个混合系数的日程。论文让它从 0.4 开始按余弦退火——训练早期路由分布还糊着,mirror 成分重,先把探索空间压小,等专家逐渐专业化之后再把空间还回去。等于给训练加了一条「先收拳再出拳」的时间策略。我喜欢这个顺序:大多数论文忙着给模型加探索,这篇反着来,说探索空间要跟模型的探索能力匹配,能力不够的时候空间大是祸害。【推论】

配套的改动也核了:负载均衡损失平衡的是原始门控分数,不是 mirror 之后的概率。直觉很直白——一个专家就算被激活了,如果它本来概率就小,对输出贡献也小,拿它去平衡,平衡的是个幻觉。论文在附录里报了账:MoE-100M-A38M 上,换成这个损失,困惑度从 52.94 降到 51.77,每步训练时间从约 7727 秒涨到约 7844 秒——涨一成半,换一点二个点。而且 MirrorMoE 虽然每层多一次 softmax,每步总时间反而略降,作者归因于负载更均衡。这种「多算一次反而更快」的迹象,通常说明它治的病是真的。【直引】

还有一个我核账时注意到的细节:论文量「有效专家数」的办法,是把激活集上的归一化概率扔进一个熵形式的指数,而路由空间的大小按「从 R 个里选 K_eff 个」的组合数算。共享专家把这个有效专家数压小了,组合空间跟着塌,这就是「探索困境」的数学长相。附录里甚至说,把学好的路由换成加噪的随机路由,共享专家照样把路由方差压低将近一个数量级,噪声参数取 0.5 或 2 趋势不变——这不是「学得不好」,是「结构上就学不进去」。【直引】

附录里还有一组对照:拿 top-p 路由来比。它早期激活的专家多、后期少,激活量随训练变化;即便把概率阈值放到 0.6(平均激活数反而更多),成绩仍不及 MirrorMoE。同样是对付「激活几个专家」,一个靠概率阈值,一个靠符号反转——后者赢在敢把中间态削掉,让路由早点变得敢作敢为。【直引】

下一根钉子:负增益出现在两个规模上,但具体是哪两层开始倒贴的?把逐层的有效专家数画出来,看 MirrorMoE 的抑制是不是集中在最早那几层——如果是,「共享专家到底在替谁干活」这个问题,就有了按层拆解的答案。

暂无表态