【AI学习】关于 DeepSeek-R1的几个流程图
遇见关于DeepSeek-R1的几个流程图,清晰易懂形象直观,记录于此。
流程图一
来自文章《Understanding Reasoning LLMs》,
文章链接:https://magazine.sebastianraschka.com/p/understanding-reasoning-llms?continueFlag=af07b1a0954d90469bc6f6584075da3b
《以 DeepSeek R1 为例学习“推理型大语言模型》是翻译版。摘录其中对流程的描述:
- DeepSeek-R1-Zero
该模型基于 DeepSeek 在 2024 年 12 月发布的 671B 规模预训练基础模型 DeepSeek-V3。团队对其进行强化学习(RL)训练,并使用了两类奖励作为回报信号。由于没有进行监督微调(SFT),也就是常见“RLHF”流程中的 SFT 步骤被跳过,所以他们把这称为“冷启动”的方式(Cold Start)。 - DeepSeek-R1
这是 DeepSeek 的主力推理模型,也是在 DeepSeek-R1-Zero 的基础上进一步引入额外的 SFT 阶段与更多轮的 RL 训练而成,性能优于“冷启动”的 R1-Zero。 - DeepSeek-R1-Distill
他们还用前述训练过程中的 SFT 数据来微调了 Qwen 和 Llama 等较小模型,以提升这些模型的推理能力。虽然他们把这个过程称为“蒸馏”,但并不是传统意义上的知识蒸馏,更像是用大模型的输出数据去监督微调(SFT)小模型(包括 Llama 8B 和 70B,以及 Qwen 1.5B–30B)。
流程图二
下面的流程图非常详细,出处不详
Hugging Face的复刻流程图
Hugging Face推出Open R1,这是对DeepSeek-R1的开源复现项目,复刻流程如下:
图解DeepSeek-R1
来自@爱可可-爱生活
【一图解读DeepSeek-R1】
穿越DeepSeek的技术进化史,让我们看到了一个令人振奋的AI发展轨迹:从无监督起步,到结构化优化,再到轻量级蒸馏,每一步都彰显着AI大众化的曙光。
DeepSeek-R1-Zero像个天赋异禀的孩子,通过GRPO这个高效的强化学习框架,自主掌握了思考的艺术。它展现出自反思和结构化思维的能力,虽然初期表达还略显生涩,但这正是“会走”之前必经的阶段。
随后,DeepSeek-R1借助精心设计的Chain-of-Thought数据集进行“冷启动”训练,就像接受了系统的教育,不仅改善了表达,更习得了清晰的推理步骤。通过强化学习和巧妙的奖励机制,它在数学、编程等领域的表现更趋近人类思维。
最令人瞩目的是蒸馏技术的突破它让我们看到了AI普及的希望。就像优秀导师能让学生青出于蓝,DeepSeek团队成功将大模型的智慧浓缩进更小的架构(如Qwen-7B和Llama-8B),几乎不损失性能。这意味着,高质量的AI助手将可以运行在更普及的设备上,真正服务于图书推荐、在线辅导等实际应用场景。
通俗解读 DeepSeek-R1 训练过程
来自@爱可可-爱生活
【通俗解读 DeepSeek-R1 训练过程】
DeepSeek-R1 通过创新性地结合强化学习和监督学习,以低成本实现了与现有顶尖模型相当的推理能力,挑战了传统AI训练范式,并引发了对GPU市场未来需求的重新思考。
- DeepSeek-R1的成本效益挑战英伟达的霸权地位: DeepSeek-R1 即使GPU资源有限,也能以极低的成本达到与OpenAI模型相当的性能,导致英伟达股价大幅下跌。这挑战了以往认为大规模GPU资源对于高级AI开发至关重要的传统观点。
- 杰文斯悖论与GPU需求的未来: 文章探讨了杰文斯悖论的适用性,认为AI训练效率的提高可能导致GPU的整体需求增加,而不是减少。然而,文章也提出了反驳意见,认为转向微调和开源模型可能会降低对高端GPU的需求。
- DeepSeek-R1非常规的训练方法: DeepSeek-R1采用了一种与传统的监督微调方法不同的新训练方法。它广泛利用强化学习(RL),首先使用DeepSeek-R1-Zero(纯RL),然后结合RL和监督微调的多阶段过程进行改进。
- DeepSeek-R1-Zero:用于推理的纯强化学习: DeepSeek-R1-Zero作为DeepSeek-R1的前身,展示了纯强化学习在增强LLM推理能力方面的潜力,在各种基准测试中取得了最先进的(SOTA)性能。这与直觉相反,因为强化学习通常被认为在这种用途上不如监督学习有效。
- DeepSeek-R1的多阶段训练过程: DeepSeek-R1的训练包括多阶段过程:冷启动微调以提高可读性,面向推理的强化学习,使用合成和非推理数据集进行微调,最后是结合人类偏好的强化学习。这种分层方法对模型的成功至关重要。
- 强化学习在推理中的局限性: 作者对RL在提高一般推理能力方面的无限潜力表示怀疑,认为它可能主要增强对推理模式的记忆,而不是真正的理解。这意味着仅通过强化学习所能实现的性能提升可能存在上限。
- 通过强化学习生成合成数据集: 一个关键创新是利用强化学习训练的模型生成大型合成推理数据集,然后用于监督微调。这巧妙地利用了RL和监督学习的优势。
思考:
- 强化学习的潜力与局限: 强化学习在特定任务上的高效性令人印象深刻,但其在通用推理能力上的提升可能存在瓶颈,需要结合其他方法才能发挥最大效用。
- 数据合成与模型训练: 利用强化学习模型生成合成数据,再结合监督学习进行微调,是一种值得借鉴的有效策略,可以降低数据标注成本并提升模型性能。
- 多阶段训练的价值: DeepSeek-R1的多阶段训练过程体现了模型训练策略的复杂性和精细化,这对于构建高性能模型至关重要。
‘The Layman’s Introduction to DeepSeek-R1 Training’
medium.com/thoughts-on-machine-learning/the-laymans-introduction-to-deepseek-r1-training-80d8ff7a887d
相关文章:

