Not All Correct Answers Are Equal: Why Your Distillation Source Matters

发表时间: 2025-05 · arXiv:2505.14464 (a-m-team)

作者/机构: Xiaoyu Tian, Yunjie Ji, Haotian Wang, Shuaiting Chen, Sitong Zhao, Yiping Peng, Han Zhao, Xiangang Li, a-m-team1

A1 主要贡献

本文旨在系统性地研究不同教师模型对大型语言模型(LLM)推理能力蒸馏训练的影响。研究的核心问题是,在数据蒸馏过程中,教师模型的选择是否会显著影响学生模型的最终性能,以及高质量的推理数据应具备哪些特征。

研究目标与创新点:

  1. 构建并行蒸馏数据集:研究团队基于一个包含约189万个相同查询的语料库,从三个顶尖的教师模型(AM-Thinking-v1、Qwen3-235B-A22B 和 DeepSeek-R1)收集了完整的思维链响应,构建了三个大规模的并行蒸馏数据集。这种独特的设置能够直接比较不同模型的推理风格和数据分布。
  2. 全面的数据分析:通过对三个数据集进行严格的预处理(包括去重、过滤和去污染),团队深入分析了它们在实例分布、令牌长度和内容多样性方面的差异。分析发现,由 AM-Thinking-v1 蒸馏的数据在令牌长度上具有更大的多样性,并且具有更低的困惑度,表明其数据质量更高。
  3. 验证蒸馏源的重要性:实验证明,使用 AM-Thinking-v1 蒸馏数据训练的学生模型在多个高难度推理基准测试(如 AIME2024, AIME2025, MATH500, LiveCodeBench)上始终表现最佳。这凸显了高质量、经过验证的推理轨迹在提升开源LLM能力方面的价值。
  4. 发现自适应生成行为:研究发现,AM-Thinking-v1 蒸馏出的模型表现出一种自适应的输出行为——在处理更难的任务时生成更长的响应,而在处理较简单的任务时生成更短的响应。这种行为与训练数据的令牌分布特征(即同时包含大量短响应和长响应)相符。
  5. 资源共享:为了推动领域内的进一步研究,团队公开发布了 AM-Thinking-v1 和 Qwen3-235B-A22B 的蒸馏数据集,为开源社区提供了宝贵的资源。


图 1: AIME2024/LiveCodeBench3 上的开源模型基准测试。

A2 方法细节

本节首先介绍用于构建我们训练语料库的数据预处理和蒸馏流程,然后对生成的数据集在分布、长度和质量方面进行详细分析。

2.1 数据收集与查询处理

构建大规模训练语料库。为了支持稳健和全面的模型训练,我们通过聚合来自多个公开可用的开源语料库的数据,构建了一个大规模的训练语料库。这些语料库涵盖了广泛的自然语言处理任务,包括数学推理、代码生成、科学推理、指令遵循、多轮对话和通用推理。为了进行下游分析和有针对性的数据处理,每个数据源都被系统地分配到一个特定的任务类别。

