先这样答
MoE(Mixture of Experts,混合专家)是一种稀疏的模型结构。它把 Transformer 里的部分前馈层复制成多份,每一份叫一个专家,再加一个路由器:每个 token 进来,路由器根据内容挑出少数几个专家处理它,其余专家对它完全不工作。对外看仍是同一个模型,内部每个 token 只走一条小路。
为什么新模型纷纷转向 MoE:它做到「总参数大、激活参数小」。模型的容量(能存多少知识)随总参数上涨,而每步计算量保持在较小模型的水平,推理速度和成本可控。稠密模型要变强就得整体变大,推理成本跟着一起涨;MoE 把这两件事拆开了。代价也要说清楚:所有专家推理时都必须装进显存待命,显存门槛高;训练时要做负载均衡,防止路由器把活全派给少数专家、其余闲置。
收一句:MoE 的本质是按需计算,每个 token 只用模型的一部分。它不是新概念,但在工程成熟后成了大模型扩容时兼顾能力和推理成本的常见选择。
面试官会怎么追问
- 「专家真的是不同领域的专家吗?」 不是。训练后观察,专家的分工不像职业那样清晰,没有明确的「数学专家」「代码专家」,路由是学出来的,按 token 的统计特征分群。「专家」这个名字带点误导,不必过度解读。
- 「MoE 省算力,为什么不省显存?」 省算力是因为每个 token 只过一小部分参数;不省显存是因为推理时不知道下一个 token 会路由到哪,所有专家必须常驻。所以 MoE 模型的部署瓶颈通常在显存容量,不在算力。
- 「负载均衡是什么问题?」 放任路由器自学,它会偏好少数好用的专家,这些专家被过度使用,其余荒废,模型实际退化成小模型。训练时要加均衡约束,强迫 token 相对均匀地分配到各个专家。
回答的坑
- 把 MoE 说成「多个模型各自回答再投票」。路由发生在网络内部、按 token 选择计算路径,不是多个完整模型各自生成再合并结果。
- 认为专家越多一定越强。专家多只抬高容量上限,路由质量、负载均衡、训练数据同样关键;配置不当训练不稳,是 MoE 常见的实际困难。
同系列的题
—— 本题完 ——