【AI学习】关于 DeepSeek-R1的几个流程图
遇见关于DeepSeek-R1的几个流程图,清晰易懂形象直观,记录于此。 流程图一 来自文章《Understanding Reasoning LLMs》, 文章链接:https://magazine.sebastianraschka.com/p/understanding-reasoning-llms?continueFlagaf07b1a0…...

C++ ——从C到C++
1、C的学习方法 (1)C知识点概念内容比较多,需要反复复习 (2)偏理论,有的内容不理解,可以先背下来,后续可能会理解更深 (3)学好编程要多练习,简…...

【图片转换PDF】多个文件夹里图片逐个批量转换成多个pdf软件,子文件夹单独合并转换,子文件夹单独批量转换,基于Py的解决方案
建筑设计公司在项目执行过程中,会产生大量的设计图纸、效果图、实景照片等图片资料。这些资料按照项目名称、阶段、专业等维度存放在多个文件夹和子文件夹中。 操作需求:为了方便内部管理和向客户交付完整的设计方案,公司需要将每个项目文件…...
前端学习之Flex布局
<!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Flex布局示例</title><style>.conta…...

游戏引擎学习第97天
回顾昨天并计划今天 在这期节目中,主要讲解了光照的概念,并进一步讨论了法线贴图光照的实现。节目的内容大致分为几个部分: 光照的基础概述:讨论了光的工作原理以及如何在编程图形时需要考虑光照问题。尽管这些概念并没有深入到…...
Mysql中存储引擎各种介绍以及应用场景、优缺点
概述 MySQL 提供了多种存储引擎,每种引擎有不同的特点和适用场景。以下是几种常见的 MySQL 存储引擎的详细介绍,包括它们的底层工作原理、优缺点,以及为什么 MySQL 默认选择某种引擎。 1. InnoDB 底层工作原理: 事务支持&#…...
PHP 运算符
PHP 运算符 概述 PHP 是一种广泛使用的开源服务器端脚本语言,它具有丰富的运算符集,这些运算符是编写 PHP 程序的基础。运算符用于执行各种数学、逻辑和比较操作。本篇文章将详细介绍 PHP 中常用的运算符,包括算术运算符、比较运算符、逻辑运算符、赋值运算符等。 算术运…...
Vue全流程--Vue3.0与Vue2.0响应式原理对比
Vue2中数据的响应式 需要使用Vue.set这么一个api,修改数据 需要使用Vue.delete这么一个api,删除数据 数据代理这个当面的理解可以看看我前面文章Vue全流程--数据代理的理解以及在Vue中的应用-CSDN博客 Vue3中数据的响应式 Vue3使用proxy这个api实现…...

