DeepSeek-R1 论文解读 —— 强化学习大语言模型新时代来临?

近年来,人工智能(AI)领域发展迅猛,大语言模型(LLMs)为通用人工智能(AGI)的发展开辟了道路。OpenAI 的 o1 模型表现非凡,它引入的创新性推理时缩放技术显著提升了推理能力,不过该模型是闭源的。

DeepSeek-R1 paper title
今天,我们深入探讨由 DeepSeek 发布的突破性研究论文,该论文介绍了 DeepSeek-R1。这篇题为《DeepSeek-R1:通过强化学习激发大语言模型的推理能力》的论文,展示了一种前沿的开源推理模型,以及使用大规模强化学习技术训练此类模型的详细方法。

回顾:大语言模型训练过程

在这里插入图片描述

在深入探讨这篇论文之前,让我们简要回顾一下大语言模型的训练过程。通常,大语言模型要经过三个主要训练阶段:

  • 预训练:在这个阶段,大语言模型在大量文本和代码上进行预训练,以学习通用知识。这一步有助于模型熟练预测序列中的下一个标记。例如,给定 “write a bedtime _” 这样的输入,模型可以用 “story” 等合理的词补全。然而,预训练后,模型在遵循人类指令方面仍存在困难,下一阶段将解决这个问题。
  • 监督微调:在这个阶段,模型在指令数据集上进行微调。数据集中的每个样本都有一个指令 - 响应配对组成,其中响应作为标签。经过这个阶段,模型在遵循指令方面会表现得更好。
  • 强化学习:大语言模型利用反馈进一步优化。一种有效的方法是人类反馈强化学习(RLHF),即根据人类反馈训练模型。但收集大规模、高质量的人类反馈,尤其是针对复杂任务,颇具挑战。因此,另一种常用方法是人工智能反馈强化学习(RLAIF),由人工智能模型提供反馈。要使 RLAIF 有效工作,需要一个能力强大的模型来提供准确反馈。

引入 DeepSeek-R1-Zero 模型

Training DeepSeek-R1-Zero using only RL in post-training, without SFT

本文所探讨的研究省略或部分省略了监督微调阶段。具体来说,为了训练论文中提出的首个模型 DeepSeek-R1-Zero,我们从一个名为 DeepSeek-V3-Base 的预训练模型开始,它有 6710 亿个参数。监督微调阶段被完全省略。为了大规模进行强化学习,研究采用了一种基于规则的强化学习方法,而非标准的依靠人类或人工智能反馈的强化学习方式。

基于规则的强化学习

在这里插入图片描述

所使用的强化学习方法称为组相对策略优化(GRPO),由 DeepSeek 内部开发。

给定一个待训练的模型和一个输入问题,将输入送入模型,会采样得到一组输出。每个输出都包含推理过程和答案。GRPO 方法观察这些采样输出,并通过使用预定义规则为每个输出计算奖励,来训练模型生成更优的选项:

  • 准确性:一组规则用于计算准确性奖励。例如,对于有确定答案的数学问题,我们可以确切检查模型给出的最终答案是否正确。对于有预定义测试用例的代码问题,编译器会根据测试用例生成反馈。
  • 格式:另一类规则用于创建格式奖励。在论文中的下图里,我们可以看到模型被要求如何响应,其推理过程在标签内,答案在标签内。格式奖励确保模型遵循这种格式。

在这里插入图片描述

这种基于规则的机制不使用神经模型生成奖励,简化并降低了训练过程的成本,使其大规模应用成为可能。此外,研究人员发现奖励模型可能会受到奖励作弊问题的影响,即模型找到一种漏洞或意外方式来最大化奖励,但这与预期目标并不相符。

DeepSeek-R1-Zero 性能洞察

现在,让我们来探究一下 DeepSeek-R1-Zero 模型的一些性能表现。
在这里插入图片描述
在论文中的上表里,我们看到了 DeepSeek-R1-Zero 与 OpenAI 的 o1 在推理相关基准测试中的比较。令人印象深刻的是,DeepSeek-R1-Zero 与 o1 相当,在某些情况下甚至超越了它。论文中下面这张有趣的图展示了在 AIME 数据集上训练期间的改进过程。值得注意的是,AIME 上的平均一次通过率大幅提升,从最初的 15.6% 跃升至令人惊叹的 71.0%,达到了与 OpenAI 的 o1 相当的水平!
在这里插入图片描述

