LLM MoE 形式化探索

MoE,即大语言模型中的混合专家模型*,核心思想是对于每个输入,并不激活整个庞大的模型,而是通过一个"路由"机制,选择少数几个"专家"子网络进行处理,从而在保持模型总参数量巨大的前提下,大幅降低计算成本。

这里尝试对MoE进行形式化探索,所用示例参考自网络资料。

1. MOE

1.1 MoE核心概念

输入: ,通常是一个词或令牌的嵌入向量。

专家总数: 个专家。每个专家本身是一个前馈神经网络,其参数为

通常,每个专家具有相同的结构(例如,与标准Transformer中的FFN层相同:两个线性层和一个非线性激活)。

门控网络: ,是一个将输入映射到专家权重向量的函数。

激活的专家数: (一个远小于的超参数,通常为1、2或4)。这是每次前向传播时实际参与计算的专家数量。

1.2 前向传播

对于一个输入x,MoE层(通常替代标准Transformer中的FFN层)的输出计算如下:

步骤1:路由计算**

计算门控权重:

其中:

G(x)通常是一个简单的线性层:

  • 保留G(x)中最大的k个值。
  • 将其余个值设置为

仅对这个非负无穷的值进行计算,确保它们的和为1。

最终,是一个稀疏向量,只有k个非零值,其余为0。

步骤2:专家计算

假设被选中的k个专家的索引集合为

并行计算这些专家的输出:

步骤3:加权求和

将专家输出按门控权重加权求和,得到最终输出:

其中中对应专家的权重。

在整个前向过程中,只有k个专家被激活并需要计算,而其他E-k个专家处于"休眠"状态。这使得总计算量(FLOPs)与k成正比,而不是E。

3. 训练技术

单纯的上述形式会带来严重的训练不稳定性。

以下是核心的解决方案:

3.1 负载均衡损失

为了防止门控网络总是将流量导向少数几个热门专家,需要引入辅助损失来鼓励均匀路由。

常用的是重要性损失和负载损失。

1)重要性损失:

鼓励每个专家在一批数据中获得的权重总和相近。

其中:

  • 是专家i在一批数据中被选中的频率。
  • 是专家i在一批数据中获得的门控权重总和。
  • 是一个超参数。

2)负载均衡损失

负载均衡损失更常用,见于Switch Transformer、GShard

它直接考虑每个专家的**期望负载**,并最小化其方差。

这个辅助损失会被加到模型的主损失(如语言建模损失)上:

其中是辅助损失的系数。

3.2 路由策略与稳定性

随机路由:在训练初期加入噪声,促进探索。

容量因子:为每个专家设置一个处理令牌数的上限("容量")。超过容量的令牌会被丢弃或溢出到下一个最合适的专家。这保证了计算的可预测性,是生产系统中的必备项。

专家并行:在分布式训练中,将不同专家放在不同的设备上。门控网络的路由决策本质上是一个

All-to-All通信操作,这是MoE训练的核心通信开销。

4. MoE集成

4.1 Transformer集成

MoE层通常**直接替代Transformer解码器中的前馈网络层**。

一个标准的 MoE-Transformer Block可以描述为:

  1. 自注意力层。

  2. MoE层(替代FFN)。

  3. 残差连接和层归一化应用于每个子层。

对于一个有L层的模型,可以只在其中一部分层(例如,每隔一层或最后几层)使用MoE,其余层使用标准的稠密FFN。

4.2 MoE总结

一个大语言模型MoE层可以最简洁地定义为:

其成功部署依赖于:

  • 一个高效的稀疏门控函数G(x) 。
  • 一个强制的负载均衡约束
  • 一个支持大规模条件计算和专家并行的分布式系统。

这种架构使模型规模突破了传统稠密模型的硬件限制,成为当前构建万亿参数级别大语言模型的主流技术路径之一(如Mixtral 8x7B, DeepSeek-V3, Grok-1等)。

以下是对MoE的优势和挑战的总结。

方面 优势(形式化) 挑战(形式化)
计算效率 计算成本 : O(k⋅d_ffn) 参数量 : O(E⋅d_ffn) k≪E,实现了条件计算 内存占用:需要将所有 E个专家的参数加载到内存(或不同设备),尽管每次只用 k 个。
模型容量 总参数 ↑(例如,万亿级),但推理成本可控。 训练不稳定:需要精细设计的负载均衡损失 Laux​ 和超参数调优。
泛化能力 专家可能形成功能分化(如语法、事实、推理等),提升模型质量。 过拟合:由于每个样本只接触少量参数,可能在小型任务上过拟合。需要正则化。
系统 理论上的计算效率高。 通信瓶颈 :分布式训练中,All-to-All通信开销巨大。 推理延迟波动:不同输入激活的专家不同,导致延迟不一致。

reference


从LLM角度学习和了解MoE架构

https://blog.csdn.net/liliang199/article/details/152614783

Switch Transformers: Scaling to Trillion Parameter Models

https://arxiv.org/pdf/2101.03961

MoE(Mixture-of-Experts)大模型架构的优势是什么?为什么?

https://www.zhihu.com/tardis/bd/ans/3364787819

相关推荐
AngelPP3 小时前
OpenClaw 架构深度解析:如何把 AI 助手搬到你的个人设备上
人工智能
宅小年4 小时前
Claude Code 换成了Kimi K2.5后,我再也回不去了
人工智能·ai编程·claude
九狼4 小时前
Flutter URL Scheme 跨平台跳转
人工智能·flutter·github
ZFSS4 小时前
Kimi Chat Completion API 申请及使用
前端·人工智能
天翼云开发者社区5 小时前
春节复工福利就位!天翼云息壤2500万Tokens免费送,全品类大模型一键畅玩!
人工智能·算力服务·息壤
知识浅谈5 小时前
教你如何用 Gemini 将课本图片一键转为精美 PPT
人工智能
Ray Liang6 小时前
被低估的量化版模型,小身材也能干大事
人工智能·ai·ai助手·mindx
shengjk17 小时前
NanoClaw 深度剖析:一个"AI 原生"架构的个人助手是如何运转的?
人工智能
西门老铁9 小时前
🦞OpenClaw 让 MacMini 脱销了,而我拿出了6年陈的安卓机
人工智能