在了解模型如何进行深度思考之前,我们需要明确的是,机器或者说模型,是否已经具备了思考的能力?
有的朋友会说,模型压根不会思考,它的所有输出,都是一种对海量语料的“鹦鹉学舌”、或者是一种高级的“模式识别”,它之所以会回复这样那样的内容,都是因为曾经在哪里见过类似的文本。
但在笔者看来,人类的本质就是复读机,“思考”的本质也许就是高级的“模式识别”。
来看这个例子,让模型来判断苹果在不同语境下的含义:
这个苹果真甜; 苹果的新品真贵; 一个苹果带来了万有引力;
小规模的模型或者传统的NLP,只能识别浅层、局部的语言模式。比如,它学到“苹果”后面经常跟着“好吃”;或者能对“苹果”在第一个句子中是一种“水果”的概率为0.9;这都是统计关联,是一种简单的模式识别。
再看大语言模型,不再仅仅做词语之间的关联,而是在海量文本数中,识别到了概念与概念之间极其复杂的网状关系。它学到的不是“A词后面常跟B词”,而是“A概念在B语境下与C、D、E概念存在某种逻辑、物理或社会性的关系”,这与人类对概念的理解是不谋而合的。

所以笔者认为,大模型确实是在进行模式识别,但它所识别的模式,是人类文明积累下来的“思维”和“知识”的模式本身。它学会的是“人类是如何思考和解决问题的”这个元模式。
当然,有关于“思考”的定义,无论是脑神经科学还是认知科学,目前尚未有大一统的理论;机器是否会思考也就不得而知了。从结果来看,笔者倾向于认为机器已经掌握了“思考”或“学习”的知识。
什么样的微观结构,能够最直接地支持机器的思考?从第一性原理出发,这个微观结构本身要适合推理。
Transformer架构主要分为Encoder-only、Encoder-Decoder和Decoder-only三种。尽管各有千秋,但多数顶尖大模型都选择了Decoder-only。其根本优势,除了业界已验证的各种特性(例如满秩注意力、KV Cache的计算效率优势等),由因果掩码支撑的自回归预测能力是模型得以习得推理能力最重要的原因。
Decoder与Encoder的关键区别在于注意力机制的方向:Encoder是双向的,在处理一个词时能同时看到上下文信息;而Decoder则是单向的,在处理当前词时只能看到它之前的信息(通过“因果掩码”实现)。

这种强制性的“前向”视角与推理的本质非常契合,因为推理总是依序进行的:我们从“已知条件”出发,一步步推导出“结论”。Decoder在生成每个新词时,都只能基于已生成的上文进行“思考”,这模拟了“因为……所以……”的因果链条。反之,Encoder的“上帝视角”(可预先看到全文)虽利于文本理解,却不利于一步步地构建新知识。
再往上层看,因果掩码使Decoder-Only架构的核心训练目标变为“自回归预测”,即根据上文预测下一个最可能的词。这个看似简单的任务,却在海量数据训练中为模型注入了强大的隐式推理能力:为了更准确地预测next token,模型必须从数据中学习语法、知识、常识,乃至文本序列之下隐藏的逻辑关系。
另一个重要条件,是模型需要有足够大的参数规模。
讲到这里不得不提到业界著名的一个定理,OpenAI 于2020年提出的 Scaling Law 指出,模型效能和模型参数规模、数据量、算力存在正相关的幂律关系。