DeepSeek-R1-Zero 的自我进化过程

在这里插入图片描述
论文的一个关键发现是模型的自我进化过程,如上图所示。x 轴表示训练步数,y 轴表明随着训练的进行,模型的响应长度增加。通过强化学习,模型在解决推理任务时自然学会分配更多思考时间。令人惊奇的是,这一过程无需任何外部调整。

“顿悟时刻” 现象—— Aha Moment

如果上述内容还不够令人称奇,论文中还提到了 DeepSeek-R1-Zero 的另一个有趣现象 ——“顿悟时刻”。论文中的以下示例展示了这一现象。给定一道数学题,模型开始推理过程。然而,在某个时刻,模型开始重新评估其解决方案。模型学会重新评估其初始方法,并在必要时进行自我纠正。这种非凡的能力在强化学习训练过程中自然显现。
在这里插入图片描述

DeepSeek-R1 模型的训练过程

现在,我们来讨论第二个模型 DeepSeek-R1 的训练过程。但首先,既然我们刚刚看到了 DeepSeek-R1-Zero 卓越的能力,为什么还需要第二个模型呢?

为什么需要 DeepSeek-R1?

主要有两个原因:
在这里插入图片描述

  • 可读性问题:DeepSeek-R1-Zero 的输出往往可读性较差。
  • 语言一致性问题:它经常在单个回答中混合多种语言。

上述问题使得 DeepSeek-R1-Zero 的用户体验欠佳。有趣的是,一项消融研究表明,引导模型使用单一语言会略微损害其性能。与通常使用单一语言的人类不同,该模型通过使用多种语言能更好地表达自己,这一点令人着迷。

DeepSeek-R1 的训练流程

为了解决这些问题,DeepSeek-R1 采用四阶段流程进行训练:

  • 冷启动(阶段 1):从预训练模型 DeepSeek-V3-Base 开始,模型在从 DeepSeek-R1-Zero 收集的少量结果数据集上进行监督微调。这些结果经过验证,质量高且可读性强。这个数据集包含数千个样本,规模相对较小。在这个小规模高质量数据集上进行监督微调,有助于 DeepSeek-R1 缓解初始模型中存在的可读性问题。
  • 推理强化学习(阶段 2):这个阶段应用与前一个模型相同的大规模强化学习方法,以提升模型的推理能力。具体来说,在编程、数学、科学和逻辑推理等任务中,这些任务有明确的解决方案,可为强化学习过程定义奖励规则。
  • 拒绝采样和监督微调(阶段 3):在这个阶段,使用阶段 2 的模型检查点生成大量样本。通过拒绝采样,只保留正确且可读的样本。此外,使用生成式奖励模型 DeepSeek-V3 来决定保留哪些样本。这个阶段还包含了部分 DeepSeek-V3 的训练数据。然后,模型在这个数据集上进行监督微调。这个数据集不仅包含推理相关的问题,还提升了模型在更多领域的能力。
  • 多样化强化学习阶段(阶段 4):这是最后一个阶段,包含多样化的任务。对于像数学这样适用的任务,使用基于规则的奖励。对于其他任务,由大语言模型提供反馈,使模型符合人类偏好。

此外,利用阶段 3 构建的数据集对各种较小的开源模型进行了提炼,提供了具有高推理能力的较小规模替代模型。

DeepSeek-R1 的显著成果

在这里插入图片描述

在本文结尾,我们着重介绍一下免费可用的 DeepSeek-R1 与 OpenAI 的 o1 模型相比取得的显著成果。论文中的上图显示,DeepSeek-R1 不仅与 o1 相当,在某些基准测试中还超越了它。

此外,经过提炼的 320 亿参数模型也展现出了令人瞩目的性能,使其成为具有高推理能力的可行较小规模替代模型。

参考文献和链接

  • 论文页面: [2501.12948] DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning
  • GitHub 页面:GitHub - deepseek-ai/DeepSeek-R1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/69781.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大模型GUI系列论文阅读 DAY4续:《Large Language Model Agent for Fake News Detection》

摘要 在当前的数字时代,在线平台上虚假信息的迅速传播对社会福祉、公众信任和民主进程构成了重大挑战,并影响着关键决策和公众舆论。为应对这些挑战,自动化假新闻检测机制的需求日益增长。 预训练的大型语言模型(LLMs&#xff0…

LevelDB 源码阅读:写入键值的工程实现和优化细节

读、写键值是 KV 数据库中最重要的两个操作,LevelDB 中提供了一个 Put 接口,用于写入键值对。使用方法很简单: leveldb::Status status leveldb::DB::Open(options, "./db", &db); status db->Put(leveldb::WriteOptions…

【Proteus仿真】【51单片机】多功能计算器系统设计

目录 一、主要功能 二、使用步骤 三、硬件资源 四、软件设计 五、实验现象 联系作者 一、主要功能 1、LCD1602液晶显示 2、矩阵按键​ 3、加减乘除,开方运算 4、带符号运算 5、最大 999*999 二、使用步骤 基于51单片机多功能计算器 包含:程序&…

origin调整图像的坐标轴,修改坐标轴起始点,增量

接上一篇帖子,如果再修改数据之后或者当前的数据之间差距较小,怎么通过调整坐标轴来使数据之间的差距更明显,举个例子, 像下面这个图的entropy指标,都是介于6到9之间,如果y轴坐标都从0开始,使用…

Redis_Redission的入门案例、多主案例搭建、分布式锁进行加锁、解锁底层源码解析

目录 ①. Redis为什么选择单线程? ②. 既然单线程这么好,为什么逐渐又加入了多线程特性? ③. redis6的多线程和IO多路复用入门篇 ④. Redis6.0默认是否开启了多线程? ⑤. REDIS多线程引入总结 ①. Redis为什么选择单线程? ①…

ARM嵌入式学习--第十一天(中断处理 , ADC)

--中断的概念 中断是指计算机运行过程中,出现某些意外情况需主机干预时,机器能自动停止正在运行的程序并转入处理新情况的程序,处理完毕后又返回被暂停的程序继续运行 --CPU处理事情的方式 -轮询方式 不断查询是否有事情需要处理&#xff0c…

vue2项目(一)

项目介绍 电商前台项目 技术架构:vuewebpackvuexvue-routeraxiosless.. 封装通用组件登录注册token购物车支付项目性能优化 一、项目初始化 使用vue create projrct_vue2在命令行窗口创建项目 1.1、脚手架目录介绍 ├── node_modules:放置项目的依赖 ├──…

[ACTF2020 新生赛]BackupFile1

题目 翻译&#xff0c;尝试找出源文件&#xff01; 扫目录使用参数-e * python dirsearch.py -u http://0c3b21c0-d360-4baa-8b97-aa244f4c4825.node5.buuoj.cn:81/ -e * 最终扫描到一个文件名为&#xff1a;/index.php.bak的文件&#xff0c;把备份文件下载下来 源码 <?…

OPENPPP2 —— VMUX_NET 多路复用原理剖析

在阅读本文之前&#xff0c;必先了解以下几个概念&#xff1a; 1、MUX&#xff08;Multiplexer&#xff09;&#xff1a;合并多个信号到单一通道。 2、DEMUX&#xff08;Demultiplexer&#xff09;&#xff1a;从单一通道分离出多个信号。 3、单一通道&#xff0c;可汇聚多个…

DeepSeek-R1大模型本地部署及简单测试

目录 DeepSeek-R1大模型本地部署及简单测试背景我的测试环境模型参数选择适用场景参数规模 本地部署安装 DeepSeek-R1大模型本地部署及简单测试 背景 最近deepseek非常火, 要说2025年震惊科技圈的事件要数DeepSeek这个国产AI的横空出世&#xff0c;这是一款免费、开源且隐私优…

强化学习笔记(3)——基于值函数的方法和策略梯度方法

分为两大类方法&#xff1a; 基于值函数的方法&#xff08;Temporal Difference Methods, TD Methods&#xff09; 策略梯度方法&#xff08;Policy Gradient Methods&#xff09;。 二者不同之处&#xff1a; 通过值函数来间接表达隐式的策略&#xff0c;一个是直接迭代优化策…

Excel 技巧23 - 在Excel中用切片器做出查询效果(★★★)

本文讲如何在Excel中用切片器做出查询效果。 目录 1&#xff0c;在Excel中用切片器做出查询效果 1-1&#xff0c;Excel 中的切片器是什么&#xff1f; 1-2&#xff0c;用切片器做出查询效果 1&#xff09;&#xff0c;点击任一表格内单元格&#xff0c;按下CtrlA&#xff0…

leetcode——排序链表(java)

给你链表的头结点 head &#xff0c;请将其按 升序 排列并返回 排序后的链表 。 示例 1&#xff1a; 输入&#xff1a;head [4,2,1,3] 输出&#xff1a;[1,2,3,4] 示例 2&#xff1a; 输入&#xff1a;head [-1,5,3,4,0] 输出&#xff1a;[-1,0,3,4,5] 示例 3&#xff1a; …

苯乙醇苷类化合物的从头生物合成-文献精读108

Complete pathway elucidation of echinacoside in Cistanche tubulosa and de novo biosynthesis of phenylethanoid glycosides 管花肉苁蓉中松果菊苷全生物合成途径解析及苯乙醇苷类化合物的从头生物合成 摘要 松果菊苷&#xff08;ECH&#xff09;是最具代表性的苯乙醇苷…

AnyThingLLM本地私有知识库搭建

***************************************************** 环境准备 操作系统&#xff1a;Windows11 内存&#xff1a;32GB RAM 存储&#xff1a;预留 300GB 可用空间 显存: 16G 网络: 100M带宽 前置准备: 已安装ollama环境 deepseek本地大模型 ***************************…

【设计测试用例自动化测试性能测试 实战篇】

&#x1f308;个人主页&#xff1a;努力学编程’ ⛅个人推荐&#xff1a; c语言从初阶到进阶 JavaEE详解 数据结构 ⚡学好数据结构&#xff0c;刷题刻不容缓&#xff1a;点击一起刷题 &#x1f319;心灵鸡汤&#xff1a;总有人要赢&#xff0c;为什么不能是我呢 设计测试用例…

99.23 金融难点通俗解释:小卖部经营比喻PPI(生产者物价指数)vsCPI(消费者物价指数)

目录 0. 承前1. 简述&#xff1a;价格指数对比2. 比喻&#xff1a;两大指数对比2.1 简单对比2.2 生动比喻 3. 实际应用3.1 价格传导现象 4. 总结5. 有趣的对比6. 数据获取实现代码7. 数据可视化实现代码 0. 承前 本文主旨&#xff1a; 本文使用小卖部比喻PPI和CPI&#xff0c;…

【项目初始化】

项目初始化 使用脚手架创建项目Vite创建项目推荐拓展 使用脚手架创建项目 Vite Vite 是一个现代的前端构建工具&#xff0c;它提供了极速的更新和开发体验&#xff0c;支持多种前端框架&#xff0c;如 Vue、React 等创建项目 pnpm create vuelatest推荐拓展

开源智慧园区管理系统如何重塑企业管理模式与运营效率

内容概要 在如今快速发展的商业环境中&#xff0c;企业面临着日益复杂的管理挑战。开源智慧园区管理系统应运而生&#xff0c;旨在通过技术创新来应对这些挑战。它不仅是一个简单的软件工具&#xff0c;而是一个全面整合大数据、物联网和智能化功能的综合平台&#xff0c;为企…

stm32教程:EXTI外部中断应用

早上好啊大佬们&#xff0c;上一期我们讲了EXTI外部中断的原理以及基础代码的书写&#xff0c;这一期就来尝试一下用它来写一些有实际效能的工程吧。 这一期里&#xff0c;我用两个案例代码来让大家感受一下外部中断的作用和使用价值。 旋转编码器计数 整体思路讲解 这里&…