大语言模型的推理能力

news2025/7/22 22:28:29

2025年,各种会推理的AI模型如雨后春笋般涌现,比如ChatGPT o1/o3/o4、DeepSeek r1、Gemini 2 Flash Thinking、Claude 3.7 Sonnet (Extended Thinking)

对于工程上一些问题比如复杂的自然语言转sql,我们可能忍受模型的得到正确答案需要更多时间,但是准确度一定要高。那么我们就可以考虑用文中的方法(模型推理能力)得到更高精确度。

什么是推理能力

简单说,就是模型在回答问题时会先输出一大段推理过程,然后才给出最终答案。

下图我们分别在deepseek的官网使用不带深度思考的与带深度思考(DeepSeek-R1)的模型对北京是中国的首都吗?
可以看到当我们使用深度思考模型AI不会直接回答,而是会先来一段内心独白再去回答,这中间的内心独白就叫做推理。
在这里插入图片描述
推理能力类似早先年间计算机视觉领域的可视化模型输出的过程。推理能力是某些大模型本身就存在的能力,我们能达到的推理效果是因为我们通过训练或提示词解码了这一过程。

在这里插入图片描述

让LLM实现推理能力的四个方法

Chain-of-Thought 提示词并不是对所有LLM都通用,比如LLama3不适用。

我们在平台上使用的DeepSeek-R1就是结合了本文提到的四种方法实现的

1. Chain-of-Thought

CoT方法是一种提示词引导,分为Short CoT和Long CoT代表性的Supervised CoT,Short CoT又可分为few-shot CoT和 zero-shot CoT。

类别方法名称实现方式示例
Short CoTFew-shot CoT提供示例引导给出2-3个完整的问题-思考-答案示例,然后提问
Short CoTZero-shot CoT简单提示引导在问题后加上"让我们一步步思考"
Long CoTSupervised CoT详细流程指导编写复杂提示词,明确指定思考流程、验证步骤、输出格式等

few-shot CoT是给一些范例引导模型思考,下图展示了few-shot CoT的过程。zero-shot CoT是在问题后面加上一步步来思考在这里插入图片描述
zero-shot CoT是在问题后面加上让我们一步步思考,下图展示了zero-shot CoT的过程。
在这里插入图片描述
Supervised CoT通过编写详细的提示词来指导模型的思考流程,下图展示了Supervised CoT的过程:
在这里插入图片描述
在这里插入图片描述

2. 多次采样

该方法核心是既然一次做不对,那就多试几次。由此引出了两类工程问题:

  • 如何让模型尝试多次?(通常尝试16+次)
  • 如何在多次生成的答案筛选正确答案
产生多个答案
  1. 问题难度决定策略
    • 简单问题:纯串行效果最好
    • 困难问题:需要并行+串行的平衡
    • 中等问题:理想比例介于两者之间
  2. 计算预算影响
    • 小预算:串行采样更高效
    • 大预算:需要平衡分配避免过度优化
  3. 互补性
    • 并行采样提供全局搜索能力
    • 串行采样提供局部优化能力
    • 两者结合能够充分利用测试时计算资源
1. 并行采样(Parallel Sampling)

核心思想:同时生成多个完全独立的解答

具体做法

  • 给定同一个问题,让模型独立生成N个不同的回答
  • 每次生成都是从头开始,互不依赖
  • 通过设置temperature > 0来引入随机性,确保每次生成的答案都不完全相同
2. 串行采样(Sequential Sampling)/ 迭代修正

核心思想:基于前一次的尝试来改进下一次的回答

具体做法

  • 先生成一个初始答案
  • 将这个答案作为上下文,让模型基于此生成改进版本
  • 重复这个过程,每次都在前面答案的基础上进行优化
3. 混合策略:并行+串行

最佳策略往往是两种方法的结合
具体做法

  • 将计算预算分配给并行和串行两种采样
  • 比如用一部分预算生成几个独立的起始点
  • 然后从每个起始点进行串行改进

