MoE 大模型量化后“走错门”:检测路由翻转很容易,判断要不要修才是难题
一篇新上线的预印本论文,将量化 MoE 模型的性能退化拆成两条相互独立的损伤路径——权重精度损失与路由决策偏移。论文的结论很直接:前者已被研究得很透,后者才是部署实践中最容易被误诊的部分。
一篇新上线的预印本论文,将量化 MoE 模型的性能退化拆成两条相互独立的损伤路径——权重精度损失与路由决策偏移。论文的结论很直接:前者已被研究得很透,后者才是部署实践中最容易被误诊的部分。
这篇论文的标题,本身就是它的核心发现:
它研究的是量化后的 MoE(Mixture-of-Experts)模型。每一层里都藏着一位路由器和多组专家,每个 token 只被送进少数几个专家。当权重从 FP16 压到 INT8/INT4,路由器也跟着变——token 可能被送进全精度模型里绝不会选的专家。这就是 route flip(路由翻转)。
只检测翻转,很简单。
对比两次前向传播的路由日志就能完成。真正难的是下一个问题:这一翻,到底伤不伤?
量化损伤 ≈ 权重精度损失。低比特噪声污染了输出,修复手段是加比特数、加量化感知训练。
损伤有两条路径。权重是一条,路由是另一条:token 被送错专家,即使权重噪声很小,也可能造成不成比例的退化。
以上为 MoE 架构与量化的通用参数,用于建立阅读背景;论文实验的具体模型与配置,以预印本原文为准。
为什么“检测”与“修复”之间,隔着答不出来的坎?
因为路由翻转不等于路由损伤。很多翻转是良性的——token 被改派给一个行为相近的邻居专家,输出几乎不变,路由偏好对量化噪声存在一定的鲁棒性。真正危险的,是把 token 送进行为显著不同的专家,这种翻转才会造成可观测的退化。
于是问题从“翻没翻”,变成了更麻烦的“这一翻,伤不伤”。
横轴表示综合难度与所需工作量,非精确度量;“容易”只意味着可自动化,“困难”意味着需要额外的实验设计。
更深一层的麻烦在于:量化是同时改变权重与路由的。端到端指标看到的是两条路径混合作用的结果——只看损失,永远分不清是谁闯的祸。要分离它们,不能靠相关观察,必须做因果干预。
论文的关键动作,是构造一个“本可以不发生”的对照状态。
把“量化权重 + 量化路由”的事实状态,与“量化权重 + 原路由”的反事实状态对比——两者唯一的差别,就是路由有没有翻转。这个差值,就是路由翻转造成的因果损伤;反过来,也能单独测出权重扰动造成的损伤。
框架落地之后,诊断会自然导向三种出口:
总损伤大、路由损伤≈0。症结在权重,加精度或量化感知训练才对症。
总损伤大、路由损伤占大头。症结在路由,应做路由校准或保留原决策。
翻转率高但损伤小。不值得修,把预算花在更痛的地方。
三种诊断出口是因果框架的自然推论,用于理解“归因之后如何决策”;实际阈值与任务定义相关。
这个问题,正在变得越来越贵。
MoE 是当前大模型摊薄推理成本的主流架构,也是端侧部署的重点对象——“只激活一部分专家”意味着更少的计算。但路由层恰恰是全模型最敏感的结构:它决定每个 token 的去向,路由决策上一个比特的变化,可能被放大成一次完全不同的计算。
也因此,论文重新审视了三条部署圈里的“旧常识”:
量化损失,加比特数就能解决。
若损伤源自路由翻转,提高权重精度未必对症。
路由翻转率是最佳监控指标。
翻转率只是信号,不是判决。
量化感知训练能覆盖一切退化。
先分清要修哪条路径,再谈训练方案。
量化竞赛的下半场,比的不是把模型压到多少 bit,而是能不能说清楚压掉的是什么。对把 MoE 推向端侧的团队而言,真正的分水岭,正在从“能压多少”转向“知道在压什么”。
论文预印本已公开上线,可对照原文精读;对正在做量化部署的团队,最直接的动作是把路由因果归因检查写进验证流程。
先归因,再修复