什么是 混合专家模型?
混合专家模型(Mixture of Experts,MoE)是一种条件计算架构,由可学习或固定的路由策略为每个输入选择部分专家子网络,并组合这些专家的输出。
快速了解
| 全称 | Mixture of Experts (MoE) |
|---|---|
| 创建时间 | 1991 年由 Jacobs 等人提出,2022 年起在 LLM 中流行 |
| 规范文档 | 官方规范 |
工作原理
在许多 Transformer 语言模型中,MoE 块会用一个路由器和一组专家 FFN 替换部分稠密前馈层。路由器为 Token 状态打分,选择一个或多个专家,分发 Token 状态,再加权合并专家输出。稀疏激活可以在不让每个 Token 执行全部专家的前提下扩大总参数容量,但总参数、激活参数、FLOPs、延迟、内存和质量不能互相替代。真实系统仍需存储或分片专家权重、平衡负载、把 Token 分配聚合成高效算子,并处理跨设备通信。专家可能形成统计上的专门化,但架构本身不保证人类可读的领域分工。可阅读<a href="https://qubittool.com/zh/blog/moe-architecture-explained">混合专家模型架构指南</a>了解训练、推理与评测契约。
主要特点
- 使用条件计算为每个输入激活部分子网络
- 通常替换部分 Transformer FFN,而其他组件保持稠密或共享
- 对批量 Token 路由,按专家分组,执行专家算子,再恢复 Token 顺序
- 区分总参数、激活参数、算术量、内存、延迟和模型质量
- 需要明确负载均衡、溢出、分发、精度和设备放置策略
- 可使用专家并行和跨 Worker 的 All-to-All 类通信
常见用途
- 在限制单 Token 专家路径的同时扩大模型参数容量
- 跨分布式加速器训练稀疏语言或多模态模型
- 研究条件计算与可学习路由
- 在公开架构中组合共享专家与细粒度路由专家
- 在实测内存、延迟、质量和成本目标下部署已验证的稀疏 Checkpoint
示例
Loading code...常见问题
什么是混合专家模型 MoE?
混合专家模型是一种条件计算架构。路由器把每个输入分配给被选中的专家子网络并组合输出。在 Transformer 大模型中,专家通常是部分层内部的前馈模块,而不是彼此独立的端到端模型。
MoE 推理成本只与激活参数量有关吗?
不是。激活参数量描述被选中的权重路径,却没有计入共享层、路由、Token 重排、内存访问、通信、填充、同步和算子效率。应在目标系统上测量端到端延迟、吞吐、内存、质量与成本。
MoE 专家会分别代表不同知识领域吗?
定义上不会保证。专家可能形成不同路由分布或内部特征,也可能互相重叠,或者专门处理人类不可读的模式。给专家贴领域标签需要路由分析和受控质量证据。
什么是专家并行?
专家并行把不同专家放在不同 Worker 上。Token 状态被分发到持有所选专家的 Worker,完成计算后返回并合并。它能减少单设备的专家权重内存,但会引入通信和负载均衡约束。
如何比较 MoE 与稠密模型?
固定 Checkpoint 任务、数据、质量门禁、精度、运行时、硬件拓扑、批处理、并发与序列分布,再报告总参数与激活参数、分片质量、Prefill 和 Decode 性能、延迟分位数、内存、通信、失败率和成本。