C语言学习笔记:子函数的调用实现各个位的累加和
在C语言程序学习之初,我们都会学习如何打印 hello world,在学习时我们知道了int main()是主函数,程序从main函数开始执行,这是流程控制的一部分内容。在主函数中我们想要实现一些功能,比如求各个…...

【大模型】本地部署DeepSeek-R1:8b大模型及搭建Open-WebUI交互页面
本地部署DeepSeek-R1:8b大模型 一、摘要及版本选择说明1.1 摘要1.2 版本选择 二、下载并安装Ollama三、运行DeepSeek-R1:8b大模型四、安装Open WebUI增强交互体验五、关闭Ollama开机自动启动六、DeepSeek大模型启停步骤 一、摘要及版本选择说明 1.1 摘要 作为一名对 AI 和生成…...
Python 调用 Stabilityai API在本地生成图像
Python 调用 Stabilityai API在本地生成图像 摘要功能 代码结构关键技术代码下载立即体验 摘要 本程序利用硅基流动目前的免费 stabilityai/stable-diffusion-2-1 模型API,生成图像并下载到本地,用户可以通过输入描述性提示词来获取相应的图像。使用Pyt…...

Python3中异常处理:try-finally语句的示例
一. 简介 前面一篇文章简单学习了 try-finally语句结构,执行过程、以及使用场景。文章如下: Python3中异常处理:try-finally语句-CSDN博客 本文写一些简单的示例来继续学习 try-finally语句的使用。 二. Python3中异常处理:try…...
Lua限流器的3种写法
学而不思则罔,思而不学则殆 引言 上篇文章讲解了Lua脚本,事务和Pipline之间的使用方式和性能差距,本篇文章将聚焦Lua脚本,我将用三种写法来展现如何实现一个Redis限流器 固定窗口限流 固定窗口限流也是最简单的限流算法&#x…...

基于 GEE 利用插值方法填补缺失影像
目录 1 完整代码 2 运行结果 利用GEE合成NDVI时,如果研究区较大,一个月的影像覆盖不了整个研究区,就会有缺失的地方,还有就是去云之后,有云量的地区变成空值。 所以今天来用一种插值的方法来填补缺失的影像…...

linux部署ollama+deepseek+dify
Ollama 下载源码 curl -L https://ollama.com/download/ollama-linux-amd64.tgz -o ollama-linux-amd64.tgz sudo tar -C /usr -xzf ollama-linux-amd64.tgz启动 export OLLAMA_HOST0.0.0.0:11434 ollama serve访问ip:11434看到即成功 Ollama is running 手动安装deepseek…...
在微服务中,如何使用feign在各个微服务中进行远程调用
在微服务中,如何使用feign在不同微服务中进行远程调用 在微服务中,如何使用feign在不同微服务中进行远程调用 步骤: 第一步: 引入feign依赖 <dependency><groupId>org.springframework.cloud</groupId><…...

Kafka中的KRaft算法
我们之前的Kafka值依赖于Zookeeper注册中心来启动的,往里面注册我们节点信息 Kafka是什么时候不依赖Zookeeper节点了 在Kafka2.8.0开始就可以不依赖Zookeeper了 可以用KRaft模式代替Zookeeper管理Kafka集群 KRaft Controller和KRaft Leader的关系 两者关系 Lea…...

