更改

跳到导航 跳到搜索
添加392字节 、 2025年1月28日 (二) 01:57
第25行: 第25行:  
   - 这些改进使得模型在推理任务中的表现与OpenAI的o1-1217模型相当。
 
   - 这些改进使得模型在推理任务中的表现与OpenAI的o1-1217模型相当。
   −
尽管 DeepSeek-R1-Zero 显示出了强大的推理能力,但其输出不符合人类的阅读习惯,且会混杂中英文甚至代码和数学符号,所以人类的阅读体验并不好。而使模型的输出符合人类习惯,就很适合使用微调技术。于是deepseek团队一定程度上又把SFT技术请了回来,在最初先使用少量标注数据对基模进行SFT,作为'''冷启动''',然后再进行 DeepSeek-R1-Zero 所经历的'''大规模强化学习'''<ref>微妙的是,Deepseek团队并没有说明这个大规模到底有多大规模,尤其是究竟使用了多少数据,并没有说清楚。作为参考, DeepSeekMath-Instruct-7B的强化学习阶段使用了14.4万个样本数据。R1的强化学习阶段所用的数据量应远胜这个量级。</ref>。
+
尽管 DeepSeek-R1-Zero 显示出了强大的推理能力,但其输出不符合人类的阅读习惯,且会混杂中英文甚至代码和数学符号,所以人类的阅读体验并不好。而使模型的输出符合人类习惯,就很适合使用微调技术。于是deepseek团队一定程度上又把监督微调(SFT)技术请了回来,在最初先使用少量标注数据对基模进行监督微调,作为冷启动,然后再进行 DeepSeek-R1-Zero 所经历的大规模强化学习。
   −
这次冷启动阶段的SFT和以往的“先SFT后RL”训练过程有显著区别,最大的区别在于数量上。比如DeepseekMath在RL前的SFT阶段使用了77.6万个样本,而这次的冷启动阶段只使用了几千个。也正因为冷启动阶段用于微调的样本量相对较少,所以工程人员可以精心挑选这些样本,因此它们的质量也比以往SFT阶段用到的数据要高得多。事先使用高质量数据微调后,模型在开始就会使用人类偏好的语言和思维风格进行思考,吐出对人类阅读体验友好的结果。且由于这些微调数据一般都有高质量的思维链(Chain of Thoughts),在后续的强化学习之始可以跳过不断随机摸索的阶段,快速发展出使用思维链进行复杂推理的能力。因此,少批量高质量数据的冷启动不仅能使模型输出符合人类阅读偏好,还能使模型更快收敛,获得更强的推理能力。不过即便经过了冷启动,大模型在第二阶段的在大规模强化学习过程中海水显示出语言混杂的现象。为了解决这一问题,Deepseek团队还在训练过程中加入了“语言一致性奖励”,即奖励模型尽可能使用一致的语言来思考和回答。
+
“冷启动”是人工智能领域的一个术语,用于描述人工智能模型在没有任何先前训练数据的情况下从头开始学习的情况。与 DeepSeek-R1-Zero 不同,为了避免从基础模型开始的强化学习训练早期不稳定的冷启动阶段,DeepSeek-R1 构建和收集了少量长思维链数据,收集的过程主要注重过滤掉不易读的结果。
   −
经过第一阶段得冷启动和第二阶段的大规模强化学习后,第三和第四阶段的训练分别是提高模型各方面能力的'''大规模微调'''和增强模型有用性及无害性的'''进一步强化学习'''。第三阶段和第一阶段虽然都是微调,但在目的和规模上都不一样。第一阶段的冷启动微调是为了使模型的输出更具可读性和激发其后续的思维推理潜力,而第三阶段的微调是为了提升模型的其他通用能力,比如写作,问答、翻译、角色扮演、自我反思等。为此,相比于冷启动所需的几千个数据样本,第三阶段的微调使用的80多万样本数据。这里面包括各种来源的数据,比如说训练Deepseek-v3时用到的SFT数据集。
+
这次冷启动阶段的监督微调和以往的“先监督微调后强化学习”训练过程有显著区别,最大的区别在于数量上。比如DeepseekMath在RL前的监督微调阶段使用了77.6万个样本,而这次的冷启动阶段只使用了几千个。也正因为冷启动阶段用于微调的样本量相对较少,所以工程人员可以精心挑选这些样本,因此它们的质量也比以往监督微调阶段用到的数据要高得多。事先使用高质量数据微调后,模型在开始就会使用人类偏好的语言和思维风格进行思考,吐出对人类阅读体验友好的结果。且由于这些微调数据一般都有高质量的思维链(Chain of Thoughts),在后续的强化学习之始可以跳过不断随机摸索的阶段,快速发展出使用思维链进行复杂推理的能力。因此,少批量高质量数据的冷启动不仅能使模型输出符合人类阅读偏好,还能使模型更快收敛,获得更强的推理能力。不过即便经过了冷启动,大模型在第二阶段的在大规模强化学习过程中海水显示出语言混杂的现象。为了解决这一问题,Deepseek团队还在训练过程中加入了“语言一致性奖励”,即奖励模型尽可能使用一致的语言来思考和回答。
 +
 
 +
