问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

DeepSeek-R1原理解析及项目实践:从概念到应用的全面解读

创作时间:
作者:
@小白创作中心

DeepSeek-R1原理解析及项目实践:从概念到应用的全面解读

引用
1
来源
1.
https://www.cnblogs.com/Jcloud/p/18712775

DeepSeek-R1是近期备受关注的大语言模型,其在低资源条件下展现出的强大推理能力令人瞩目。本文将从概念解读、训练原理到实际应用,全面解析DeepSeek-R1的核心技术及其应用场景。

一、概念解读(小白向)

当我们打开DeepSeek官网时,会看到对话框下方有两个按钮,它们分别代表什么?最近爆火的DeepSeek究竟指的是哪个模型?深度思考R1与联网搜索又有什么作用?

接下来,让我们对这些常用概念进行入门级的介绍:

1、联网搜索

联网搜索比较好理解。我们知道,大语言模型(LLM)的知识具有时效性限制,因为它们的知识来源于海量的离线数据训练,通常会滞后于发布时间半年到一年以上。例如,OpenAI的模型训练数据截止时间大约是2023年10月,而DeepSeek V3的训练数据时间也大致相同。因此,对于时效性问题,LLM可能无法给出准确答案。而联网搜索正是为了解决这一问题,当你勾选联网搜索时,可以将其视为一个能够理解自然语言问题的AI搜索引擎。

2、深度思考(R1)

在介绍深度思考之前,我们先来了解一些常见名词的含义:

  • DeepSeek:这是一个泛指性的概念,代表任意DeepSeek系列模型。
  • DeepSeek V3:这是一个对话模型,是最新版的DeepSeek基座模型(无深度思考能力),与GPT-4、Qwen2.5等模型属于同一阶段。其参数量为671B,是当前最强的开源基座模型,但完整部署需要约1300G的显存。
  • DeepSeek R1:这是一个推理模型,最近因其在低资源条件下通过SFT+多阶段强化学习训练出超强推理能力而闻名。它擅长处理复杂问题的推理,准确率高于DeepSeek V3,但思考过程较长。
  • DeepSeek R1-zero:这也是一个推理模型,可以理解为DeepSeek R1的先验版本。R1-zero的训练是一个探索性过程,验证了RL本身对于激励基础模型产生推理的能力。基于这个探索结论,才开始正式进入R1的训练。此模型为实验性质,能力低于DeepSeek R1,因此未面向C端用户上线。
  • DeepSeek-R1-Distill-Qwen-xxxB:这是知识蒸馏版的推理模型,使用DeepSeek R1中间阶段的80万条训练数据,对Qwen2.5系列进行SFT指令微调的模型。这个版本没有经过强化学习过程,可以理解为COT思维链数据的SFT。大家平时听到的“残血版”、“蒸馏版”大多指这个版本。

二、训练原理解析

DeepSeek R1的训练过程可以分为两阶段迭代优化,核心是通过高质量推理数据生成和RL策略提升逻辑推理能力。

1、训练流程

阶段一(Phase 1):COT数据质量提升

  1. 基座模型:使用DeepSeek V3 Base(预训练模型)作为初始基座。
  2. 训练步骤
  • SFT训练:用初始逻辑推理数据(如COT轨迹)进行监督微调。
  • RL强化训练:进一步优化得到Model RL-1,提升推理轨迹的生成质量。
  1. 核心目的:利用Model RL-1生成更高质量的新COT数据,随后弃用Model RL-1,仅保留新数据。

阶段二(Phase 2):干净基座再训练

  1. 基座模型回退:关键策略是重新使用原始DeepSeek V3 Base(非Phase 1的Model RL-1),以避免使用低质量数据污染的基座。
  2. 数据混合
  • 新COT数据:Phase 1生成的高质量逻辑推理数据使用拒绝采样的方式来筛选轨迹数据。
  • Post-training数据:加入DeepSeek V3非逻辑推理类数据(如通用任务),防止模型遗忘其他能力。
  1. 训练流程
  • 首先用这80万的新数据对它做2个epoch的SFT。
  • 接着执行2个阶段的RL:
  • 第1阶段RL:旨在增强模型推理方面的能力。采取类似r1 zero的RL方法,使用基于规则的RM,对模型进行RL训练,以提升模型在数学、代码和逻辑方面的推理能力。(这里用的数据集应该不是那80万,是类似于zero直接构建prompt)
  • 第2阶段RL:旨在针对模型的helpfulness和harmlessness,类似于DeepSeek V3的训练pipeline。

