关于DeepSeek我是怎么研究的(3)

先看一个DeepSeek算24点游戏的例子:

跟准备数学考试一样,这道题的结果不重要,重要是学习思考过程,这样下次再碰到类似的问题我们才能自己解决问题。那么看看DeepSeek是怎么思考的:

可以看出来DeepSeek在生成最后答案之前经过了40秒的思考,按照问题的规则约束一步一步的思考、试错,最终得出答案,这个过程就是今天我要介绍的RLM的推理机制(Reasoning Schema)。首先回顾一下关于DeepSeek我是怎么研究的-1中RLM的架构,看看推理机制在RLM中处于什么位置(蓝色框):

推理机制(Reasoning Schema)是推理语言模型(Reasoning Language Models,简称RLMs)的核心组成部分,它定义了推理过程的结构和策略。推理机制决定了模型如何组织和推进推理步骤,以逐步解决复杂问题。
推理机制的定义
推理机制(Reasoning Schema) 是指在RLMs中用于组织和推进推理过程的一套规则和策略。它包括以下几个关键部分:
- 推理结构(Reasoning Structure):定义了推理步骤如何组织和连接,形成一个整体的推理路径。
- 推理策略(Reasoning Strategy):定义了推理结构如何演变和扩展,以探索可能的解决方案。
- 推理操作(Reasoning Operators):定义了在推理过程中可以执行的具体操作,如生成新的推理步骤、评估现有步骤、选择下一步要探索的步骤等。
推理机制的组成部分
1. 推理结构(Reasoning Structure)

推理结构是推理机制的基础,它定义了推理步骤如何组织和连接。常见的推理结构包括:
- 树状结构(Tree Structure):每个节点代表一个推理步骤,分支代表不同的推理路径。树状结构允许模型并行探索多个可能的解决方案,选择最有希望的路径。
- 链状结构(Chain Structure):推理步骤按顺序排列,每个步骤直接依赖于前一个步骤。链状结构适用于线性推理任务,推理路径单一。
- 图状结构(Graph Structure):推理步骤之间可以有任意的依赖关系,允许更复杂的推理路径。图状结构适用于需要处理多个相互依赖的推理步骤的任务。
2. 推理策略(Reasoning Strategy)
推理策略是推理机制的核心,它定义了推理结构如何演变和扩展。常见的推理策略包括:
- 蒙特卡洛树搜索(Monte Carlo Tree Search, MCTS):
- 选择(Selection):从根节点开始,选择最有希望的子节点进行扩展。选择过程通常基于上置信区间(Upper Confidence Bound, UCB)公式,平衡探索和利用。
- 扩展(Expansion):在选定的节点上生成新的推理步骤,扩展推理结构。
- 评估(Evaluation):使用价值模型评估新生成的推理路径,预测其最终结果的质量。
- 回溯(Backpropagation):将评估结果回溯到根节点,更新路径的价值,为后续选择提供更准确的评估。
- 束搜索(Beam Search):
- 定义:束搜索是一种宽度受限的搜索算法,每次只保留固定数量的最有希望的推理路径。它在每一步选择固定数量的候选步骤,进行扩展。
- 作用:束搜索在解码过程中保持多样性,避免陷入局部最优解,同时控制计算复杂度。
- 集成方法(Ensemble Methods):
- 定义:集成方法通过组合多个独立的推理结构(如多个树或链),增强模型的鲁棒性和准确性。例如,森林(Forest)方法使用多个推理树,最终选择最优的解决方案。
- 作用:集成方法通过并行探索多个推理路径,减少单一路径的不确定性,提高推理的准确性和可靠性。
3. 推理操作(Reasoning Operators)

