Control LLM: Controlled Evolution for Intelligence Retention in LLM

📄 arXiv: 2501.10979v2 📥 PDF

作者: Haichao Wei, Yunxiang Ren, Zhoutong Fu, Aman Lunia, Yi-Lin Chen, Alice Leung, Ya Xu

分类: cs.LG

发布日期: 2025-01-19 (更新: 2025-01-30)

备注: 8 pages

🔗 代码/项目: GITHUB | HUGGINGFACE


💡 一句话要点

提出Control LLM,通过可控演化提升LLM在持续学习中的智能保持能力。

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

关键词: 大型语言模型 持续学习 灾难性遗忘 知识保留 Transformer 插值策略 并行计算

📋 核心要点

  1. 大型语言模型持续学习面临灾难性遗忘问题,导致性能下降,尤其是在数学推理和编码等任务上。
  2. Control LLM通过并行Transformer块和隐藏状态插值,在学习新知识的同时,有效保留原有能力。
  3. 实验表明,Control LLM在数学、编码和多语言任务上均有显著提升,且对原有能力影响较小。

📝 摘要(中文)

大型语言模型(LLMs)需要大量的计算资源,因此在不从头开始重新训练的情况下增强其能力至关重要。该领域的一个关键挑战是灾难性遗忘(CF),它阻碍了持续预训练(CPT)和持续监督微调(CSFT)期间的性能。我们提出了Control LLM,一种新颖的方法,它利用并行预训练和扩展的Transformer块,通过插值策略对齐它们的隐藏状态。这种方法有效地保持了现有任务的性能,同时无缝地整合了新的知识。大量的实验表明了Control LLM在CPT和CSFT中的有效性。在Llama3.1-8B-Instruct上,它在数学推理(Math-Hard上+14.4%)和编码性能(MBPP-PLUS上+10%)方面取得了显著的改进。在Llama3.1-8B上,它增强了多语言能力(C-Eval上+10.6%,CMMLU上+6.8%,CMMLU-0shot-CoT上+30.2%)。它超越了现有方法,并在从同一基础模型调整的开源模型中实现了SOTA,同时使用的数据和计算量大大减少。至关重要的是,这些收益是在保持强大的原始能力的同时实现的,与开源数学和编码模型中>35%的降级相比,降级程度最小(MMLU上<4.3%)。这种方法已成功部署在LinkedIn的GenAI驱动的求职者和广告单元产品中。为了支持进一步的研究,我们向社区发布了训练和评估代码以及在公共数据集上训练的模型。

🔬 方法详解

问题定义:论文旨在解决大型语言模型在持续预训练(CPT)和持续监督微调(CSFT)过程中出现的灾难性遗忘问题。现有方法在学习新知识时,往往会显著降低模型在原有任务上的性能,导致模型能力退化。这种现象限制了LLM在实际应用中的持续改进和知识积累。

核心思路:Control LLM的核心思路是引入并行的Transformer块,并采用插值策略对齐新旧Transformer块的隐藏状态。通过这种方式,模型可以在学习新知识的同时,保留原有知识的表示,从而减轻灾难性遗忘的影响。这种并行结构允许模型在学习新知识时,不会完全覆盖原有知识,而是通过插值的方式进行融合。

技术框架:Control LLM的技术框架主要包括以下几个关键模块:1) 并行Transformer块:在原有Transformer块的基础上,增加并行的Transformer块,用于学习新的知识。2) 隐藏状态插值:通过插值策略,将新旧Transformer块的隐藏状态进行融合,从而实现知识的平滑过渡。3) 训练策略:采用特定的训练策略,例如知识蒸馏或对比学习,来优化模型的性能。整体流程是,输入数据首先经过原始的Transformer块,然后并行地输入到新增的Transformer块,最后通过插值融合两个Transformer块的输出。

关键创新:Control LLM最重要的技术创新点在于其并行Transformer块和隐藏状态插值的结合。与传统的微调方法不同,Control LLM不是直接修改原有模型的参数,而是通过增加并行的Transformer块来学习新的知识,并通过插值的方式将新旧知识进行融合。这种方法可以有效地避免灾难性遗忘,并保持模型的原有能力。

关键设计:Control LLM的关键设计包括:1) 插值系数的选择:插值系数决定了新旧知识的融合程度,需要根据具体的任务和数据集进行调整。2) 并行Transformer块的结构:并行Transformer块的结构可以与原有Transformer块相同,也可以进行修改,例如增加更多的层或使用不同的激活函数。3) 损失函数的设计:损失函数需要同时考虑新任务的性能和原有任务的性能,以实现最佳的平衡。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

Control LLM在Llama3.1-8B-Instruct上,数学推理能力(Math-Hard)提升了14.4%,编码性能(MBPP-PLUS)提升了10%。在Llama3.1-8B上,多语言能力(C-Eval)提升了10.6%,(CMMLU)提升了6.8%,(CMMLU-0shot-CoT)提升了30.2%。与现有方法相比,Control LLM在保持原有能力的同时,显著提升了新任务的性能,且使用的数据和计算资源更少。

🎯 应用场景

Control LLM具有广泛的应用前景,例如可以用于持续改进LLM在特定领域的性能,例如医疗、金融等。此外,Control LLM还可以用于构建个性化的LLM,根据用户的需求和偏好,不断学习新的知识,并保持原有的能力。该研究的实际价值在于可以降低LLM的训练成本,并提高LLM的可用性和可扩展性。未来,Control LLM有望成为LLM持续学习的重要技术手段。

📄 摘要(原文)

Large Language Models (LLMs) demand significant computational resources, making it essential to enhance their capabilities without retraining from scratch. A key challenge in this domain is \textit{catastrophic forgetting} (CF), which hampers performance during Continuous Pre-training (CPT) and Continuous Supervised Fine-Tuning (CSFT). We propose \textbf{Control LLM}, a novel approach that leverages parallel pre-trained and expanded transformer blocks, aligning their hidden-states through interpolation strategies This method effectively preserves performance on existing tasks while seamlessly integrating new knowledge. Extensive experiments demonstrate the effectiveness of Control LLM in both CPT and CSFT. On Llama3.1-8B-Instruct, it achieves significant improvements in mathematical reasoning ($+14.4\%$ on Math-Hard) and coding performance ($+10\%$ on MBPP-PLUS). On Llama3.1-8B, it enhances multilingual capabilities ($+10.6\%$ on C-Eval, $+6.8\%$ on CMMLU, and $+30.2\%$ on CMMLU-0shot-CoT). It surpasses existing methods and achieves SOTA among open-source models tuned from the same base model, using substantially less data and compute. Crucially, these gains are realized while preserving strong original capabilities, with minimal degradation ($<4.3\% \text{on MMLU}$) compared to $>35\%$ in open-source Math and Coding models. This approach has been successfully deployed in LinkedIn's GenAI-powered job seeker and Ads unit products. To support further research, we release the training and evaluation code (https://github.com/linkedin/ControlLLM) along with models trained on public datasets (https://huggingface.co/ControlLLM) to the community.