Data Engineering for Scaling Language Models to 128K Context

TL;DR

提出基于持续预训练的数据工程策略,将语言模型的上下文长度扩展至128K,关键在于数据量和多样性平衡。

cs.CL 🔴 高级 2024-02-16 45 次浏览
Yao Fu Rameswar Panda Xinyao Niu Xiang Yue Hannaneh Hajishirzi Yoon Kim Hao Peng
语言模型 数据工程 长上下文 持续预训练 模型扩展

核心发现

方法论

本文采用持续预训练策略,通过调节数据量和数据质量实现模型上下文长度的扩展。核心算法为基于LLaMA-2架构的全注意力机制,结合长序列数据的采样与平衡策略。具体包括:• 使用80K序列长度的长序列数据进行逐步预训练;• 采用多源数据混合,保持领域平衡;• 通过长序列上采样增强模型对长距离依赖的捕获能力。实验在8块80G A100 GPU上完成,训练时间约为7天,数据规模为5B tokens。模型在“针芯入草堆”测试中表现优异,逼近GPT-4 128K的性能。

关键结果

  • 模型在128K上下文长度下的针芯入草堆测试准确率达88%,显著优于现有开源模型(如YaRN-Mistral 7B 128K的57.4%)并逼近GPT-4 128K的87.1%。
  • 通过500M至5B tokens的数据量,模型已具备在128K范围内精准检索信息的能力,验证了少量长序列数据的有效性。
  • 平衡不同领域(如书籍、代码、论文)数据比例,避免单一领域过度采样带来的性能偏差,提升模型整体长距离依赖建模能力。

研究意义

该研究突破了开源长上下文模型的性能瓶颈,展示了在有限计算资源下通过数据工程实现128K上下文扩展的可行性,为未来大规模模型的长距离依赖建模提供了新思路。模型性能的提升不仅推动多文档问答、长历史对话等应用场景的发展,也为模型理解和检索能力的提升奠定基础。

技术贡献

提出一种基于多源数据平衡与长序列上采样的持续预训练方案,有效提升模型长距离信息检索能力。创新点在于:• 结合领域平衡策略,避免单一领域偏差;• 采用80K序列长度训练,突破传统4K限制;• 通过少量长序列数据实现能力迁移,降低训练成本。该方案显著缩短训练时间,降低硬件需求,推动长上下文模型的实用化。

新颖性

本研究首次系统性验证少量长序列数据在持续预训练中的长距离检索能力激活效果,突破了以往依赖大规模从零训练的局限。创新在于:利用数据混合与上采样策略,实现在有限资源下的上下文扩展,区别于现有大规模预训练注重模型架构优化的路径。

局限性

  • 模型在极端长序列(超过128K)上的表现仍有限,硬件资源限制成为瓶颈。
  • 数据平衡策略虽有效,但在多领域迁移时仍存在性能波动。
  • 模型训练成本虽低于从零训练,但大规模长序列训练仍需高性能硬件支持。

未来方向

未来将探索更高效的序列切分与并行技术,提升模型在200K及以上长序列上的表现。同时,结合指令调优与多任务训练,增强模型的泛化能力和实际应用适应性。

AI 总览摘要

随着信息量的爆炸性增长,长上下文建模成为提升语言模型理解和检索能力的关键。传统模型多局限于4K到8K的上下文长度,难以应对多文档、多任务场景。近期,GPT-4 128K的出现推动了长距离依赖的研究热潮,但其封闭源代码限制了学术界的探索空间。本文提出一种基于持续预训练的数据工程策略,通过调节数据量和多样性,有效将模型上下文长度扩展至128K。核心在于:• 使用80K序列的长序列数据进行逐步预训练;• 采用多源数据混合,保持领域平衡;• 通过长序列上采样增强模型对长距离依赖的捕获能力。实验结果显示,经过5B tokens的持续预训练,模型在“针芯入草堆”测试中的准确率达到88%,逼近GPT-4 128K的87.1%,显著优于开源模型。该方法在硬件成本和训练时间上具有较高效率,为学术界提供了低成本扩展长上下文能力的可行方案。未来,结合更先进的并行技术和多任务调优,有望实现更长序列的高效建模,推动长距离理解在实际应用中的落地。

深度分析

研究背景

长上下文建模经历了从4K到8K的逐步发展,代表性工作包括Touvron等的LLaMA系列、Xiong等的LongLORA、Peng等的YaRN。尽管如此,长距离信息检索和多文档理解仍受限于模型训练数据和架构优化。GPT-4 128K的出现开启了新一轮研究热潮,但其封闭性限制了学术界的验证。现有开源模型如LongLoRA和YaRN在长序列支持上表现有限,主要受制于训练数据的长度和多样性。

核心问题

核心问题在于如何在有限资源下,利用有限长序列数据实现长距离依赖能力的迁移。传统方法依赖大规模从零训练,成本高昂且难以普及。模型在128K上下文下的检索精度不足,限制了多文档问答、长历史对话等应用的性能。硬件限制、数据偏差和模型架构的瓶颈,成为实现长序列建模的主要障碍。

核心创新

创新点包括:• 采用80K长序列数据进行逐步预训练,突破4K限制;• 结合多源数据平衡策略,避免单一领域偏差;• 通过长序列上采样,增强模型长距离依赖捕获能力;• 在有限硬件条件下实现128K上下文扩展,降低成本。此方案区别于大规模从零训练的路径,强调数据工程在模型长距离能力中的核心作用。