推理操作是推理机制的具体实现,定义了在推理过程中可以执行的具体操作。常见的推理操作包括:
- 生成(Generate):在推理结构中添加新的推理步骤。在MCTS中,生成操作通常由策略模型实现。
- 细化(Refine):优化现有的推理步骤,提高其质量和准确性。例如,通过自批评(Self-Critique)生成改进建议。
- 聚合(Aggregate):将多个推理步骤或路径合并为一个更高级别的推理步骤。例如,在图状结构中,聚合操作可以将多个相关步骤合并为一个连贯的推理路径。
- 剪枝(Prune):移除推理结构中被认为不重要的节点或路径,优化推理效率。
- 重构(Restructure):对推理结构进行任意变换,例如将树状结构转换为链状结构,以适应不同的推理需求。
- 选择(Select):从当前推理结构中选择最有希望的节点进行进一步扩展或评估。选择操作通常基于启发式评分或搜索策略。
- 回溯(Backtrack):在推理过程中返回到之前的节点,尝试不同的推理路径。回溯操作有助于模型纠正错误或探索其他可能的解决方案。
推理机制的工作原理
推理机制通过以下步骤在RLMs中工作:
- 初始化:从用户输入的问题或任务描述开始,构建初始的推理结构。
- 生成推理步骤:使用策略模型生成新的推理步骤,扩展推理结构。
- 评估推理路径:使用价值模型评估推理路径的质量,选择最有希望的路径。
- 选择和扩展:根据推理策略(如MCTS)选择最有希望的节点进行扩展,生成新的推理步骤。
- 回溯和更新:将评估结果回溯到根节点,更新路径的价值,为后续选择提供更准确的评估。
- 终止条件:当达到终止条件(如找到解决方案或达到最大推理深度)时,推理过程结束,形成最终答案。
推理机制的特点
- 灵活性:推理机制支持多种推理结构和策略,可以根据任务需求进行调整和优化。
- 可扩展性:通过模块化设计,推理机制可以轻松扩展,支持更复杂的推理任务。
- 高效性:通过优化推理策略和操作,推理机制能够高效地探索和评估推理路径,减少计算资源的浪费。
- 可解释性:推理机制通过明确的推理结构和步骤,提高了模型的可解释性,便于理解和验证推理过程。
推理机制(Reasoning Schema) 是RLMs的核心组成部分,它通过定义推理结构、推理策略和推理操作,组织和推进推理过程。推理机制不仅提高了模型的推理能力,还增强了其灵活性、可扩展性和可解释性。通过结合多种推理策略和操作,RLMs能够高效地解决复杂问题,生成高质量的推理路径。
Inference V.S. Reason
最后插一个题外话,解释一下我自己在学习Reason Schema过程的一个困惑:DeepSeek流行之前大多使用的是System 1 Thinking的大模型,也接触到推理(Inference),DeepSeek出现之后也有推理(Reason),字面中文看上去是一样,两者到底有什么区别呢?
先说我自己的总结:「Inference和Reason它们都涉及从已知信息或数据中得出结论的过程,但在具体的应用场景和侧重点上有所不同。Inference主要是指LLM根据已知的参数权重和激活函数等推断相应token的概率高低(System 1);Reason主要是指分析问题的思考逻辑和推理过程(System 2);」
Reason
Reason(推理)通常是指一个理性思维的过程,它涉及到一系列逻辑步骤,从已知的前提或假设出发,通过逻辑规则、第一性原理或经验规则推导出结论。这个过程可以是演绎的(从一般到具体)或归纳的(从具体到一般),并且通常需要更强的逻辑结构和解释性。
特点:
- 逻辑性和系统性:推理过程强调逻辑的连贯性和系统的组织,通常需要明确的规则和步骤。
- 深度和复杂性:推理往往涉及多步骤的分析和决策,能够处理复杂的问题和情境。
- 解释性和透明性:推理过程通常需要能够被解释和验证,因为每一步的逻辑推导都需要清晰和透明。
- 目标导向:推理通常是为了解决特定问题或验证某个假设,有一个明确的目标。
Inference
Inference(推断)是指从已知的数据或信息中得出新的知识或结论的过程。推断可以是统计的、概率的或基于模式的,它更多地依赖于数据和模型的预测能力,而不一定需要完全理解其背后的逻辑过程。
特点:
- 数据驱动:推断通常依赖于数据和统计模型,通过观察数据中的模式和关系来得出结论。
- 预测性和概率性:推断的结果往往是概率性的,表示对未知变量的预测或估计。
- 自动化和高效性:推断过程通常由算法自动执行,能够快速处理大量数据。
- 适应性和灵活性:推断模型可以适应不同的数据分布和复杂场景,不需要明确的逻辑规则。
比较与举例
特性 | Reason(推理) | Inference(推断) |
---|---|---|
侧重点 | 逻辑结构和解释性数据 | 处理和预测能力 |
过程 | 多步骤的逻辑分析和决策 | 数据驱动的统计或概率预测 |
透明度 | 高(每一步都需要解释) | 低(模型内部决策过程可能不透明) |
应用场景 | 解决复杂问题、验证假设 | 数据分析、模式识别、预测 |
依赖 | 逻辑规则、第一性原理 | 数据、统计模型 |
结果 | 明确的结论或解释 | 概率性的预测或估计 |
效率 | 较低(需要详细分析) | 较高(自动化处理大量数据) |
适应性 | 较低(依赖于明确规则) | 较高(适应不同数据和场景) |
- Reason(推理)示例:
在医疗诊断中,医生根据患者的症状、病史和实验室检查结果,通过一系列逻辑推理步骤(如排除法、归纳法)来确定病因。 - Inference(推断)示例:
在金融预测中,算法根据历史市场数据和模型,预测股票价格的走势,结果以概率形式表示。
Public discussion