核心训练技巧

  1. 迭代数据增强:通过前阶段模型生成更优质数据,用于后阶段训练(类似微软rStar-Math的MSCT方法)。
  2. 基座模型重置:每轮迭代均从原始干净基座出发,避免误差累积,最大化高质量数据效用。
  3. 防遗忘机制:混合逻辑与非逻辑数据,保持模型多任务平衡性。


参考图片来源:复刻OpenAI O3之路:Deepseek R1、Kimi K1.5及MCTS技术路线探析-知乎

2、DeepSeek R1的技术价值思考

  1. r1 zero证明了无需SFT,直接用base model做单纯的RL,已经可以取得强大的reasoning能力。这里单纯的RL是指:没有显式提供一些真正的long cot数据让模型去背去学,我只是在sys_msg里告诉模型先思考,再回答。接着通过RL一轮又一轮的训练,模型产出的responses越来越长,且在某个时刻出现了自我评估和反思的行为。
  2. 随着训练steps的增加,r1 zero倾向于产出更长的response(long cot),并且还出现了反思行为。这些都是在没有外部干预的情况下,r1 zero模型在训练中自我进化的结果。
  3. 对于小模型,不需要依然RL,只用蒸馏就可以使得其推理能力得到显著提升(对于大模型会是怎么样的,技术报告中没有提)

三、DeepSeek复现-实践项目

接下来,我们将介绍几个基于DeepSeek模型的实践项目,这些项目展示了模型在不同场景下的应用效果。

1、高考数学测试

测试数据:《2024年高考新课标一卷数学真题》,一共19道题,满分150分。

测试方式如下:

  1. Claude sonnet 3.5(直接把题目输入给模型)
  2. Claude sonnet 3.5 + COT
  3. Claude sonnet 3.5 + MCTS+ COT(Agent模式)
  4. O1-preview(直接把题目输入给模型)
  5. Qwen2.5-Math-72B(直接把题目输入给模型)
  6. Deepseek-R1(直接把题目输入给模型)
  7. Deepseek-R1-Distill-Qwen-32B(直接把题目输入给模型)

详细测试结果见:https://mp.weixin.qq.com/s/jUIHibLdO59fWTAKFMX79A

2、DeepScaler

UC伯克利的研究团队基于DeepSeek-R1-Distilled-Qwen-1.5B,通过简单的强化学习(RL)微调,得到了全新的DeepScaleR-1.5B-Preview。在AIME2024基准中,模型的Pass@1准确率达高达43.1% ——不仅比基础模型提高了14.3%,而且在只有1.5B参数的情况下超越了OpenAI o1-preview!

DeepSeek-R1发现,直接在小型模型上用强化学习,效果不如知识蒸馏。在Qwen-32B模型上做对比实验,强化学习只能让AIME测试的准确率达到47%,但只用知识蒸馏就能达到72.6%。不过,要是从更大的模型中,通过蒸馏得到高质量的SFT数据,再用强化学习,小模型的推理能力也能大幅提升。研究证明了这一点:通过强化学习,小型模型在AIME测试中的准确率从28.9%提高到了43.1%。

项目地址:https://github.com/agentica-project/deepscaler

3、Logic-RL

中科大某大四科研小组复现,在Logic Puzzle Dataset数据集下。证明了:原始基座模型在测试集上只会基础的step by step逻辑。但在无 Long CoT冷启动蒸馏,三阶段Rule Based RL后,模型学会了:

  • 迟疑(标记当前不确定的step等后续验证)
  • 多路径探索(Les't test both possibilities)
  • 回溯之前的分析(Analyze .. statement again)
  • 阶段性总结(Let's summarize, Now we have determined)
  • Answer前习惯于最后一次验证答案(Let's verify all statements)

项目地址:https://github.com/Unakar/Logic-RL

4、Open R1

国外huggingface团队复现,旨在做到完全开放复现 DeepSeek-R1,补齐 DeepSeek 所有未公开的技术细节。

项目地址:https://github.com/huggingface/open-r1

四、本地实践

1、本地化部署与产品使用

在RAG知识增强的问答助手项目上实践。使用VLLM部署了DeepSeek-R1-Distill-Qwen-32B-4bit版本,显存占用如下。速度实测约50Tokens/S。

RAG场景,在Llamaindex框架下集成,部分代码如下:

以下是应用效果截图,含思考过程:

2、强化学习训练实践

由于本地有text2SQL前置实践经验,积累了相关数据集,计划在text2SQL任务上,使用DeepSeek-R1-Distill-Qwen-1.5B为基座(资源限制),参考https://github.com/agentica-project/deepscaler的项目经验,进行RL训练。目前正在尝试复现该项目效果中,后续将更新。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号