vue3 -- 集成 amap(高德地图)
🍍效果 本文介绍了如何在 Vue 3 项目中集成高德地图(AMap),并使用 PoiPicker 实现地点搜索功能。 文章首先通过 AMapLoader 异步加载高德地图 API,并初始化 Map 实例。同时,借助 AMapUI 组件库引入 PoiPicker,绑定搜索输入框,实现地点选择功能。PoiPicker 监听用户的 …...
基于用户的协同过滤算法推荐
import numpy as np 计算用户之间的相似度(这里使用余弦相似度) def cosine_similarity(user1, user2): numerator np.dot(user1, user2) denominator np.linalg.norm(user1) * np.linalg.norm(user2) return numerator / denominator if denominato…...

4.python+flask+SQLAlchemy+达梦数据库
前提 1.liunx Centos7上通过docker部署了达梦数据库。从达梦官网下载的docker镜像。(可以参考前面的博文) 2.windows上通过下载x86,win64位的达梦数据库,只安装客户端,不安装服务端。从达梦官网下载达梦数据库windows版。(可以参考前面的博文) 这样就可以用windows的达…...
DockerHub与私有镜像仓库在容器化中的应用与管理
哈喽,大家好,我是左手python! Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库,用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用
1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...

SpringCloudGateway 自定义局部过滤器
场景: 将所有请求转化为同一路径请求(方便穿网配置)在请求头内标识原来路径,然后在将请求分发给不同服务 AllToOneGatewayFilterFactory import lombok.Getter; import lombok.Setter; import lombok.extern.slf4j.Slf4j; impor…...
docker 部署发现spring.profiles.active 问题
报错: org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...
LangChain知识库管理后端接口:数据库操作详解—— 构建本地知识库系统的基础《二》
这段 Python 代码是一个完整的 知识库数据库操作模块,用于对本地知识库系统中的知识库进行增删改查(CRUD)操作。它基于 SQLAlchemy ORM 框架 和一个自定义的装饰器 with_session 实现数据库会话管理。 📘 一、整体功能概述 该模块…...

GO协程(Goroutine)问题总结
在使用Go语言来编写代码时,遇到的一些问题总结一下 [参考文档]:https://www.topgoer.com/%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B/goroutine.html 1. main()函数默认的Goroutine 场景再现: 今天在看到这个教程的时候,在自己的电…...

C# 表达式和运算符(求值顺序)
求值顺序 表达式可以由许多嵌套的子表达式构成。子表达式的求值顺序可以使表达式的最终值发生 变化。 例如,已知表达式3*52,依照子表达式的求值顺序,有两种可能的结果,如图9-3所示。 如果乘法先执行,结果是17。如果5…...
「全栈技术解析」推客小程序系统开发:从架构设计到裂变增长的完整解决方案
在移动互联网营销竞争白热化的当下,推客小程序系统凭借其裂变传播、精准营销等特性,成为企业抢占市场的利器。本文将深度解析推客小程序系统开发的核心技术与实现路径,助力开发者打造具有市场竞争力的营销工具。 一、系统核心功能架构&…...
鸿蒙(HarmonyOS5)实现跳一跳小游戏
下面我将介绍如何使用鸿蒙的ArkUI框架,实现一个简单的跳一跳小游戏。 1. 项目结构 src/main/ets/ ├── MainAbility │ ├── pages │ │ ├── Index.ets // 主页面 │ │ └── GamePage.ets // 游戏页面 │ └── model │ …...
ubuntu22.04 安装docker 和docker-compose
首先你要确保没有docker环境或者使用命令删掉docker sudo apt-get remove docker docker-engine docker.io containerd runc安装docker 更新软件环境 sudo apt update sudo apt upgrade下载docker依赖和GPG 密钥 # 依赖 apt-get install ca-certificates curl gnupg lsb-rel…...