Nemotron预训练中的任务种子合成问答生成
NVIDIA团队开发了一种任务种子合成数据生成(SDG)管道,利用公开任务训练集作为种子,生成结构化的问答数据,用于Nemotron系列模型的后期训练。在100B token的延续实验中,该方法在MMLU-Pro、代码、常识理解和GPQA上分别提升+1.8、+1.9、+1.6和+11.1,数学保持稳定。管道包括种子收集、记录归一化、生成类似示例、答案丰富和过滤打包五个阶段,并通过迁移学习增强模型的可复用行为。
NVIDIA团队近期发表了一篇技术文章,详细介绍了他们在Nemotron系列模型预训练中采用的一种任务种子合成问答生成方法(Task-Seeded Synthetic Q&A Generation)。该方法的核心是使用公开任务训练集作为“种子”,通过一个五阶段管道生成结构化的合成问答数据,用于模型的后期训练阶段,以提升模型在知识密集和推理密集任务上的表现。
在大型语言模型开发中,数据质量与多样性至关重要。传统的网络、代码、数学等多领域数据提供了广泛的基础,但缺乏结构化的学习信号。任务种子合成数据通过提供紧凑、任务结构化的示例来弥补这一不足,这些示例包含明确的信息需求、受限的响应空间以及将证据与答案联系起来的解释。在一项针对Nemotron-3 Nano模型的100B token延续实验中,采用任务种子SDG使得MMLU-Pro提升了1.8分,平均代码能力提升了1.9分,常识理解提升了1.6分,而GPQA更是大幅提升了11.1分,同时平均数学能力保持稳定。
该生成管道包括五个关键阶段:首先,从lm-eval-harness中收集约70个公开任务数据集(包含约700个子任务)的合适训练分割作为种子;其次,将这些异构任务记录归一化为统一的JSONL格式;第三,基于种子示例生成新的、内容不同但能力保持的问题;第四,通过添加最终答案、相关推理或上下文来丰富答案;最后,通过模式检查、格式检查、去重和任务特定的答案验证进行过滤和打包。对于多项选择任务,验证更为直接,而生成式任务则需要更谨慎的处理。
管道的设计理念基于迁移学习:通过覆盖多个任务领域(如知识密集型和推理密集型),模型可以从广泛的种子任务中学习可复用的行为,例如识别信息需求、应用领域知识、区分候选答案、遵循响应约束、进行多步推理等。这种跨任务家族的迁移学习不仅避免了模型过度适应单一数据源的表面格式,还增强了模型在不同任务间的泛化能力。
实验结果表明,上下文和推理的加入显著提升了合成数据的效果。在内部消融实验中,上下文丰富版本在ARC-Challenge、CommonsenseQA、PIQA等基准上均有提升,尤其是GPQA-Diamond CoT从34.85提升至45.96,MMLU-Pro 5-shot从64.45提升至66.89。这证明了答案本身作为训练信号的局限性,而增加任务相关的知识和推理路径可以更有效地指导模型学习。
在实际训练中,任务种子合成数据被混合到Nemotron系列模型的后期训练中。100B token的延续实验显示,该方法在多个能力组上带来提升,且提升不仅限于直接相关的任务。例如,虽然MMLU-Pro和GPQA的改进显著,但代码和常识理解也同样受益,而数学能力保持稳定。这表明任务种子数据能够带来广泛的泛化能力提升,而非仅仅针对特定基准。
团队总结了几个实践发现:广泛的种子覆盖有助于泛化;上下文和推理增强答案的价值;输出格式(如答案文字而非选项标签)显著影响训练信号;多项选择任务易于验证而生成任务需谨慎处理;混合比例需要精心设计以避免大任务主导;基准改进应与广泛能力保留一并评估。总之,任务种子合成数据为模型构建者提供了一种实用的手段,能够有针对性地提升后期训练中所需的关键技能。