经过第一阶段得冷启动和第二阶段的大规模强化学习后,第三和第四阶段的训练分别是提高模型各方面能力的大规模微调和增强模型有用性及无害性的进一步强化学习。第三阶段和第一阶段虽然都是微调,但在目的和规模上都不一样。第一阶段的冷启动微调是为了使模型的输出更具可读性和激发其后续的思维推理潜力,而第三阶段的微调是为了提升模型的其他通用能力,比如写作,问答、翻译、角色扮演、自我反思等。为此,相比于冷启动所需的几千个数据样本,第三阶段的微调使用的80多万样本数据。这里面包括各种来源的数据,比如说训练Deepseek-v3时用到的监督微调数据集。
    
有趣的是,这80多万样本中60多万是从之前R1的训练过程中所得的checkpoints中得来。团队人员使用prompt去让checkpoint模型做出回答,然后使用一个训练好的奖励模型来给判断哪些回答质量高可以保留,哪些质量差要被拒绝、丢弃掉,如此获得一个由这些checkpoint生成的,但质量又高于这些checkpoint平均水平的数据集,从而继续训练。这个过程也被称为拒绝采样(Rejection Sampling)。
 
有趣的是,这80多万样本中60多万是从之前R1的训练过程中所得的checkpoints中得来。团队人员使用prompt去让checkpoint模型做出回答,然后使用一个训练好的奖励模型来给判断哪些回答质量高可以保留,哪些质量差要被拒绝、丢弃掉,如此获得一个由这些checkpoint生成的,但质量又高于这些checkpoint平均水平的数据集,从而继续训练。这个过程也被称为拒绝采样(Rejection Sampling)。
第36行: 第38行:     
总的来说,Deepseek-R1的训练分为四阶段,两个SFT阶段,两个RL阶段:
 
总的来说,Deepseek-R1的训练分为四阶段,两个SFT阶段,两个RL阶段:
−
* 第一阶段:冷启动SFT,培养正确(符合人类偏好)的语言习惯、激发模型的推理潜能
  −
* 第二阶段:大规模RL,使模型涌现出强推能力
  −
* 第三阶段:大规模SFT,提高模型其他方面的通用能力
  −
* 第四阶段:进一步RL,进一步提高推理能力,有用性,和减少其输出的有害内容
     −
可见模型的主要推理能力涌现自第一和第二阶段,第三第四阶段更像都是后训练(post-training)。理论上还可以有第五阶段SFT、第六RL,第七阶段SFT、第八阶段RL,不断迭代提高模型的能力。
+
第一阶段:冷启动监督微调,培养正确(符合人类偏好)的语言习惯、激发模型的推理潜能
 +
第二阶段:大规模强化学习,本阶段专注于提升模型的推理密集任务的能力,并训练模型在回答问题时保持语言一致。
 +
第三阶段:大规模监督微调,结合更广阔领域的数据,提高模型其他方面的通用能力。本阶段还对推理任务和非推理任务进行分开训练。
 +
第四阶段:进一步RL,进一步提高推理能力,响应的有效性,并减少其输出的有害内容
 +
 
 +
可见模型的主要推理能力涌现自第一和第二阶段,第三第四阶段更像都是后训练(post-training)。理论上还可以有第五阶段监督微调、第六强化学习,第七阶段监督微调、第八阶段强化学习,不断迭代提高模型的能力。
    
===蒸馏技术===
 
===蒸馏技术===
5,443

个编辑

导航菜单