训练数据分类。聚合的训练数据被分类如下:
* 数学推理:需要高级数值推理和多步逻辑的数据集,例如 OpenR1-Math-220k【索引9,Open r1: A fully open reproduction of deepseek-r1,2025年1月,Hugging Face】、Big-Math-RL-Verified【索引10,Big-Math: A large-scale, high-quality math dataset for reinforcement learning in language models,2025,Alon Albalak等人】、NuminaMath【索引11,Numinamath,2024,Jia LI等人,https://huggingface.co/AI-MO/NuminaMath-CoT】等 。
* 代码生成:旨在增强代码合成和编程问题解决能力的数据集,包括 PRIME【索引12,Free process rewards without process labels,2024,Lifan Yuan等人,arXiv preprint arXiv:2412.01981】、DeepCoder【索引13,Deepcoder: A fully open-source 14b coder at o3-mini level,2025,Michael Luo等人,Notion Blog】、KodCode【索引14,Kodcode: A diverse, challenging, and verifiable synthetic dataset for coding,2025,Zhangchen Xu等人】。
* 科学推理:强调自然科学领域内推理的数据集,例如 task_mmmlu【索引15,Super-naturalinstructions: Generalization via declarative instructions on 1600+ nlp tasks,2022,Yizhong Wang等人】、chemistryQA【索引16,Chemistry-qa,2021,Microsoft,GitHub repository】和 LOGIC-701【索引17,Logic-701: A benchmark dataset for logical reasoning in english and russian,2023,hivaze,Hugging Face Dataset】。
* 指令遵循 (IF):专注于指令理解和忠实执行的数据,包括 Llama-Nemotron-Post-Training-Dataset【索引18,Llama-nemotron-post-training-dataset,2025,NVIDIA,https://huggingface.co/datasets/nvidia/Llama-Nemotron-Post-Training-Dataset】、tulu-3-sft-mixture【索引19 ,Tülu 3: Pushing frontiers in open language model post-training,2024,Nathan Lambert等人】、if-eval-like 和 AutoIF。
* 多轮对话:为训练对话代理在上下文连贯一致的多轮互动中表现而策划的语料库,例如 InfinityInstruct【索引20,Infinity instruct,2024,Beijing Academy of Artificial Intelligence (BAAI),arXiv preprint arXiv:2406.XXXX】、OpenHermes-2.5【索引21,Openhermes 2.5: An open dataset of synthetic data for generalist llm assistants,2023,Teknium】和 ultra_chat【索引22,Enhancing chat language models by scaling high-quality instructional conversations,2023,Ning Ding等人】。
* 通用推理:涵盖各种开放式推理和通用知识任务的数据集,包括 evol【索引23,Wizardlm evol-instruct 70k dataset,2023,WizardLM Team,https://huggingface.co/datasets/WizardLMTeam/WizardLM_evol_instruct_70k】、open_orca【索引24 ,Openorca: An open dataset of gpt augmented flan reasoning traces,2023,Wing Lian等人,https://huggingface.co/datasets/Open-Orca/OpenOrca】、flan【索引25 ,Fine flan: Seqio to parquet so you don’t have to,2023,Bleys Goodson,https://huggingface.co/datasets/Open-Orca/FLAN】 。

