行业资讯
Not All Experts are Equal: Efficient Expert Pruning and Skipping for Mixtu 论文精读:MoE 模型中,所有专家真的同等重要吗?
传统稠密大语言模型通常在每个 Transformer 层中使用一个完整的前馈网络。Mixture-of-Experts简称 MoE则将前馈网络替换为多个相互独立的专家并由路由器为每个 Token 选择少量专家参与计算。这种设计减少了每个 Token 实际激活的参数量但也带来了一个新的部署问题虽然每个 Token 只计算少数专家所有专家的参数仍然必须被加载到显存中。《Not All Experts are Equal》提出两种互补的方法专家剪枝永久删除作用较小的完整专家主要减少模型参数量和显存占用动态专家跳过推理时根据路由权重临时跳过贡献较小的已选专家主要减少单个 Token 的实际计算量。这篇论文最大的特点是没有继续剪单个权重而是直接利用 MoE 模型已有的模块化结构在专家粒度上进行压缩。一、论文基本信息项目内容论文题目Not All Experts are Equal: Efficient Expert Pruning and Skipping for Mixture-of-Experts Large Language Models主要方法Post-training Expert Pruning、Dynamic Expert Skipping作者Xudong Lu、Qi Liu、Yuhui Xu、Aojun Zhou、Siyuan Huang、Bo Zhang、Junchi Yan、Hongsheng Li会议ACL 2024 Main Conference Long Papers页码6159–6172DOI10.18653/v1/2024.acl-long.334主要模型Mixtral 8x7B、Mixtral 8x7B Instruct官方代码Lucky-Lance/Expert_Sparsity论文发表于 ACL 2024 长文官方代码支持逐层专家剪枝、渐进式专家剪枝和动态专家跳过并提供 C4、MATH 校准数据以及 LM Evaluation Harness 的评估流程。(ACL 论文集)二、为什么 MoE 模型还需要剪枝2.1 激活参数少不代表模型存储小Mixtral 8x7B 每个 MoE 层包含 8 个专家。对于每个 Token路由器只选择其中得分最高的两个专家参与计算因此它的单 Token 活跃参数远少于全部参数。但是推理系统仍然需要存储所有专家。论文指出Mixtral 8x7B 总参数约为 47B其中专家参数约为 45B占全部模型参数的约 96%。使用 BF16 加载原始模型论文的实验环境需要两张 A100 80GB GPU。因此MoE 实际上同时存在两种参数概念参数类型含义总参数部署时必须加载的全部专家和共享参数活跃参数一个 Token 前向传播时真正参与计算的参数MoE 减少的主要是活跃参数但模型存储、显存占用和专家加载开销仍由总参数决定。2.2 不同专家的作用并不完全相同如果每个专家都同样重要那么删除任何一个专家都会造成明显损失。但实际训练中不同专家接收到的 Token 数量不同不同专家学习到的领域知识不同某些专家可能高度专业化某些专家之间可能存在功能重叠部分专家可能训练不足或贡献较小。论文因此提出与其在所有专家内部平均删除权重不如直接找出贡献较低的完整专家并将其移除。这种做法更加符合 MoE 的模块化特征。三、首先理解 Mixtral 的专家路由在 Mixtral 8x7B 的每个 MoE 层中路由器会为当前 Token 计算 8 个专家的路由分数然后选择其中最高的两个专家。假设路由器选择了专家 A 和专家 B专家 A 的权重较高专家 B 的权重较低两个专家分别处理同一个 Token最终输出是两个专家输出的加权和。因此原始 Mixtral 对每个 Token 都会计算两个专家而不是从 8 个专家中只运行一个。论文的两个方法分别从不同角度改造这一过程专家剪枝原来每层有 8 个可选专家剪枝后可能只剩 6 个或 4 个但每个 Token 通常仍从剩余专家中选择两个。动态专家跳过每层可以继续保留原有专家但当第二个专家的路由权重明显小于第一个专家时只运行第一个专家。这两种方法处理的是两个不同问题。四、专家剪枝和动态跳过有什么区别对比维度专家剪枝动态专家跳过专家是否永久删除是否是否减少模型参数是否是否减少模型文件是否是否降低显存占用是基本不降低是否减少每 Token 活跃专家数通常不减少是决策时间部署前离线决定推理时逐 Token 决定主要目标降低存储和显存降低实际计算量是否可同时使用可以可以论文明确指出单独的专家剪枝虽然减少了总参数但每个 Token 仍然会被路由到两个专家所以理论上的每 Token MoE FLOPs 并没有同步减少。专家剪枝的速度收益主要来自更少的 GPU、通信开销和更好的内存局部性动态跳过才直接减少了部分 Token 的活跃专家数量。五、方法一后训练专家剪枝5.1 核心思想专家剪枝的基本目标是找出一组专家使删除其他专家后当前 MoE 层的输出尽可能接近原始输出。这里并不是简单统计哪个专家被路由得最少也不是比较专家权重大小而是直接测量删除一组专家后MoE 层输出发生了多大变化。因此它本质上是一种层输出重构方法。5.2 第一步准备校准数据对于通用任务论文从 C4 中抽取校准样本。默认实验将文本整理为128 个序列每个序列包含 2048 个 Token。然后使用完整的原始模型执行前向传播并缓存每一个 MoE 层的输入特征原始输出特征。这些缓存结果相当于每个 MoE 层剪枝时的参考答案。5.3 第二步枚举专家组合假设每层原来有 8 个专家希望最终保留 6 个。算法会枚举所有“从 8 个专家中选 6 个”的组合。对于每一种组合暂时删除其他两个专家删除与这些专家对应的路由分支使用缓存的层输入重新执行该 MoE 层比较剪枝后输出和原始输出之间的差异。输出差异最小的专家组合会被保留。如果希望每层只保留 4 个专家就枚举所有“8 选 4”的组合并选择重构误差最低的一组。5.4 为什么可以直接枚举对于 Mixtral每层只有 8 个专家。保留 6 个时只需要测试 28 种组合保留 4 个时需要测试 70 种组合。这个搜索空间并不算大因此可以直接穷举。论文报告Mixtral 8x7B保留 6 个专家的剪枝约需 30 分钟保留 4 个专家的剪枝约需 90 分钟。整个任务无须更新模型参数也不需要剪枝后微调。5.5 为什么逐层独立剪枝论文采用的是layer-wise pruning每一层都使用原始模型缓存的输入和输出每一层独立搜索自己的最佳专家组合最后将所有剪枝后的 MoE 层重新组合成完整模型。这种方式速度较快也避免了前面层剪枝误差持续影响后面层的搜索。论文还测试了渐进式方法先剪第一层再使用已经剪过的模型继续搜索下一层。渐进式搜索在保留 6 个专家时略好但在只保留 4 个专家时反而更差作者推测可能是小规模校准数据上的逐层过拟合。六、为什么不能直接根据路由频率剪专家一个非常自然的思路是哪个专家被路由器选择得最少就删除哪个专家。论文将这种方法称为 Frequency 基线。但实验发现基于激活频率的专家剪枝表现甚至经常低于随机剪枝。原因可能是1. 调用频率不等于不可替代性一个专家可能很少被调用但它专门处理某类困难或少见输入。删除后模型在这些样本上的能力会明显下降。2. 高频专家之间可能高度冗余两个专家可能经常被调用但功能高度相似。保留所有高频专家未必是最好的组合。3. 专家作用需要联合判断删除专家 A 是否安全可能取决于专家 B、C 是否仍然存在。单独给每个专家排一个频率分数无法表达专家之间的互补关系。4. 重构误差更接近实际影响论文的方法直接回答删除这一组专家后当前层输出变化多大这比“专家被调用多少次”更加接近最终剪枝目标。七、为什么每层删除的专家不一样专家剪枝不是从整个模型中选择两个专家并全局删除而是每个 MoE 层独立保留不同的专家组合。例如第 1 层可能保留专家 0、1、2、4、5、7第 2 层可能保留专家 0、2、3、4、6、7第 3 层可能又是另一种组合。因为不同层承担的功能不同同一个专家编号在不同层中也不是同一个网络更没有必要强制所有层删除相同编号的专家。这种逐层选择方式保留了更大的灵活性但也意味着剪枝后仍然是一个层间异构的 MoE 模型。八、通用专家剪枝的实验结果论文在 Mixtral 8x7B 和 Mixtral 8x7B Instruct 上评估了 8 个零样本任务ARC-ChallengeARC-EasyBoolQHellaSwagMMLUOpenBookQARTEWinoGrande。主要平均结果如下。模型每层保留专家数零样本平均准确率相对原模型变化Mixtral 8x7B867.58—Mixtral 8x7B664.22-3.36Mixtral 8x7B459.57-8.01Mixtral 8x7B Instruct869.98—Mixtral 8x7B Instruct667.45-2.53Mixtral 8x7B Instruct463.88-6.10从两个模型平均来看论文将其概括为删除两个专家平均下降约 2.9 个百分点删除四个专家平均下降约 7.1 个百分点。这些结果是在没有额外训练的情况下获得的。8.1 删除两个专家是比较合理的折中每层从 8 个专家减少到 6 个时专家参数减少约四分之一整体零样本性能只出现约 2.53.4 个百分点下降原本需要两张 A100 80GB 的 BF16 模型可以装入一张 80GB GPU论文测得约 1.2 倍 Token 生成加速。因此保留 6 个专家是论文中更平衡的配置。8.2 删除四个专家压缩更大但损失明显保留 4 个专家意味着每层永久删除一半专家。模型实际内存从论文统计的 89,926 MB 降至 46,879 MB约为原始模型的 52%。但零样本平均准确率下降约 68 个百分点。这说明专家之间确实存在冗余但不能认为“一半专家完全没有作用”。九、与 Wanda 2:4 权重剪枝的比较论文将每层保留 4 个专家的方案与 Wanda 2:4 半结构化权重剪枝进行比较。两者都能够移除大约一半的专家相关参数但形成的模型结构完全不同。方法删除对象是否保留专家完整性是否依赖稀疏内核Wanda 2:4每 4 个权重删除 2 个否是专家剪枝 r4每层删除 4 个完整专家是不需要特殊权重稀疏内核实验中专家剪枝在两个 Mixtral 模型上的平均任务性能均优于 Wanda 2:4。模型Wanda 2:4专家剪枝 r4Mixtral 8x7B57.5159.57Mixtral 8x7B Instruct62.8063.88Wanda 的实测速度反而低于原始模型约为 0.910.92 倍专家剪枝 r4 达到约 1.27 倍。论文将 Wanda 的结果归因于半结构化稀疏需要专门硬件和实现支持而完整删除专家更容易直接减少存储和通信。不过这并不能证明专家剪枝在所有优化后的 2:4 运行时上都必然更快。它只说明在论文使用的实现和测试环境中专家级结构化删除更容易转化为实际收益。十、方法二面向特定任务的专家剪枝10.1 通用校准数据可能选错专家使用 C4 校准的目标是尽量保持模型在通用文本分布上的行为。但假设模型最终只用于数学推理最重要的专家组合可能与通用语言任务完全不同。论文发现使用 C4 选择的 6 专家模型在 GSM8K 上Mixtral 8x7B 从 58.61 降到 41.02Mixtral 8x7B Instruct 从 63.46 降到 48.52。通用任务上还算温和的剪枝在数学任务上产生了更严重的退化。10.2 改用领域数据进行校准论文将校准数据从 C4 替换为 MATH 训练集。剪枝流程没有改变仍然缓存 MoE 层输入和输出仍然枚举专家组合仍然选择重构误差最低的组合。唯一变化是校准样本更集中于数学领域。结果说明专家重要性具有明显的任务依赖性。论文可视化发现在 Mixtral 的 32 层中C4 和 MATH 选择出完全相同专家组合的层只有 4 个。十一、数学任务结果在 GSM8K 5-shot 评估中使用 MATH 作为校准集明显优于使用 C4。模型每层保留专家数C4 校准MATH 校准Mixtral 8x7B641.0251.25Mixtral 8x7B424.8737.07Mixtral 8x7B Instruct648.5258.38Mixtral 8x7B Instruct430.4047.01这组结果说明专家是否重要取决于模型将要执行什么任务。对数学任务不重要的专家可能对通用问答很重要通用任务中看似冗余的专家也可能存储着数学领域需要的能力。11.1 领域校准仍不能完全恢复性能即使使用 MATH 校准剪枝后仍存在明显损失。例如 Mixtral 8x7B Instruct原始模型63.46保留 6 个专家并使用 MATH 校准58.38保留 4 个专家47.01。因此领域数据只能帮助选择更合适的专家组合不能完全补偿专家被永久删除造成的容量损失。11.2 微调可以进一步恢复作者又在 MetaMathQA 上对不同专家数的模型进行了完整微调。对于 Mixtral 8x7B配置GSM8KMATH8 专家81.3534.866 专家C4 剪枝79.5332.486 专家MATH 剪枝79.5333.587 专家MATH 剪枝81.2034.40保留 7 个专家并微调后结果已非常接近完整 8 专家模型。Mixtral Instruct 也出现类似趋势。但这里的代价很高论文使用 16 张 A100 80GB训练 900 步。因此前面的专家剪枝是轻量后训练方法而这部分恢复实验已经属于较昂贵的完整微调。十二、方法三动态专家跳过12.1 专家剪枝为什么没有直接减少每 Token FLOPs假设每层从 8 个专家剪到 6 个。原始模型每个 Token 从 8 个专家中选两个剪枝后仍然从 6 个专家中选两个。因此对于当前 Token 来说仍然要执行两个完整专家理论上的专家计算量没有变化。模型之所以加速主要是因为模型能够放到更少的 GPU 上专家参数读取量下降GPU 间通信减少缓存命中和内存预取更好专家块加载更加集中。论文也明确将从 6 个专家进一步剪到 4 个专家后的加速部分归因于更好的时间和空间局部性而不仅是 GPU 间通信。12.2 不是每个 Token 都需要两个专家对于一个 Token路由器选中的两个专家通常具有不同权重。例如第一专家权重0.90第二专家权重0.10。此时第二专家对最终输出的贡献可能非常有限。动态跳过方法认为如果第二专家的路由权重远小于第一专家就不运行第二专家只使用第一专家。如果两个专家权重接近例如 0.55 和 0.45则仍然执行两个专家。12.3 如何决定“差得足够大”论文为每一个 MoE 层分别设置一个阈值。校准时在校准数据上执行模型记录每个 Token 的第二专家权重与第一专家权重之比对每一层分别统计这一比例使用该层所有比例的中位数作为阈值。推理时若第二专家与第一专家的权重比低于阈值就跳过第二专家否则仍执行两个专家。使用中位数意味着在与校准集相似的数据上每层大约有一半 Token 可能只执行一个专家。不同层的阈值并不相同而且 C4 与 MATH 校准得到的阈值也存在明显差异。12.4 为什么只比较路由权重路由权重本身反映了路由器对两个专家的相对偏好。当第二专家权重很小时它对加权输出的贡献通常也更小。论文附录从输出重构误差的角度给出解释只要被跳过专家的总路由权重足够小跳过后的输出误差就可以得到控制。该原则也可以从 top-2 扩展到一般 top-k 路由。不过这种推导使用了专家输出差异相对集中的近似因此路由权重阈值仍然是一种经验化、易部署的判断而不是严格保证每个 Token 输出误差的上界。十三、动态跳过实验结果论文将动态专家跳过应用于原始 8 专家模型已剪到 6 专家的模型已剪到 4 专家的模型。通用零样本任务结果如下。Mixtral 8x7B保留专家数专家剪枝动态跳过平均准确率加速8否否67.581.00×8否是66.371.08×6是否64.221.19×6是是62.911.23×4是否59.571.27×4是是57.911.31×Mixtral 8x7B Instruct保留专家数专家剪枝动态跳过平均准确率加速8否否69.981.00×8否是69.031.08×6是否67.451.20×6是是66.041.27×4是否63.881.27×4是是62.331.33×13.1 最有价值的对比对于 Mixtral 8x7B Instruct保留 4 个专家、不跳过63.881.27×保留 6 个专家、加入跳过66.041.27×。两者速度相同但后者平均准确率高出 2.16 个百分点。这说明为了获得同样的速度不一定要永久删除更多专家。可以保留更多模型容量再根据每个 Token 的难度动态减少计算。这也是专家剪枝和动态跳过互补的核心原因。十四、为什么动态跳过不会降低显存动态跳过只是在推理过程中决定某个 Token 是否执行第二专家。所有专家参数仍然存在于模型中也必须被加载到设备。因此模型文件不会变小模型参数量不会下降静态显存基本不变只有部分 Token 的运行计算减少。所以动态跳过适合解决计算和生成速度问题而不能单独解决“模型装不进 GPU”的问题。若显存是主要限制应优先使用专家剪枝或量化若模型已经能够装入设备但生成速度不足则动态跳过更有吸引力。十五、实际显存与速度收益论文报告的实际模型内存如下。方法配置内存原模型占比原始 Mixtral8 专家89,926 MB100%Wanda2:451,214 MB57%专家剪枝保留 6 专家68,383 MB76%专家剪枝保留 4 专家46,879 MB52%保留 6 个专家后模型可由两张 A100 80GB 降到一张 A100 80GB 加载。保留 4 个专家进一步减小内存但在单卡环境中速度提升不会仅来自减少 GPU 通信作者认为内存局部性和专家块加载也发挥了作用。需要注意这些速度和内存数字依赖论文的GPU 数量模型并行方式BF16 精度Hugging Face 实现Batch 和生成配置专家加载和通信机制。换用 TensorRT-LLM、vLLM、不同量化方式或专家并行策略后绝对收益可能变化。十六、校准样本需要多少论文测试了 1、2、4、16、64、128 和 256 个 C4 序列每个序列长度为 2048用于将 Mixtral 8x7B 剪到每层 6 个专家。平均任务结果如下。校准序列数平均准确率162.63263.93463.531663.596464.3212864.2225663.9464 和 128 个序列表现最好。只使用一个序列会出现一定下降但从 2 到 256 个序列之间的变化总体不大。这说明方法对校准样本数量相对稳定但校准数据属于哪个领域比单纯增加样本数更加重要。十七、这篇论文真正证明了什么论文证明的不是Mixtral 中有一半专家完全无用可以无损删除。真实结果是删除两个专家通用平均准确率下降约 2.9 个百分点删除四个专家平均下降约 7.1 个百分点数学等特定任务对错误专家组合更加敏感动态跳过仍会造成小幅性能下降领域微调能够恢复但成本较高。论文真正证明的是MoE 专家具有不同的边际贡献而且这种贡献取决于层和任务。使用层输出重构误差可以找到比随机、调用频率和部分权重剪枝方案更好的专家子集同时路由权重不平衡可以被用于动态减少单 Token 的活跃专家数量。十八、与普通权重剪枝的区别对比维度权重剪枝本文专家剪枝最小删除单位单个权重或权重块完整专家是否改变专家数量否是模型结构规则性可能不规则高度规则是否需要稀疏算子通常需要不需要权重稀疏算子搜索自由度高相对低精度保持通常更灵活删除粒度较大模型文件是否直接缩小取决于稀疏格式是是否减少专家并行通信不一定可以专家剪枝可以被视为一种 MoE 特有的结构化剪枝。它利用专家本身就是独立 FFN 模块这一特点删除后不需要重新构建不规则矩阵。十九、与 LayerPrune 的区别对比维度LayerPrune本文专家剪枝删除对象完整 Transformer 层MoE 层中的部分专家注意力层是否删除是否模型深度是否变化是否每层宽度是否变化否专家数量减少主要选择指标跨层表示相似度MoE 层输出重构误差是否需要恢复训练通常使用 QLoRA Healing通用剪枝不需要对推理的影响每个 Token 少经过若干层每层可选专家减少LayerPrune纵向缩短模型深度本文则横向减少 MoE 层中的专家容量。两者理论上可以联合使用但性能风险也会叠加。二十、与 AST 半结构化稀疏训练的区别对比维度AST本文稀疏粒度每组权重中的 2:4完整专家是否重新训练是使用数十亿 Token通用方案无需训练掩码是否动态学习是专家组合离线确定硬件依赖依赖 2:4 支持普通 MoE 实现即可加载动态推理没有改变每 Token 专家数可动态跳过第二专家主要模型LLaMA-2 等稠密模型Mixtral MoEAST改变的是专家内部权重结构而本文改变的是专家数量与专家激活策略。二十一、方法优点21.1 符合 MoE 模型的天然结构专家本身就是独立模块删除完整专家比制造大量零权重更加规则。21.2 无需通用剪枝后的额外训练任务无关专家剪枝只需要少量校准数据和前向传播不更新模型权重。21.3 同时考虑专家组合方法不是给每个专家单独打分而是直接搜索一组专家的联合重构效果因此能够考虑专家之间的替代和互补关系。21.4 模型文件和显存真实下降保留 4 个专家时论文测得模型内存约降至原来的 52%不是只报告理论 FLOPs。21.5 给出了真实 Token 生成加速论文报告约 1.21.33 倍生成速度提升并分析了 GPU 通信和内存局部性的影响。21.6 专家剪枝和动态跳过可以互补永久删除用于减少静态容量动态跳过用于按 Token 减少计算可以在相同速度下获得比单独高比例剪枝更好的精度。二十二、方法局限22.1 枚举搜索无法扩展到大量专家直接枚举在 8 个专家时可行但若每层有 32、64 或更多专家组合数量会迅速增长。论文也将这一点列为主要局限当前方法适合每层 4 或 8 个专家的模型但面对每层 32 个专家时会非常繁重。例如从 32 个专家中保留 16 个组合数将达到数亿级已经无法直接穷举。22.2 只验证了 Mixtral 8x7B 系列实验主要覆盖Mixtral 8x7BMixtral 8x7B Instruct。没有验证 DeepSeek-MoE、Qwen-MoE、DBRX、Switch Transformer 或更多专家数量的 MoE 模型因此泛化性仍不充分。22.3 删除比例在所有层中相同当设置 r6 时每个 MoE 层都必须保留 6 个专家设置 r4 时每层都保留 4 个。但不同层的专家冗余程度可能不同某些层可以只保留 3 个某些关键层可能需要保留 7 个或全部 8 个。统一专家预算实现简单却可能不是全局最佳配置。22.4 层与层之间独立搜索每层选择的专家组合只保证当前层输出重构误差较小不直接优化完整模型的最终语言建模损失或任务准确率。前面层的微小误差可能在后面持续累积。渐进式搜索也没有稳定解决这一问题。22.5 重构误差不一定保护高级能力MoE 层输出接近并不能保证数学推理能力不变事实知识不丢失长上下文行为一致指令遵循能力保持安全和拒答能力保持。数学实验已经表明使用通用 C4 重构得到的专家组合在 GSM8K 上可能出现远大于通用任务平均值的损失。22.6 动态跳过只看路由权重路由权重低不一定表示专家输出不重要。一个权重较小的专家仍可能提供与第一专家完全不同、但关键的修正信息。论文的阈值方法没有直接计算当前 Token 的专家输出差异。22.7 动态跳过的阈值依赖校准分布阈值由 C4 或 MATH 上的路由权重比例中位数决定。当部署数据与校准集差异较大时实际跳过比例可能变化性能损失可能增大某些领域需要重新校准阈值。论文的数学任务实验也显示动态跳过在领域任务上会带来比通用任务更明显的性能下降。22.8 实际速度提升相对有限即使专家参数减少约一半端到端加速仍只有约 1.271.33 倍。原因是每个 Token 仍包含注意力计算路由器仍需执行剩余专家仍然是大型 FFNKV Cache 和其他层没有减少动态批处理中的专家分组和调度存在开销。因此参数压缩比例不能直接等同于速度提升比例。22.9 任务微调成本很高虽然基础专家剪枝不训练但论文中用于数学能力恢复的完整微调需要 16 张 A100 80GB。所以“无需训练”只适用于原始后训练剪枝流程不适用于希望进一步恢复领域能力的完整方案。二十三、这篇论文最重要的启示这篇论文真正重要的地方是区分了 MoE 部署中的三种稀疏性。第一种模型级专家稀疏永久删除完整专家减少总参数、模型文件和显存。第二种路由稀疏每个 Token 只从全部专家中选择 top-k属于原始 MoE 自带机制。第三种动态计算稀疏即使路由器选出了 top-k也可以根据权重差异进一步减少实际运行的专家数量。因此MoE 模型压缩不能只问哪些权重应该置零还应该问哪些专家需要长期保留哪些专家只对特定领域重要当前 Token 真的需要运行所有被路由器选中的专家吗论文将静态模型容量和动态 Token 计算量分开优化这一点比单一剪枝率指标更接近真实 MoE 部署问题。二十四、一句话总结《Not All Experts are Equal》先用少量校准数据缓存每个 MoE 层的原始输入输出再逐层枚举专家组合永久删除重构误差最小的低贡献专家从而降低 Mixtral 的模型文件和显存随后根据每个 Token 的两个路由权重是否高度不平衡动态跳过贡献较小的第二专家以进一步减少推理计算。实验中每层保留 6 个专家可将 Mixtral 8x7B 从两张 A100 80GB 降到一张并获得约 1.2 倍加速结合动态跳过后最高达到约 1.33 倍但专家重要性高度依赖任务枚举搜索也难以扩展到每层拥有数十个专家的新型 MoE 模型。
郑州网站建设
网页设计
企业官网