而在后来基于decoder-only架构的gpt系列的模型实践中,他们又发现,当模型规模超过某个临界阈值后,就会产生“智能涌现”效应,使模型获得以往小规模的模型不具备的深度思考、跨任务泛化的能力。
举个例子,例如想将一处秀丽的风景如实地保存下来,那么:
低复杂度的小规模模型,如同对这出风景进行铅笔速写 高复杂度的大规模模型,如同使用专业的单反进行摄像
单反的效果,相对于速写的效果,就是一种“涌现”。
从Scaling Law提出开始(其实在正式提出之前就开始了),大模型通过参数规模扩张,将从海量训练数据中的习得的隐式规律编码于其内部的高维参数空间中,再在预测推理阶段通过参数激活释放出来。所以,足够大的模型规模,也是机器能够思考的必要条件之一。
大模型发展到2024年底,随着高质量语料库的消耗和数据清洗成本的增加,业界逐渐意识到单纯扩大预训练模型规模的边际收益正在递减。就在模型厂家们焦虑纷纷时,OpenAI推出主打复杂推理(Reasoning)的o1模型,掀翻了整个AI界,这也是“深度思考”模型成为发展主流的起点。
实际上,深度思考并不是大模型领域的重大变革,它的出现更像是一种随着模型规模增长而自然产生的特性,本身并未颠覆LLM的基本模型结构、也没有改变模型输入输出的范式。它的本质,更像是将底座模型参数内蕴的推理能力“显化”。
一个最经典的例子,就是思维链(Chain of Thoughts,CoT)在非深度思考模型上的成功实践:仅需要在Prompt的结尾处增加“请逐步思考、输出每一步思考过程”,就能让模型在解决复杂问题的能力上得到质的飞跃。这足以支撑本节论点了。
如今大模型在很多领域落地进展缓慢,一个最大的问题是它常常出现“幻觉”。而“深度思考”最大的价值正是减少大模型的幻觉。
一个理想的推理过程,需要基于公理、定理(即“世界知识”)和已知事实(输入的Query),通过多轮推演、收敛出一个接近ground-truth的结论。对于大模型来说,深度思考就是那个“多轮推演”的过程,而大模型本身,则是公理、定理,是从海量数据中压缩而来的世界规律;整个过程其实是一个从一般到特殊的演绎过程。

如果把从输入问题到得出答案的过程,简化成一个从起点到终点的寻路问题:

那么:


很显然,第二种方式走向幻觉的概率会低得多。
做每一轮思考、每一次决策时,模型都能根据当前已经得到的信息来做更深层的推演;从信息增益的角度来看,其实是更多地利用了模型的之前未激活的权重知识。这里也能合理推断:模型的参数规模越大,其深度思考能带来的效果提升越明显;因为参数规模越大、其内蕴的世界信息和规律越多,在每个环节思考时能做出的补充也越多,增益自然也越大。
换一个角度来说,深度思考的本质其实是给模型更多的时间、token(算力),让它充分利用它蕴含的世界知识、激活更多有关联的参数,来得到一个更鲁棒、更有依据、准确率更高的答案,是一种“以时间、空间换性能”的方案。
早在模型规模快速增长的阶段,深度思考就已经以“CoT”等外部引导的方式开始崭露头角了。这种方式简单有效,无需改变模型结构,也无需进行额外的训练,只需要通过Prompt工程即可让模型释放出长程的思考能力。
这类技术有非常多变体,这里列举最经典的:

它们的共同特点是:改变模型处理问题的方式,从“端到端”的直接映射输出,转变为“分步推导”的透明过程。
可以说,CoT就是“深度思考”的基本范式,此后的所有发展方向,不管是强化学习还是其他,本质也都是为了将CoT的能力内化到模型参数中去:即不需要用户进行显式的prompt引导、只需要输入问题,模型就能自发地开始以CoT的方式思考、回答。
CoT其实已经够用了,但为了让模型“自发”地使用CoT进行深度思考,业界开始尝试各种方法,将CoT能力“内化”到模型参数中。这种从“行为”角度来规范模型输出的需求,很适合用强化学习来做。
于是强化学习迅速在大模型领域生根发芽。目前,业界常规的训练深度思考模型的流程如下:

这个训练路径中,已经有SFT用于让模型“增强指令遵循能力”了,为什么其后又增加了一个RLHF?只使用SFT难道不够吗?
SFT即有监督微调(Supervised Fine-Tuning),它通过提供高质量的 <指令,回答> 对数据,直接教导预训练模型学习、模仿人类完成特定任务或遵循指令的正确格式与内容;它的本质是“模仿学习”,学习人类提供给它的有限的经验和指导。
而RLHF,基于人类反馈的强化学习(Reinforcement Learning from Human Feedback),通过训练一个“奖励模型”来学习人类的偏好标准,然后再用强化学习算法,使用奖励模型引导待优化模型,优化其输出,使其在输出时更符合人类价值观、更符合人类偏好,而不仅仅时模仿数据。本质上,RLHF是从原模型到人类偏好的一种迁移、对齐。
打个比方:有一天,没有任何篮球基础的你跟教练说,“我想学篮球”:
SFT教练:行,我这里有《138小时篮球从入门到入土》、《篮球知识进阶》、《NBA20年精彩瞬间集锦》,你回去跟着练; RLHF教练:我请了流川枫、樱木花道来跟你对练,练完就大成了;
很显然,如果只选一个,选哪一个都很难真正学会打篮球;但是,如果先选择SFT、再选择RLHF,就是一个很好的实践路径。
我们需要让模型通过SFT先学会如何遵循指令完成任务,再通过RLHF让它在不断练习中,真正学会像人类一样遵循指令完成任务。
经典的RL算法一般是“Actor-Critic”架构的,即同时训练两个模型,一个作为“执行者”解决特定任务;一个作为“评论者”对“执行者”的表现进行打分;通过这种协同来实现两者的共同进步;最终一般只使用Actor模型作为线上推理模型。
而RLHF,需要增加人类偏好数据作为待学习的目标。
例如,对于问题Q:中国的首都是?;假设有回答A:中国的首都是北京。 和 回答B:中国的首都是北京、美国的首都是华盛顿。。两个答案都没有事实性谬误,但显然回答A更聚焦问题本身。 <A, B|Q> 就是一个人类偏好数据的简单例子。
目前主流的RLHF流程如下:
目前业界主流的RLHF算法有:PPO、DPO和GRPO等。
PPO全称为近端策略优化[6](Proximal Policy Optimization Algorithm),是 OpenAI于2017年提出的经典RL算法,也是业界应用最广泛的RLHF方法。
在PPO的训练流程中,会使用SFT模型来初始化4个模型:
的评估;训练过程中需要进行更新(它的优化目标是缩小预期估计 和 实际价值
PPO的算法流程:

,策略模型进行逐token预测得到输出
进行评价,得到标量
的情况下得到 的对数概率 (
的情况下得到 的对数概率
和 价值序列,通过**广义优势估计(GAE)**计算每个时间步的优势
,通过时序差分误差的指数加权和来平滑地估计优势函数,一般从后向前递归计算:
:折扣因子,一般在训练过程中自适应地调整,取值范围
与价值模型预测
则是一步裁剪,将 限制在 和
PPO相比它的前辈(TRPO)更加稳定(归功于Clip机制的引入)且实现简单,模型原理符合Actor-Critic架构易于理解;在实践中能获得稳定、优秀的效果。时至今日,PPO仍是RLHF的标杆选择。
当然,PPO的劣势也很明显:完整的PPO训练流程,需要将4个完整的模型读取到显存中、并在每一个batch对其中的两个进行BP参数更新,当模型规模非常大时,同时run4个模型的开销让PPO训练模式消耗巨大。
为了解决PPO开销过大的问题,2023年,业界又提出了DPO算法[7],即直接偏好优化(Direct Preference Optimization),其核心思想是跳过奖励模型训练,直接利用人类偏好对
来优化策略模型。
4.2.节 已经提到过,PPO开始之前需要先使用人类偏好数据训练奖励模型,这个奖励模型负责对策略模型的输出
进行打分得到。DPO认为,不需要先训练奖励模型,只要能找到数学方法替代奖励模型,就能直接在强化学习过程中使用偏好数据,而不是费劲扒拉地计算优势
。
DPO的作者指出,策略模型的数学本质与奖励模型是一致的,不需要通过先训练奖励模型来指导策略模型的强化。于是,他们通过非常复杂的数学推导(过程参见论文:arXiv:2305.18290),将PPO中的奖励模型变换成一个隐式奖励函数:
其中,
表示当前策略模型 相比参考模型 对输出 的偏好程度:如果(即,说明策略模型对 的偏好比参考模型更高;反之说明策略模型对
的偏好低于参考模型。
这就得到的DPO模式下的策略优化Loss:
其中
是超参,用于控制策略的更新幅度(类似learning rate);
是sigmoid函数。
任意一个样本对
、,假设 优于 ,那么对于好的策略模型
:
的偏好高于 ,即
的偏好低于 ,即
这样,两者相减取对数、求期望(在这个场景下就是所有token的均值)就得到对该样本的一次较小的Loss、对应优化的梯度就小(即因为判断正确,所以模型倾向于保持当前状态);反之如果
实际差于
,就会让loss变大、让模型发生大的梯度优化。
直观理解,就是先假设有一个“看不见的策略模型标准”存在,对样本对输入
和 对应真实的人类偏好输出
,可以求出当前策略模型的偏好loss。这样一来就可以直接绕过奖励模型(其实也是绕过了RL),将现成的人类偏好数据对直接用微调的方式来训练一个“类强化”的模型。
严格来说,DPO已经从RL退化成了SFT,但业界仍然认为它是RLHF的一种,因为它的核心思想是用数学方法做类似SVM的“核变换”来模拟RL的过程,本质仍然是用人类偏好数据来使SFT模型向人类偏好进行对齐,既实现了RLHF的效果、又摆脱了PPO复杂的训练过程和高额的资源开销。
然而DPO的局限也非常明显:它的最终效果完全依赖于人类偏好数据集的数量与质量,如果这样的数据准备不充分,贸然使用DPO,轻则模型在对齐时“欠拟合”、重则导致参数失调,甚至会冲刷掉原本SFT习得的能力。
那么,有没有一种策略,既能保持PPO的效果、又不用消耗那么多资源、还不需要准备大量的偏好数据呢?
有的。
deepseek于2024年发表在deepseek-math模型论文中的工作 GRPO,组相对策略优化(Group Relative Policy Optimization)算法,就满足以上所有条件(这个工作一直到2025年初因为deepseek-r1的火爆才被关注)。
GRPO的思路非常简单直接:删除价值模型。

前文已经讲过,价值模型的存在是为了帮助模型评估生成的每个token的优势
;删掉价值模型后如何解决优势的计算呢?
deepseek的做法也很自然淳朴:训练中对一个
输出多个 、同时计算所有 的奖励 ,再统计均值、方差,让每个 获得自己的组内相对优势 :
在deepseek自己的实验、以及后来很多其他机构对该算法的复现都证明,组内相对优势在强化对齐领域有极高的性价比。
删除价值模型让RL的资源消耗大大下降:GRPO只需要读取3个完整模型到显存中,并只需要更新其中1个的参数,大大减少了对同规模模型训练的显存需求(显存需求下降约30~40%)。资源消耗的减少,意味着相同的设备资源,可以在更短的训练周期内迭代更大规模的模型,模型的进步速度被快速提升。
当然,GRPO也有劣势:非常依赖奖励模型的区分能力。缺少了同样在进行学习的value模型的纠偏,GRPO在RL强化阶段,翻车的概率显然比PPO更高。
另外,对同一个
生成多个 也面临性价比tradeoff: 太少,强化对齐的效果不好、
太多消耗资源也多。
这也说明,无论算法多么精妙,本质上最终“智能”的效果还是必须用算力和模型规模堆砌出来。
HF是RL的最佳实践吗?这里聊一聊我个人对RLHF的一些思考。
deepseek-r1论文中提到,初版训练的deepseek-r1-zero,其实已经有很不错的效果,但其思考过程比较混乱,有语言混杂的现象、可读性差;为了进一步提高可阅读性,才继续做规则化的价值纠偏(例如语言偏好、公式代码偏好等等),最终得到举世瞩目的deepseek-r1。
这里其实可以说明,如果通过没有人类偏好的RL进行学习,模型本身并不会主动迎合人类,而是会通过更直观高效的方式来完成任务,因而其思考过程“可读性差”。
例如,可能模型学习过很多外语语料,最终在深度思考阶段,它认为同时使用英语、中文、日文甚至泰文等等,混合输出更能快速、精准地描述它的语义,但因为几乎没有人类看得懂,故而在RLHF阶段这种高效的表达被迭代掉了。
那么,RLHF为什么会成为主流的选择?因为它让模型有了人味。
最近准备写这篇文章时,大量使用元宝进行问答交互,以下是它的输出:

谁看了不迷糊呢?所以这就是RLHF注定能成的原因:它能给用户提供情绪价值,而情绪价值是有商业价值的,有商业价值企业就会加大投入。
但话又说回来,迎合人类的路线就是最高效、最准确的深度思考的路线么?未必。
为了迎合人类,首先模型必须统一输出的语言,不能用最高效的方式进行信息表征。有可能模型无意识、弱可读性的表述正是它认为的高效表示,但为了迎合人类,它必须使用统一的语言、风格、格式,而这是需要消耗更多token的。前面我们说,CoT的本质是用token换精准度,那么是不是也可以说,RLHF是用token来换情绪价值。
另一方面,让大模型学习人类的表达、思考方式,也是给机器增加很多输出约束。LLM本身是概率模型,这意味着只要用得多,无论概率多低,它都有可能产生“Aha”时刻,输出让人意想不到的答案。反观人类,常常陷入思维的路径依赖,而概率恰恰是破除路径依赖最好的解药。遗憾的是,RLHF似乎正在通过增加类人约束,弱化概率带来的惊喜、强化思维的路径依赖。
我们是想让大模型变得更高效准确,还是想让大模型在“更像人类”的规训下变得高效准确,这是RLHF方法的根本矛盾。
当然,不能因此就否定RLHF的重要性。我想我们应该深入思考的是:Human Feedback在整个RL对齐的过程中,应该占据多大的权重;Human Feedback 是否应该有更客观、更合理的准则;怎样让大模型在贴合Human Feedback的规约中仍然保留它的“顿悟时刻”。
目前RLHF还处于红利阶段,只要投入资源去做,就能有收益。但是这样做的边际收益也在递减,所以我们有必要将目光放得更加长远,在深度思考的道路上,还有很多可能性等待探索。
假如我们让大模型证明“1+3=2+2”,它有可能会给出这样的证明过程:
因为 1+3=5,2+2=5,所以1+3=2+2
这个例子举得比较基础,但本质上,“答案正确、推理存在谬误”,是目前很多深度思考模型都存在的问题。
蚂蚁近期的一个工作就提出,应该在RL阶段,就将模型的思考过程也限制在逻辑框架下,减少或避免逻辑推理过程中逻辑谬误的产生:原子思维(Atomic Thought)。
这个工作的核心思想是,思维过程也可以被原子化。他们认为,大模型的深度思考过程可以被划分到一个“最小、功能连贯的推理单元中”,这些单元统称为“原子思考单元”<atom-think>。
关键的是,模型本身不受预定义原子思维的限制,而是在RL中被奖励自主生成原子思维,从而学会在不同场景中将推理分解为任务特定的原子思维。

算法流程还是使用GRPO,但是做了一些改进来适配其atom thought:
<OBSERVATION> 观察、<HYPOTHESIS_TESTING>假设检验)提供独立评分,并与结果奖励结合。这一改进解决了 GRPO 依赖单一结果奖励导致的梯度冲突问题(某个token产生的梯度与其他token产生的梯度方向不一致)。<HYPOTHESIS_TESTING>的假设合理性,并给出对齐的奖励信号。这个工作的启发性在于,它在RL中不使用主观人类反馈来激励模型学习,而是让模型更多遵循客观逻辑,这也是我在 4.6.节中的思考的一种破窗实践。
目前深度思考模型主要的缺陷是任务分解复杂、数据需求大、高延迟。
怎么在保持优秀的推理性能的前提下解决这几个问题呢?
Sapient Intelligence 的研究者在 2025年6月提出了 分层推理模型架构(Hierarchical Reasoning Model),包含两个在不同时间尺度上运行的循环网络,用于协同解决任务。它的灵感源自大脑的层级处理和时间分离机制。

HRM由4个可学习的组件组成:输入
、低级循环模块 、高级循环模块 和输出
。其中,最重要的是低级循环、高级循环模块:
模型在处理输入的query得到一个输入的投影
后,会在高级、低级两个模块间不停循环计算,直至判断收敛后,才会通过输出模块重建出一个 。在一次完整的HRM推理中,需要展开 次高层周期、每次高层周期会进行 次低级时间步(总时间步
)。

这里有两个关键问题:
O(T))降至常数级(O(1)),使得训练更加高效这个工作有很多重大的意义:
本文系作者在时代Java发表,未经许可,不得转载。
如有侵权,请联系nowjava@qq.com删除。