📖标题:LaDiMo: Layer-wise Distillation Inspired MoEfier
🌐来源:arXiv, 2408.04278
摘要
大型语言模型的出现彻底改变了自然语言处理,但它们日益复杂的结构导致了巨大的训练成本、资源需求和环境影响。为此,稀疏的专家混合(MoE)模型成为了密集模型的一种有前途的替代方案。由于从头开始训练MoE模型可能代价太高,最近的研究探索了利用预训练的非MoE模型的知识。然而,现有的方法存在一些限制,例如需要大量的硬件资源和数据。我们提出了一种新算法LaDiMo,它可以在最小的额外训练成本下,高效地将基于Transformer的非MoE模型转换为MoE模型。LaDiMo包括两个阶段:逐层专家构建和路由策略决策。通过利用知识蒸馏的概念,我们压缩模型并快速恢复其性能。此外,我们开发了一种自适应路由器,通过对路由权重分布进行分析,并确定一种逐层策略来平衡准确性和延迟,从而优化推理效率。我们通过仅使用100K个令牌将LLaMA2-7B模型转换为MoE模型,并减少激活参数超过20%,同时保持准确性,证明了我们方法的有效性。我们的方法为构建和部署MoE模型提供了灵活和高效的解决方案。
🛎️文章简介
🔸研究问题:如何通过稀疏的混合专家(MoE)模型提高大语言模型(LLM)的计算效率,同时减少训练成本和资源消耗。
🔸主要贡献:论文提出了一种名为LaDiMo的算法,能够在最小额外训练成本下,将Transformer的非MoE模型转换为MoE模型,并通过自适应路由策略优化推理效率。
📝重点思路
🔺相关工作
🔸MoE:模型的某些组件(即专家)专门从事不同的任务或知识领域,稀疏MoE的目的是通过仅激活一部分专家来降低计算成本。
🔸专家选择:MoE模型仅依赖于一小部分专家的激活,而专家选择策略对模型性能有显着影响,根据路由的权重来选择单个或多个专家。
🔸知识蒸馏:有大参数集的教师模型生成的类别概率被用作软目标,使较小的学生模型能够从这些输出中学习,从而实现模型的知识压缩和快速学习。
🔺论文方案
🔸思想:通过构建MoE模型并进行训练来模仿给定的非MoE模型,以在有限的文本数据集和时间下近似输出。
🔸模型拆解:基于Transformer的非MoE模型的一层,将FFN拆分为N个子矩阵,得到N个专家
🔸专家训练:借鉴分层蒸馏的思路,优化专家和原始FFN的MSE损失,用近似原始层的结果来实现模型压缩和性能恢复。
🔸路由策略:部署自适应路由器,通过分析输入令牌的路由权重分布,确定层级策略,以最小化准确性下降并减少推理延迟。
🔎分析总结
🔸部分MoE化的模型在保持高准确率的同时,提高了吞吐量。
🔸模型在参数数量几乎不变的情况下,激活参数大大减少。
💡个人观点
论文的核心思想就是将原始模型的FFN拆分为MoE来减少参数激活量。
附录