FactorLLM: Factorizing Knowledge via Mixture of Experts for Large Language Models

📄 arXiv: 2408.11855v1 📥 PDF

作者: Zhongyu Zhao, Menghang Dong, Rongyu Zhang, Wenzhao Zheng, Yunpeng Zhang, Huanrui Yang, Dalong Du, Kurt Keutzer, Shanghang Zhang

分类: cs.CL, cs.AI, cs.LG

发布日期: 2024-08-15

🔗 代码/项目: GITHUB


💡 一句话要点

FactorLLM:通过混合专家模型分解知识,提升大语言模型效率。

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 大语言模型 混合专家模型 知识分解 模型压缩 推理加速

📋 核心要点

  1. 大型语言模型中的前馈网络存在知识混淆问题,单片架构导致效率低下。
  2. FactorLLM将密集前馈网络分解为稀疏子网络,并引入混合专家路由机制。
  3. 实验表明,FactorLLM在保持性能的同时,显著提升了推理速度,降低了计算开销。

📝 摘要(中文)

最近的研究表明,大型语言模型(LLM)中的前馈网络(FFN)在存储各种语言和事实知识方面起着关键作用。传统方法由于其单片和冗余的架构而经常面临知识混淆的挑战,这需要更高效的解决方案,且计算开销最小,特别是对于LLM。本文探讨了LLM中的FFN计算范式,并引入了FactorLLM,这是一种新颖的方法,可以将训练良好的密集FFN分解为稀疏子网络,而无需任何进一步的修改,同时保持相同的性能水平。此外,我们嵌入了混合专家(MoE)的路由器,并结合我们设计的先验近似(PA)损失项,以促进专家的动态激活和知识适应,从而加速计算过程并使用最少的训练数据和微调步骤来提高性能。因此,FactorLLM能够有效地进行知识分解,并激活专门为指定任务量身定制的专家组,从而模拟人脑的交互式功能分割。在各种基准上的大量实验证明了我们提出的FactorLLM的有效性,该模型实现了与源模型相当的性能,同时获得了高达85%的模型性能,同时获得了超过30%的推理速度提升。

🔬 方法详解

问题定义:论文旨在解决大型语言模型(LLM)中前馈网络(FFN)的知识混淆和计算冗余问题。现有的FFN通常采用单片和密集的架构,导致知识存储效率低下,且计算开销大,尤其是在推理阶段。这种架构使得模型难以针对特定任务激活相关的知识子集,从而影响性能和效率。

核心思路:FactorLLM的核心思路是将训练好的密集FFN分解为多个稀疏的子网络(专家),每个专家负责存储一部分知识。通过引入混合专家(MoE)路由机制,可以动态地激活与当前任务相关的专家,从而实现知识的有效分解和利用。这种方法旨在减少计算冗余,提高推理速度,并提升模型的整体性能。

技术框架:FactorLLM的整体框架包括以下几个主要模块:1) 密集FFN分解:将预训练的密集FFN分解为多个稀疏的子网络(专家)。2) 混合专家路由:引入MoE路由机制,根据输入动态地选择激活哪些专家。3) 先验近似(PA)损失:设计PA损失函数,用于促进专家的动态激活和知识适应。整个流程是,输入数据经过MoE路由,选择激活的专家进行计算,然后将结果进行聚合,最终输出预测结果。

关键创新:FactorLLM的关键创新在于将知识分解的思想引入到LLM的FFN中,并结合MoE路由机制实现了知识的动态激活和利用。与传统的单片FFN相比,FactorLLM能够更有效地存储和利用知识,减少计算冗余,并提升推理速度。此外,PA损失函数的设计也促进了专家的有效训练和知识适应。

关键设计:FactorLLM的关键设计包括:1) 专家数量:需要根据具体的任务和数据集选择合适的专家数量。2) 路由函数:MoE路由函数的设计至关重要,需要保证能够有效地选择与当前任务相关的专家。3) PA损失函数:PA损失函数的设计需要平衡专家的激活频率和知识覆盖范围,避免出现某些专家被过度激活,而另一些专家则很少被激活的情况。4) 微调策略:在分解和引入MoE路由后,需要对模型进行微调,以使专家能够更好地适应新的架构和任务。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果表明,FactorLLM在各种基准测试中取得了与源模型相当的性能,同时获得了高达85%的模型性能。更重要的是,FactorLLM实现了超过30%的推理速度提升,这表明该方法能够有效地减少计算冗余,提高LLM的效率。这些结果验证了FactorLLM在知识分解和动态激活方面的有效性。

🎯 应用场景

FactorLLM适用于各种需要高效知识利用的大型语言模型应用场景,例如智能问答、文本生成、机器翻译等。该方法可以显著提升LLM的推理速度和效率,降低计算成本,使其更易于部署在资源受限的环境中。未来,FactorLLM可以进一步扩展到其他类型的神经网络和任务中,实现更广泛的应用。

📄 摘要(原文)

Recent research has demonstrated that Feed-Forward Networks (FFNs) in Large Language Models (LLMs) play a pivotal role in storing diverse linguistic and factual knowledge. Conventional methods frequently face challenges due to knowledge confusion stemming from their monolithic and redundant architectures, which calls for more efficient solutions with minimal computational overhead, particularly for LLMs. In this paper, we explore the FFN computation paradigm in LLMs and introduce FactorLLM, a novel approach that decomposes well-trained dense FFNs into sparse sub-networks without requiring any further modifications, while maintaining the same level of performance. Furthermore, we embed a router from the Mixture-of-Experts (MoE), combined with our devised Prior-Approximate (PA) loss term that facilitates the dynamic activation of experts and knowledge adaptation, thereby accelerating computational processes and enhancing performance using minimal training data and fine-tuning steps. FactorLLM thus enables efficient knowledge factorization and activates select groups of experts specifically tailored to designated tasks, emulating the interactive functional segmentation of the human brain. Extensive experiments across various benchmarks demonstrate the effectiveness of our proposed FactorLLM which achieves comparable performance to the source model securing up to 85% model performance while obtaining over a 30% increase in inference speed. Code: https://github.com/zhenwuweihe/FactorLLM.