适应性分配

  • 简单问题:更多串行采样(因为初始答案通常在正确轨道上)
  • 困难问题:更多并行采样(需要探索不同的解题策略)
  • 中等难度:平衡分配
筛选正确答案
1. Majority Vote:群众的智慧

最直观的方法是投票机制:看哪个答案出现次数最多就选哪个。

实验数据显示了一个很有趣的现象:Majority Vote的效果提升并不是线性的。

  • 前期快速上升:从1次尝试到16次,准确率提升很明显
  • 中期平缓增长:从16次到64次,提升变得温和
  • 后期趋于饱和:超过128次后,基本不再提升

这个曲线形状很符合直觉。想象一下,如果正确答案出现的概率是30%,那么:

  • 试1次:30%概率对
  • 试5次:如果正确答案出现2次以上就赢,概率大大提升
  • 试50次:如果正确答案真的占30%,那肯定会胜出

但如果模型本身对某类问题就是"系统性地理解错误",那试再多次也没用——每次都会用错误的方法,只是错得稍有不同而已。

实际操作中,你需要在提示词里告诉模型把最终答案放在特定标签中(比如<answer></answer>),这样才能方便地统计各个答案的出现频率。

2. Best of N:专业裁判来评分

你可以直接再加一个模型,用提示词让模型判断它做得对不对。
更高级的做法是训练一个专门的验证器来给答案打分,然后从N个候选中选出得分最高的。这类似于建立一个机器学习模型,我们需要准备数据集,然后得到这样的模型

训练验证器的方法很巧妙:

  1. 准备一批有标准答案的题目
  2. 让语言模型生成大量不同的解答
  3. 根据最终答案的对错来标注:正确答案标记为1,错误答案标记为0
  4. 用这些数据训练验证器

这样就得到了一个"专业裁判",能够识别哪些答案更可能正确。

3. Beam Search:智能路径探索

如果说Best of N是"海选后评判",那么Beam Search就是"边走边筛选"的智能策略。它不等到最后才评判,而是在解题的每一步都进行筛选,只保留最有希望的路径继续探索。

核心思想:把解题过程看作一棵树,每一步都是树的一个分支,我们只保留最promising的几条路径继续往下走。

具体流程

  1. 生成多个起始步骤:比如生成8个不同的第一步解法
  2. 过程验证器评分:用训练好的验证器给每个步骤打分
  3. 保留最优路径:只保留得分最高的4个步骤(这个4就是beam width)
  4. 继续扩展:从这4个步骤分别生成下一步,又得到新的候选
  5. 重复筛选:再次用验证器评分,保留最好的4个
  6. 直到完成:重复这个过程直到得到最终答案

关键组件 - 过程验证器
与普通验证器不同,过程验证器不需要看到完整答案就能判断当前步骤的质量。它就像一个经验丰富的老师,看到学生解题的前几步就能判断这个思路靠不靠谱。

训练过程验证器的巧妙方法

  1. 从某个中间步骤开始,让原模型继续解题多次(比如20次)
  2. 统计从这个步骤开始最终得到正确答案的比例
  3. 这个比例就是该步骤的"质量分数"
  4. 训练验证器学会预测这个分数

比如从某个step1开始,20次尝试中有14次得到正确答案,那这个step1的质量分数就是0.7。

实际操作技巧

请逐步解决这个数学问题
每个步骤用<step>和</step>标签包围
示例:
<step>分析:这是一个几何问题...</step>
<step>计算:根据勾股定理...</step>

让模型生成到</step>就停止,这样可以精确控制每次只生成一步,然后用验证器评估这一步的质量。

3. 模仿学习(Imitation Learning)

传统的训练数据只包含问题和答案,但在这种方法中,我们的训练数据还包含了完整的推理步骤。
比如说,原来的训练数据是:

  • 问题:小明有3个苹果,小红给了他2个,他现在有几个苹果?
  • 答案:5个

现在的训练数据变成:

  • 问题:小明有3个苹果,小红给了他2个,他现在有几个苹果?
  • 推理过程:小明原本有3个苹果,小红又给了他2个苹果,所以总共是3+2=5个苹果
  • 答案:5个

这里遇到的最大问题是:推理过程的数据从哪里来?让人工去标注这些推理步骤实在太耗时耗力了。

聪明的解决方案是:让语言模型自己生成推理过程。市面上已经有很多强大的推理模型,比如GPT-o1、Claude等。最简单的方法就是知识蒸馏:

  1. 用一个强大的"老师"模型生成推理过程和答案
  2. 让你的"学生"模型直接学习这些数据
  3. 完成训练

4. 强化学习

DeepSeek团队首先创造了一个叫R1-0的模型,这是一个完全用强化学习训练出来的版本。他们以DeepSeek-V3-Base作为基础模型,用两个主要的奖励信号进行训练:

  • 正确率奖励:答对问题得到正向反馈
  • 格式奖励:要求模型生成特定的思考标记(think token)
    实验结果表明,这种纯粹的强化学习方法确实有效。

真正的DeepSeek-R1:复杂的混合训练流程

R1-0效果单次尝试的正确率可以接近GPT-o1,但是它有一个致命问题:生成的推理过程几乎无法阅读

官方发布的DeepSeek-R1对R0有了更进一步提升,从而使得其推理过程能正确被阅读,且效果超过o1。

R1使用的方法其实就是融合了前面提到的四种方法。

第一步:推理数据人工标注

首先,研究团队用R1-0来生成带有推理过程的训练数据。但由于R1-0的输出质量堪忧,他们投入了大量人力去修改和改写这些推理过程。

人工标注员需要将模型生成的那些难以理解的推理过程,改写成人类可以阅读的版本。

除了改写R1-0的输出,他们还使用了CoT:

  • 用少样本提示(Few-shot CoT)让其他模型生成推理数据
  • 使用提示工程让模型生成更详细、包含反思和验证的答案

这一步做完后,就可以训练一个模型了。我们把这个训练好的模型称为模型A

第二步:改进的强化学习

接下来,他们对模型A进行强化学习,但这次的强化学习有所改进。除了要求高正确率,还增加了一个重要约束:语言一致性奖励

如果模型在推理过程中始终使用同一种语言(比如全程英文或全程中文),就会获得额外奖励。这样可以避免模型在推理中频繁切换语言,提高可读性。

虽然这个约束会轻微降低模型的正确率,但研究团队认为这是值得的权衡。

第三步:扩展任务范围

有了模型B之后,训练的重点从数学和编程扩展到各种不同类型的任务。他们让模型B对各种问题生成推理过程和答案。

由于很多任务没有标准答案,他们使用DeepSeek-V3作为验证器来判断答案质量。同时,他们还设置了一些过滤规则,去除那些质量较差的推理过程,比如:

  • 使用多种语言混杂的过程
  • 过于冗长的推理
  • 包含不必要代码的过程

第四步:大规模模仿学习(模型C)

这一步是自动化的,因此可以生成更多数据。他们收集了60万条推理数据,同时为了防止模型遗忘之前学到的知识,还加入了20万条自我输出数据(让模型学习自己之前的优质输出)。

用这80万条数据对DeepSeek-V3-Base进行模仿学习,得到模型C。

第五步:最终的强化学习

最后,对模型C进行一轮强化学习,重点提升模型的安全性和有用性,最终得到我们使用的DeepSeek-R1。

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

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

相关文章

Redis的安装与使用

网址&#xff1a;Spring Data Redis 安装包&#xff1a;Releases tporadowski/redis GitHub 解压后 在安装目录中打开cmd 打开服务&#xff08;注意&#xff1a;每次客户端连接都有先打开服务&#xff01;&#xff01;&#xff01;&#xff09; 按ctrlC退出服务 客户端连接…

2024年数维杯国际大学生数学建模挑战赛C题时间信号脉冲定时噪声抑制与大气时延抑制模型解题全过程论文及程序

2024年数维杯国际大学生数学建模挑战赛 C题 时间信号脉冲定时噪声抑制与大气时延抑制模型 原题再现&#xff1a; 脉冲星是一种快速旋转的中子星&#xff0c;具有连续稳定的旋转&#xff0c;因此被称为“宇宙灯塔”。脉冲星的空间观测在深空航天器导航和时间标准维护中发挥着至…

C# 控制台程序获取用户输入数据验证 不合规返回重新提示输入

在 C# 控制台程序中实现输入验证并循环重试&#xff0c;可以通过以下方式实现高效且用户友好的交互。以下是包含多种验证场景的完整解决方案&#xff1a; 一、通用输入验证框架 public static T GetValidInput<T>(string prompt, Func<string, (bool IsValid, T Val…

TDengine 运维——巡检工具(安装前检查)

简介 本文档旨在介绍 TDengine 安装部署前后配套的巡检工具。 相关工具的功能简介&#xff1a; 工具名称功能简介安装前检查部署前对 TDengine 安装部署的依赖要素进行安装前检查安装前预配置部署前对 TDengine 安装部署的依赖要素进行安装前预配置安装部署指定环境安装部署…

【Linux】权限chmod命令+Linux终端常用快捷键

目录 linux中权限表示形式 解析标识符 权限的数字序号 添加权限命令chmod 使用数字表示法设置权限 使用符号表示法设置权限 linux终端常用快捷键 &#x1f525;个人主页 &#x1f525; &#x1f608;所属专栏&#x1f608; 在 Linux 系统里&#xff0c;权限管理是保障系…

Java八股文智能体——Agent提示词(Prompt)

这个智能体能够为正在学习Java八股文的同学提供切实帮助&#xff1a;不仅可以帮你优化答案表述&#xff0c;还能直接解答八股文相关问题——它会以面试者的视角&#xff0c;给出贴合求职场景的专业回答。 将以下内容发送给任何一个LLM&#xff0c;他会按照你提示词的内容&…

Go语言的context

Golang context 实现原理 本篇文章是基于小徐先生的文章的修改和个人注解&#xff0c;要查看原文可以点击上述的链接查看 目前我这篇文章的go语言版本是1.24.1 context上下文 context被当作第一个参数&#xff08;官方建议&#xff09;&#xff0c;并且不断的传递下去&…

数据库原理 试卷

以下是某高校教学管理系统的毕业论文指导ER图&#xff0c;数据信息&#xff1a;一名教师指导多名学生&#xff0c;一名学生只能选择一名教师&#xff0c;试分析完成以下各题&#xff0c;如用SQL命令完成的&#xff0c;在SQL Server2008验证后把答案写在题目的下方。 图1 毕业论…

【Qt开发】对话框

目录 1&#xff0c;对话框的介绍 2&#xff0c;Qt内置对话框 2-1&#xff0c;消息对话框QMessageBox 2-2&#xff0c;颜色对话框QColorDialog 2-3&#xff0c;文件对话框QFileDialog 2-4&#xff0c;字体对话框QFontDialog 2-5&#xff0c;输入对话框QInputDialog 1&…

2025年渗透测试面试题总结-匿名[校招]攻防研究员(应用安全)(题目+回答)

安全领域各种资源&#xff0c;学习文档&#xff0c;以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具&#xff0c;欢迎关注。 目录 匿名[校招]攻防研究员(应用安全) 基础部分 1. HTTP状态码 2. HTTP请求方法及作用 3. 网络分层及协议 OW…

碰一碰发视频系统--基于H5场景开发

#碰一碰发视频# 旨在构建一个基于移动网页&#xff08;H5&#xff09;的视频“碰传”交互系统&#xff0c;提供类似华为/苹果设备 NFC 轻碰分享的便捷体验。其核心技术依赖于移动端可用的近场通信&#xff08;NFC 或 H5 相关 API&#xff09;和可靠的媒体数据传输方案。实现细节…

MagicAnimate 论文解读:引入时间一致性的视频人物动画生成方法

1. 前言/动机 问题&#xff1a;现有动画生成方法缺乏对时间信息的建模&#xff0c;常常出现时间一致性差的问题 描述&#xff1a; 现有的动画生成方法通常采用帧变形&#xff08;frame-warping&#xff09;技术&#xff0c;将参考图像变形以匹配目标动作。尽管这类方法能生成较…

数据结构:递归(Recursion)

目录 示例1&#xff1a;先打印&#xff0c;再递归 示例2&#xff1a;先递归&#xff0c;再打印 递归的两个阶段 递归是如何使用栈内存 复杂度分析 递归中的静态变量 内存结构图解 递归&#xff1a;函数调用自己 必须有判断条件来使递归继续或停止 我们现在通过这两个示…

Cesium快速入门到精通系列教程一:打造第一个Cesium应用

一、打造第一个Cesium应用 1、官方渠道下载Cesium&#xff08;可选择历史版本&#xff09; ​​GitHub Releases页面​​&#xff1a;https://github.com/CesiumGS/cesium/releases 访问 Cesium GitHub Releases&#xff0c;此处列出了所有正式发布的版本。 通过标签&#…

力扣题解106:从中序与后序遍历序列构造二叉树

一、题目内容 题目要求根据二叉树的中序遍历序列和后序遍历序列来重建二叉树。具体来说&#xff0c;我们需要利用中序遍历序列和后序遍历序列的特点&#xff0c;通过递归的方法逐步构建出完整的二叉树。 中序遍历序列的特点是&#xff1a;左子树 -> 根节点 -> 右子树。后…

学习STC51单片机25(芯片为STC89C52RCRC)

每日一言 生活就像弹簧&#xff0c;你弱它就强&#xff0c;你强它就弱&#xff0c;别轻易认输。 ESP8266作为路由器模式&#xff08;AP模式&#xff09;也就是在局域网内可以有服务器的作用 那么我们需要将pc作为设备进行连接ESP的发射出来的WIFE 叫做这个AI啥的 也有可能叫做…

宁夏农业科技:创新引领,赋能现代农业新篇章

在广袤的宁夏大地上&#xff0c;农业科技如同一股强劲的春风&#xff0c;吹拂着每一寸土地&#xff0c;为宁夏的农业发展注入了新的活力与希望。近年来&#xff0c;宁夏农业科技以其独特的创新力和实践力&#xff0c;不断推动着现代农业的转型升级&#xff0c;让这片古老的土地…

Accelerate 2025北亚巡展正式启航!AI智御全球·引领安全新时代

近日&#xff0c;网络安全行业年度盛会Accelerate 2025北亚巡展正式在深圳启航&#xff01;智库专家、产业领袖及Fortinet高管、产品技术团队和300余位行业客户齐聚一堂&#xff0c;围绕“AI智御全球引领安全新时代”主题&#xff0c;共同探讨AI时代网络安全新范式。大会聚焦三…

005学生心理咨询评估系统技术解析:搭建科学心理评估平台

学生心理咨询评估系统技术解析&#xff1a;搭建科学心理评估平台 在心理健康教育日益受重视的当下&#xff0c;学生心理咨询评估系统成为了解学生心理状态的重要工具。该系统涵盖试卷管理、试题管理等核心模块&#xff0c;面向管理员和用户两类角色&#xff0c;通过前台展示与…

贪心算法应用:多重背包启发式问题详解

贪心算法应用&#xff1a;多重背包启发式问题详解 多重背包问题是经典的组合优化问题&#xff0c;也是贪心算法的重要应用场景。本文将全面深入地探讨Java中如何利用贪心算法解决多重背包问题。 多重背包问题定义 **多重背包问题(Multiple Knapsack Problem)**是背包问题的变…