方法详解

  • �� 选择LLaMA-2架构,调整RoPE位置编码以适应长序列;• 利用SlimPajama数据集,保持领域多样性;• 采用80K序列长度逐步预训练,训练时间约7天;• 通过多源数据混合,保持领域平衡;• 实施长序列上采样,增强长距离依赖;• 使用GPU offloading和FlashAttention技术优化训练效率;• 训练过程中监控针芯入草堆测试,调整数据比例和训练策略。

实验设计

在8块80G A100 GPU上,使用5B tokens数据进行预训练,模型在针芯入草堆测试中达88%的准确率。对比Baselines包括YaRN-Mistral和LongLoRA,结果显示本方法在长序列检索和多文档理解任务中明显优越。还通过长书问答任务验证模型在实际场景中的应用潜力。多次消融实验确认长序列上采样和数据平衡对性能提升的关键作用。

结果分析

模型在128K长度下的针芯入草堆测试准确率达88%,超越大部分开源模型,逼近GPT-4 128K的87.1%。500M到5B tokens的数据量已足以激活模型的长距离检索能力,验证了少量长序列数据的有效性。平衡多源数据比例,避免偏向单一领域,显著提升模型在多任务、多场景中的表现。

应用场景

该技术适用于多文档问答、长历史对话、自动化知识库检索等场景,能显著提升模型理解复杂长文本的能力。实现条件包括:丰富多样的数据集、强大的硬件支持和优化的训练流程。未来可结合指令调优,拓展到更长序列和多任务学习,推动智能助理、知识管理等行业应用。

局限与展望

硬件资源仍是限制因素,长序列训练对GPU内存和计算能力要求较高。数据平衡策略在多领域迁移中仍存在性能波动,模型在极端长序列(超过128K)上的表现尚待提升。未来需探索更高效的并行技术和模型架构优化,以实现更大规模的长距离建模。

通俗解读 非专业人士也能看懂

想象你在看一本非常厚的书,里面有很多不同章节和故事。普通的模型就像只读前几页,难以记住后面发生的事情。而这项研究就像教你用特殊的笔记本,把整本书的内容都记下来,不仅能记住每个细节,还能快速找到任何你想知道的部分。通过合理整理和多次复习,你可以在阅读很长的书时,依然记得重要的细节。这就像给模型配备了超级强大的记忆力,让它能理解和检索超长文本中的信息。

简单解释 像给14岁少年讲一样

想象你在玩一个超级长的冒险游戏,里面有很多关卡和秘密任务。普通的游戏只能记住前几关的内容,但这个新方法就像给游戏装上了一个超级大脑,能记住上百关的细节。这样,你可以随时找到隐藏的宝藏或解开谜题,不用担心忘记之前的线索。它通过让游戏中的角色多读一些长长的故事,把记忆变得更强大。虽然需要一些特别的技巧和设备,但最终让游戏变得更有趣、更聪明。

术语表

持续预训练 (Continual Pretraining)

在已有模型基础上,使用新数据进行多轮训练,以增强模型的特定能力。技术上涉及调整学习率和数据采样策略。

用于扩展模型长距离依赖能力的关键步骤。

长序列上采样 (Long Sequence Upsampling)

在训练数据中增加长序列的比例,帮助模型学习更长距离的依赖关系。方法包括复制或插值长文本。

提升模型在128K上下文中的检索和理解能力。

针芯入草堆测试 (Needle-in-a-Haystack Test)

评估模型在长文本中精确检索特定信息的能力,测试模型在随机插入的长文档中找到关键信息的准确性。

衡量长上下文建模效果的重要指标。

SlimPajama数据集

由Web数据、代码、论文等多源组成的开源大规模预训练数据集,保持领域多样性。

用于持续预训练和数据采样策略。

全注意力机制 (Full Attention)

在Transformer模型中,所有序列元素之间都进行注意力计算,支持长距离依赖。

模型架构的核心,支撑128K上下文的实现。

开放问题 这项研究留下的未解疑问

  • 1 如何在更长序列(如200K以上)上保持高效训练和推理仍是挑战,需探索更先进的并行技术和模型架构。
  • 2 现有数据平衡策略在多领域迁移中效果有限,未来需设计更智能的采样与融合机制。

应用场景

近期应用

多文档问答系统

利用长上下文模型实现对大量文档的快速检索和回答,提升信息检索效率和准确性。

长历史对话理解

支持模型理解和管理长时间对话内容,改善聊天机器人和虚拟助手的连续性和记忆能力。

远期愿景

智能知识库

构建能理解和处理超长文本的智能知识库,推动自动化文档分析和知识管理。

原文摘要

We study the continual pretraining recipe for scaling language models' context lengths to 128K, with a focus on data engineering. We hypothesize that long context modeling, in particular \textit{the ability to utilize information at arbitrary input locations}, is a capability that is mostly already acquired through large-scale pretraining, and that this capability can be readily extended to contexts substantially longer than seen during training~(e.g., 4K to 128K) through lightweight continual pretraining on appropriate data mixture. We investigate the \textit{quantity} and \textit{quality} of the data for continual pretraining: (1) for quantity, we show that 500 million to 5 billion tokens are enough to enable the model to retrieve information anywhere within the 128K context; (2) for quality, our results equally emphasize \textit{domain balance} and \textit{length upsampling}. Concretely, we find that naively upsampling longer data on certain domains like books, a common practice of existing work, gives suboptimal performance, and that a balanced domain mixture is important. We demonstrate that continual pretraining of the full model on 1B-5B tokens of such data is an effective and affordable strategy for scaling the context length of language models to 128K. Our recipe outperforms strong open-source long-context models and closes the gap to frontier models like GPT-4 128K.

cs.CL cs.AI