详细解释
混合专家(Mixture of Experts,缩写 MoE) 是 2023 年以后百亿级以上大模型事实上的主流架构,最早由 Google Switch Transformer 发扬光大,代表作品如 GPT-4(传闻 8×220B MoE)、Mixtral 8×7B、DeepSeek-V2、Qwen3-MoE 等。
传统稠密(Dense)模型的思路是”每一层都有一个巨大的 FFN 网络,每次 Token 流过都要把整个网络算一遍”——参数量 100% 被激活。MoE 则反其道而行:同一层里放 8/16/64 个独立的专家子网络(Expert),每个 Token 进来先过一个门控路由(Router/Gate),根据 Token 的语义选 Top-K(通常 K=1 或 2) 个专家出来算,其余专家直接跳过。等效参数量巨大,但实际激活参数量只有 1/K——显存占用不变的前提下,等效模型”记忆力”暴涨。
关键组件与数值对比
| 组件 | 作用 | 典型配置(Qwen3-4KV 参考) |
|---|---|---|
| Router / Gate | 线性层 + Softmax,输出每个专家的权重 | 64 个专家 × Top-2 激活 |
| Expert | 标准 FFN(Up-Proj → SiLU → Down-Proj) | 单个 Expert 与 Dense 层维度相同 |
| Load Balancing Loss | 让 Router 尽量”雨露均沾”,避免某一两个专家被打爆 | Aux Loss 系数 0.01 量级 |
| Token Drop | 专家负载超阈值时丢弃 Token / 转到次优专家 | 配合 Batch API 高并发使用 |
与稠密模型的成本对比(同等速度下)
| 维度 | Dense 70B | MoE 8×7B (Top-2) | 说明 |
|---|---|---|---|
| 总参数量 | 70B | ~56B(8×7B) | 总参数接近 |
| 每次激活参数 | 70B(100%) | ~14B(2×7B ≈ 25%) | 推理速度理论 3× 以上 |
| 显存需求(权重) | ~140 GB FP16 | ~120 GB FP16 | 略少,但 KV Cache 相同 |
| 预训练数据量 | 多 | 更多(MoE 需要更多数据喂饱专家) | MoE 收敛慢但上限高 |
| Weimeta 支持 | ✅ | ✅ | 唯元智创 聚合网关已对所有 MoE 模型做智能路由与 负载均衡 |
常见问题
MoE 会比 Dense 更”聪明”吗?
同等训练算力预算下通常是。但单轮生成质量取决于激活的那几个专家——如果 Router 选错了专家,这轮输出可能还不如同量级 Dense。实际使用中 MoE 的 PPL 通常比同等速度的 Dense 低 10%–30%。
用 MoE 模型我的 TPM 消耗会更少吗?
MoE 和 GQA 是同一件事吗?
不是。两者都是”降本增效”但优化点完全正交:MoE 省 FFN 的计算,GQA 省 Attention 中 KV 头的显存。两者经常同时出现在同一个模型里(如 Qwen3、Llama 3.1 405B 同时用了 MoE + GQA)。