查询预处理。为了保证后续模型训练的可靠性,我们对原始查询应用了严格的多阶段预处理:
1. 去重:移除了完全重复的查询(文本相同)。
2. 过滤
* 丢弃了 Unicode 字符比例高的查询,以消除损坏或无意义的样本。
* 排除了不完整或空的查询。
* 过滤掉了包含 URL 或表格结构的实例,以减少噪音和幻觉风险。

  1. 去污染:为了减轻数据污染,特别是针对核心评估集(例如 AIME2024【索引5,American invitational mathematics examination - aime,2024年2月,MAA,https://maa.org/math-competitions/american-invitational-mathematics-examination-aime】),我们进行了精确匹配过滤和语义去重。后者利 用 bge-m3 嵌入模型【索引26,Bge m3-embedding: Multi-lingual, multi-functionality, multi-granularity text embeddings through self-knowledge distillation,2024,Jianlv Chen等人】计算语义相似度,移除了与评估集相似度超过0.9阈值的查询。

2.2 数据蒸馏

数据蒸馏框架。预处理后,我们进行了大规模数据蒸馏,以进一步提升训练语料库的质量。对于每个预处理过的查询,我们采用了使用三个最先进模型(AM-Thinking-v1【索引4,Am-thinking-v1: Advancing the frontier of reasoning at 32b scale,2025,Yunjie Ji等人】、Qwen3-235B-A22B【索引3,Qwen3,2025年4月,Qwen Team】和 DeepSeek-R1【索引1,Deepseek-r1: Incentivizing reasoning capability in llms via reinforcement learning,2025,DeepSeek-AI等人】)的增量蒸馏策略。每个查询都由这三个模型独立蒸馏。对于每个模型,对同一查询的蒸馏过程会重复进行,直到生成的响应满足验证标准(即验证分数 ≥ 0.9)。因此,每个查询最多产生三个高质量的蒸馏输出,分别对应三个模型,每个输出都经过迭代优化,直到通过自动验证。

自动验证与评分。为了确保蒸馏数据的可靠性和正确性,我们为每个数据类别采用了量身定制的自动验证程序,并为每个模型生成的响应分配一个验证分数(verify_score):
* 数学推理:响应通过一个两阶段过程进行验证——首先使用 Math-Verify5,如有必要,随后使用 Qwen2.5-7B-Instruct【索引27,Qwen2 technical report,2024,An Yang等人,arXiv preprint arXiv:2407.10671】、【索引28,Qwen2.5: A party of foundation models,2024年9月,Qwen Team】。每个结果被赋予一个二元验证分数。
* 代码生成:每个代码响应在沙盒环境中使用最多10个测试用例(Python使用断言和输入输出;C++使用输入输出)进行验证,验证分数反映了通过率。
* 科学推理:使用 Qwen2.5-7B-Instruct【索引27,Qwen2 technical report,2024,An Yang等人,arXiv preprint arXiv:2407.10671】、【索引28,Qwen2.5: A party of foundation models,2024年9月,Qwen Team】评估预测答案与参考答案之间的相似性,得出一个归一化分数。
* 指令遵循:响应使用 ifeval 验证器进行验证,并使用 Qwen2.5-72B-Instruct【索引27,Qwen2 technical report,2024,An Yang等人,arXiv preprint arXiv:2407.10671】、【索引28,Qwen2.5: A party of foundation models,2024年9月,Qwen Team】补充缺失的约束。所有约束的平均通过率作为验证分数。
* 多轮对话与通用推理:使用 Decision-Tree-Reward-Llama-3.1-8B【索引29,Decision-tree-reward-llama-3.1-8b,2025,Min Li and RLHFlow Team,https://huggingface.co/RLHFlow/Decision-Tree-Reward-Llama-3.1-8B】评估连贯性、正确性和帮助性,这些指标被聚合成一个归一化的综合分数 。
所有数据类别统一使用0.9的验证分数阈值。

质量保证措施。为了进一步提高数据质量,我们引入了几项额外的验证和过滤策略:
* 基于困惑度的过滤:我们使用一个强大的32B语言模型【索引30,1.4 million open-source distilled reasoning dataset to empower large language model training,2025,Han Zhao等人,arXiv preprint arXiv:2503.19633】计算困惑度分数,每个模型采用不同的阈值。值得注意的是,从 AM-Thinking-v1 蒸馏的响应在这三个模型中表现出最低的困惑度。
* 高频Ngram过滤:识别并移除了出现超过20次的20-token ngrams,以减少模板化的冗余。
* 逻辑和结构验证:检查包括确保对话数据有偶数轮对话,以及每个样本中明确存在推理(“think”)和答案(“answer”)部分。
最终,这个过程产生了一个包含189万个查询的综合数据集,每个查询都配有从三个模型中蒸馏出的高质量、经过验证的响应。

A3 关键Observation/设计原则

引言与对比分析概述。我们对从三个不同的大型模型(AM-Thinking-v1【索引4,Am-thinking-v1: Advancing the frontier of reasoning at 32b scale,2025,Yunjie Ji等人】、Qwen3-235B-A22B【索引3,Qwen3,2025年4月,Qwen Team】和 DeepSeek-R1【索引1,Deepseek-r1: Incentivizing reasoning capability in llms via reinforcement learning,2025,DeepSeek-AI等人】)蒸馏出的训练数据进行了详细分析。这项比较分析涵盖了实例级和令牌级的输出分布、令牌长度特征以及困惑度(PPL)分布,从而深入了解每个数据集的数据质量和结构倾向。


图 2: 对AM-Thinking-v1、Qwen3-235B-A22B和DeepSeek-R1的实例级和令牌级输出分布进行了分析。通用聊天包括多轮对话和其他类型的数据。

实例与令牌级分布分析。图2显示了这些数据集在实例和令牌两个层面的输出分布。实例级分布(左上图)显示,该数据集包含高比例的通用聊天(41.8%),其次是数学(29.5%)和代码(17.1%)。相比之下,Qwen3-235B-A22B 和 DeepSeek-R1 的令牌级分布(下图)则更侧重于数学(分别为38.0%和41.0%),通用聊天和代码的比例相似。值得注意的是,AM-Thinking-v1 的令牌级分布(右上图)也强调数学(33.4%),尽管程度不及 DeepSeek-R1。在所有数据集中,科学和指令遵循(IF)数据所占份额较小。


图 3: AM-Thinking-v1、Qwen3-235B-A22B和DeepSeek-R1在数学任务上实例的令牌跨度分布。

数学实例的令牌跨度分布。此外,图3展示了专门针对数学实例的令牌跨度分布。它表明 AM-Thinking-v1 的数学数据呈现出高度分散的分布——许多短序列(低于1024个令牌)和大量非常长的序列(超过10240个令牌)。这反映了在固定查询集下令牌分布的特征,即 AM-Thinking-v1 倾向于更频繁地生成短响应和非常长的响应。相比之下,Qwen3-235B-A22B 的数据通常表现出更长的令牌跨度,表明其倾向于产生更长的响应。DeepSeek R1 的令牌跨度大多集中在1k到8k个令牌之间,显示出中等范围的响应长度。


图 4: AM-Thinking-v1、Qwen3-235B-A22B和DeepSeek-R1数据集的令牌计数分布。箱线图标示了令牌数量的分布,并标注了均值。Qwen3-235B-A22B的平均令牌数最高,其次是DeepSeek-R1和AM-Thinking-v1。

平均令牌长度分析。图4中的箱线图进一步揭示了每个实例的平均令牌长度。Qwen3-235B-A22B 数据集的平均令牌数最高(4196.7),其次是 DeepSeek-R1(3784.8)和 AM-Thinking-v1(3757.3)。这与直方图的观察结果一致,即 Qwen3-235B-A22B 强调更长的实例,而 AM-Thinking-v1 覆盖了更广泛的长度范围,包括极短和极长的序列。


图 5: AM-Thinking-v1、Qwen3-235B-A22B和DeepSeek-R1数据集的困惑度(PPL)分布。箱线图标示了PPL分布,并标注了均值。AM-Thinking-v1的平均PPL最低,表明整体质量更优。

困惑度(PPL)对比。最后,图5比较了各个数据集的困惑度(PPL)。困惑度是衡量语言模型性能的关键指标,数值越低表示质量越好。在这三个数据集中,AM-Thinking-v1 实现了最低的平均 PPL(2.5),表明其蒸馏出的输出通常质量更高。DeepSeek-R1(平均PPL = 2.9)的性能略好于 Qwen3(平均PPL = 3.0),这凸显了 AM 蒸馏数据在困惑度方面的相对强大性能。

A4 实验环境

模型架构
* 所有训练均基于 Qwen2.5-32B 基础模型进行。

训练配置
* 学习率:8e-5。
* 序列长度:最大32k,采用序列打包(sequence packing)技术。
* 批处理大小:全局批处理大小为64。
* 训练周期:2个epoch。
* 学习率调度:采用余弦预热(cosine warmup),预热步数为总步数的5%,之后学习率衰减至零。
* 数据处理:长度超过32k的样本被排除。对于多轮对话,仅使用包含推理过程的最终响应作为训练目标。

硬件配置
* 论文未明确提及具体的硬件配置(如GPU型号、数量等)。

软件配置
* 基础模型:Qwen2.5-32B。
* 评估工具
* 数学推理使用 Math-Verify5 和 Qwen2.5-7B-Instruct。
* 代码生成在沙盒环境中验证。
* 指令遵循使用 ifeval 验证器。
* 通用推理使用 Decision-Tree-Reward-Llama-3.1-8B。

数据集与基准测试

评估设置
* 生成长度上限:49,152个令牌。
* 解码策略:温度设置为0.6,top-p设置为0.95。
* 采样策略
* AIME2024/2025:每个问题生成64个输出来计算pass@1。
* LiveCodeBench:每个提示生成16个补全来计算pass@1。
* MATH500:每个提示回答1次,采样4次来计算pass@1。

A4 实验结果

跨基准测试的性能比较
如表1所示,使用从 AM-Thinking-v1 蒸馏的数据训练的模型在所有基准测试中始终获得最高的准确率。在更具挑战性的数学任务 AIME2024 和 AIME2025 上,该模型分别取得了84.3和72.2的高分,显著优于使用 Qwen3 和 DeepSeek 蒸馏数据训练的模型。此外,它在 MATH500(98.4)和 LiveCodeBench(65.9)上也处于领先地位,表明其在数学和代码推理任务上具有广泛的泛化能力。

表 1: 使用不同教师模型蒸馏数据在推理基准上的比较。

生成长度分析
为了更好地理解模型行为,我们分析了不同基准上每个样本的平均生成长度(见表2)。有趣的是,AM-Thinking-v1 蒸馏的模型在更复杂的任务上会产生明显更长的输出:AIME2024 和 AIME2025 的平均令牌数分别为15273.8和18199.2,LiveCodeBench 则为23426.9。相反,在较简单的 MATH500 基准上,其平均生成长度(3495.7)比 Qwen3-235B-A22B 蒸馏的模型更短。这种自适应的生成模式表明,AM 蒸馏的模型能更好地根据任务复杂性调整输出长度——在需要时生成更详细的解决方案,在简单问题上保持简洁。这一发现与2.3节的数据分析相符,即 AM-Thinking-v1 蒸馏数据集包含更高比例的短序列和长序列,这种数据分布的多样性可能有助于模型动态调整响应长度的能力。

表 2: 各推理基准上的平均生成长度(每个样本的令牌数)。

训练动态分析
我们通过检查图6中的损失曲线进一步比较了训练动态。AM-Thinking-v1 蒸馏模型在整个优化过程中始终保持比 Qwen3-235B-A22B 和 DeepSeek-R1 蒸馏模型更低的训练损失。这一观察结果支持了 AM-Thinking-v1 数据集为基础模型提供了更易学习、更连贯和更高质量的监督信号的观点。


图 6: AM-Thinking-v1-Distilled、DeepSeek-R1-Distilled 和 Qwen3-235B-A22B-Distilled 的损失曲线。

A5 结论

本文对开源语言模型的推理数据蒸馏进行了全面的实证研究。通过使用三个顶尖的教师模型(AM-Thinking-v1、Qwen3-235B-A22B 和 DeepSeek-R1),我们构建了一个包含189万个经过验证的推理样本的大规模并行语料库。严格的数据预处理、验证评分和质量保证措施确保了高质量训练数据的构建,为学生模型的稳健学习奠定了基础。

实证结果表明,在包括 AIME2024(84.3)、AIME2025(72.2)、MATH500(98.4)和 LiveCodeBench(65.9)在内的多个基准测试中,使用 AM-Thinking-v1 蒸馏数据训练的模型始终表现出色。

为了深入了解模型行为,我们对生成行为和训练动态进行了详细分析。我们观察到,AM 蒸馏模型表现出自适应的生成长度——在处理更难的任务时生成更长的响应,在处理较简单的基准时则生成较短的响应,这表明它能够根据任务难度进行调整。这一发现与我们早期的数据分析相符,即 AM-Thinking-v1 蒸馏数据具有广泛的令牌长度范围,为自适应推理提供了更有力的支持。

展望未来,一个有前景的研究方向是利用强化学习技术(如近端策略优化 PPO 或广义组相对策略优化 GRPO)进一步增强这些模型,以提升其推理能力和对齐性。我们公开发布了基于 AM-Thinking-v1 和 Qwen3-235B-A22B 的蒸馏数据集,以支持在开放和高性能的推理导向语言模型方面的持续研究。

方法细节中的引用汇总

以下是论文方法细节部分(第2节)引用的参考文献及其在文中的作用: