研究实锤:别让大模型「想」太多,OpenAI o1准确率竟下降36.3%
思维链(CoT)已被证明可以在许多任务(如多步骤推理)上显著提升大模型的性能。然而,在哪些情况下,CoT 会系统性地降低大模型的性能,这仍然是一个有待进一步讨论的问题。
如今,来自普林斯顿大学和纽约大学的研究团队,参照思考对“人类性能”的影响,提出了新的见解。
他们认为,虽然模型的认知过程与人类的认知过程并不完全相同,但可以参照思考对人类“性能”产生负面影响的情况,假定思考会对模型产生负面影响的环境。
他们从心理学中选择了 6 项已被充分研究的任务类型来探讨 CoT 对 LLM 性能的影响,并验证了 CoT 在一些任务中甚至可能导致模型准确率下降。
这一发现不仅为未来优化 LLM 的提示策略提供了新思路,还为理解人类与模型在推理过程中的相似性与差异性带来了新见解。
论文链接:
https://arxiv.org/abs/2410.21333
研究表明,CoT 并非在所有任务中都能提高模型性能,在隐性统计学习、面部识别、含例外模式的数据分类三种情况下,各种 SOTA 模型的性能都会明显下降。此外,研究本身进一步揭示了通过人类心理学研究大模型的可行性。
研究方法
为分析 CoT 对大语言模型(LLM)与多模态大模型(LMM)性能的影响,该研究的方法框架基于以下两个关键条件:
(1)言语思考或深思熟虑会损害人类“性能”的情况。
(2)将制约人类“性能”的因素推广到语言模型的情况。
之后,为验证“CoT 在一些任务中会导致模型表现下降”的假设,研究团队在上述两个条件的指导下基于人类心理学设计了以下 6 种任务场景:
-
隐性统计学习(Implicit Statistical Learning):考察模型在隐含语法结构的分类任务中使用 CoT
是否会降低表现。基于心理学中的实验结果,该研究假设人类在进行语言推理时往往表现较差,因此 CoT 在该场景下应有类似的效果。 -
面部识别(Facial Recognition):在该任务中,模型需要识别图像中的人脸。基于人类在口头描述面部特征后识别率下降的现象,研究假设 CoT
会影响模型的面部识别准确性。 -
含例外模式的数据分类(Classifying Data with Patterns that Contain Exceptions):该任务模拟模型在含有异常标签的数据中学习的表现。研究假设 CoT 会导致模型在遇到例外情况时增加学习轮次,因为人类通常会倾向于建立简单规则,从而忽视个别特例。
-
解释逻辑不一致(Explaining a logical inconsistency):在逻辑一致性判断任务中,模型需要识别出两句话之间的逻辑冲突,该任务通常会引发人类的语言推理困难。
-
空间直觉(Spatial Intuitions):模型需要推断液体在倾斜容器中的位置。该任务依赖空间和运动直觉,心理学研究表明人类在使用语言推理时效果不佳,该研究假设模型也会遇到类似问题。
-
特征聚合决策(Aggregating Features for a Decision):模型在多维度决策情境中聚合信息并做出决策。由于信息过载通常会导致人类在 CoT 模式下表现不佳,因此研究假设在该任务中,CoT 将不会提高模型性能。
图|对 6 项任务进行评估,以确定 CoT 提示是否会降低任务的绩效。(来源:该论文)
针对每个任务场景,研究团队分别构建了零样本(zero-shot)和 CoT 提示条件,并在多个主流 LLM 和 LMM 上进行测试,包括 GPT-4o、Claude 3.5、Llama 等,通过对比不同条件下模型的准确率,量化 CoT 提示的效果,从而验证他们的假设。
实验结果
研究团队首先对满足上述两个关键条件的 3 类任务场景进行实验验证。
隐性统计学习
针对该情境,该研究考察了模型在分类基于特定语法结构的序列时的表现。任务包含 4400 个分类问题,基于 100 种有限状态语法(FSG)结构,每个测试提供 15 个样例,再要求模型对新序列进行分类。
实验结果显示,使用 CoT 提示的模型表现显著下降,尤其是 OpenAI o1-preview 模型的准确率下降了 36.3%。 这表明当模型过度依赖逐步推理时,CoT 可能会抑制其对隐性统计模式的学习能力。
图 | 人工语法学习中 zero-shot 和 CoT 对比结果。(来源:该论文)
面部识别
在该任务情境中,该研究测试了 CoT 是否会影响模型的面部识别能力,这是基于心理学中“语词遮蔽”现象进行的任务情境设计。模型需要在 500 项任务中从 5 个候选中匹配初始人脸。
结果表明,当被要求执行 CoT 时,每个被测试的 LMM 都显示出性能下降,与假设一致。
图|面部识别中 zero-shot 和 CoT 提示的对比。(来源:该论文)
含例外模式的数据分类
该任务通过包含多个主次特征的分类任务来测试模型在处理含例外情况时的表现,任务要求模型在多次分类中逐步学习,目标是尽可能减少迭代次数。
实验在 GPT-4o、Claude 3.5 Sonnet 和 Claude 3 Opus 上进行,结果表明,CoT 显著增加了学习轮次。平均来看,GPT-4o 在 CoT 条件下完成正确分类所需的轮次为直接提示的四倍,而 Claude 3.5 Sonnet 和 Claude 3 Opus 的轮次需求也分别增加至直接提示的两倍多。
图|使用直接或 CoT 提示,模型学习标签的平均轮数。(来源:该论文)
在 GPT-4o 的进一步分析中发现,直接提示使模型在第二或第三轮就能达到完美分类,而使用 CoT 时模型在第四到第五轮仅能正确分类 8/10 的对象。这表明 CoT 提示会引导模型偏向基于规则的推理方式,而忽视了已知的正确答案,导致分类效率大幅下降。
之后,研究团队又对满足条件(1)但不满足条件(2)的三类任务情境开展实验。
解释逻辑不一致
在该任务中,模型需要识别句子对中的逻辑矛盾性。该任务基于 SNLI 和 MNLI 数据集以及合成数据集。
研究发现,CoT 增加了模型忽视矛盾的可能性,模型在逐步推理时更倾向于关注复杂的逻辑结构,从而忽视了直接矛盾判定。这表明在需要精确逻辑验证的任务中,CoT 提示存在局限性。
图|逻辑不一致任务中比较 zero-shot 和 CoT 的结果。(来源:该论文)
空间直觉
在该情境中,模型需要通过“倾斜杯子”的问题来推断水面的位置。这类任务依赖于人类的空间或运动直觉,而人类通常在非言语思维下表现更好。
模型接收了视觉提示和多项选择答案,实验结果显示,使用 CoT 提示对模型表现无明显影响。这说明在依赖空间或运动直觉的任务中,模型的推理方式与人类的直觉差异较大,因而 CoT 提示的负面影响较小。
图|空间直觉任务中 zero-shot 和 CoT 的比较结果。(来源:该论文)
特征聚合决策
此任务模拟了基于多项特征的决策过程(如选房),用于测试信息超载对决策的影响。人类在类似任务中由于记忆限制,往往在 CoT 模式下表现较差。相对地,模型保留了所有上下文信息,能够无损地聚合和评估每项特征。
结果显示,CoT 提示在高上下文记忆任务中提高了模型表现,说明在信息保留至关重要的场景下,CoT 提示能够发挥正向作用。
图|四种模型和三种范围内的公寓选择任务结果。(来源:该论文)
不足与展望
当然,该研究也存在一些局限性,如下:
inference-time 推理的类型。 自从 CoT 提示被提出以来,研究人员开发了多种特定于应用领域的提示方法,以及更复杂的多次前向传递的通用提示方法,如思维树(tree-of thought)和自一致性(self-consistency)。他们在 GPT-4o 模型上测试了思维树方法在隐式统计学习任务中的有效性,发现其确实提高了分类准确率(64.55% vs. 62.52%),但仍远低于零样本推理的 94.00% 准确率。未来的研究仍需探索此方法是否可以适用于其他任务领域和模型中激发语言思维的方法。
应用范围。 尽管这一研究基于心理学的启发式方法提供了一种识别 CoT 失败案例的策略,但这无法涵盖所有可能导致 CoT 表现下降的情况。现有的心理学研究基于多种理论和实际考量来研究人类,并不能提供涵盖所有任务的详尽或代表性样本,且会遗漏一些仅在模型中具有研究价值的特殊案例。
关于 CoT 未能复制人类结果的替代解释。 对于 CoT 在后面三个任务中没有观察到表现下降,存在一种替代解释——在 LLM 中实现这些任务的方式消除了表现下降的效果。虽然研究对后三个任务情境进行了多种变体的探索,但由于提示的变化几乎是无穷无尽的,这些探索并不详尽。
研究团队表示,虽然该研究聚焦于 CoT 推理,但所提出的框架为利用人类心理学研究评估和改进模型表现提供了一种通用策略。
他们认为,未来还需要更多的跨学科合作,通过将自然语言处理方法、心理学见解与人类和模型表现比较的相关研究相结合,可以形成更全面的 AI 评估和改进策略。
相关文章:

研究实锤:别让大模型「想」太多,OpenAI o1准确率竟下降36.3%
思维链(CoT)已被证明可以在许多任务(如多步骤推理)上显著提升大模型的性能。然而,在哪些情况下,CoT 会系统性地降低大模型的性能,这仍然是一个有待进一步讨论的问题。 如今,来自普林…...

C++游戏开发
C游戏开发概述 C 是游戏开发中的主要编程语言之一,因其性能、控制和广泛的生态系统而受到开发者的青睐。随着游戏行业的迅速发展,C 被用来构建许多成功的游戏和游戏引擎。本文将深入探讨 C 在游戏开发中的应用,包括基础概念、技术栈、示例代…...

ChatGPT中的RAG;大模型微调;通过正确的提问和回答数据进行问答系统的微调;
目录 ChatGPT中的RAG 1.检索器: 2.生成器: 3.结合使用: 大模型微调 通过正确的提问和回答数据进行问答系统的微调 ChatGPT中的RAG 在ChatGPT中,RAG(Retrieval-Augmented Generation)是一种结合了检索与生成的技术,旨在提高模型的回答质量和准确性。 RAG模型通常由两个…...

6款IntelliJ IDEA插件,让Spring和Java开发如虎添翼
文章目录 1、SonarLint2、JRebel for IntelliJ3、SwaggerHub插件4、Lombok插件5、RestfulTool插件6、 Json2Pojo插件7、结论 对于任何Spring Boot开发者来说,两个首要的目标是最大限度地提高工作效率和确保高质量代码。IntelliJ IDEA 是目前最广泛使用的集成开发环境…...

源代码加密解决方案:文档加密与沙盒加密的比较分析
源代码加密是保护企业知识产权和市场竞争力的关键手段。在众多源代码加密技术中,文档加密类软件和沙盒加密类软件SDC是两种重要的解决方案。以下是对这两种技术的分析: 文档加密类软件: 这类软件主要采用APIHOOK应用层透明加密技术࿰…...

Spring Boot 与 Vue 共筑高校网上订餐卓越平台
作者介绍:✌️大厂全栈码农|毕设实战开发,专注于大学生项目实战开发、讲解和毕业答疑辅导。 🍅获取源码联系方式请查看文末🍅 推荐订阅精彩专栏 👇🏻 避免错过下次更新 Springboot项目精选实战案例 更多项目…...

【数据仓库】Hive 拉链表实践
背景 拉链表是一种数据模型,主要是针对数据仓库设计中表存储数据的方式而定义的;顾名思义,所谓拉链表,就是记录历史。记录一个事务从开始一直到当前状态的所有变化的信息。 拉链表可以避免按每一天存储所有记录造成的海量存储问题…...

【python_pandas_将列表按照某几列进行分组,再求和,按照原列表的字段顺序返回】
说明: 1、按照[“行描述”,”‘公司代码’, ‘科目代码’, ‘预算项目代码’] 进行分组。 2、对“贷方”列进行求和。 3、最后按照之前的表头顺序进行排序,返回结果列表。 #-*- coding:utf-8-*import pandas as pd def consolidate_salary_provisions(l…...

Vue的双向绑定
Vue的双向绑定特性介绍 在现代前端开发中,数据的管理和UI的更新是至关重要的。Vue.js作为一个渐进式JavaScript框架,提供了强大的双向数据绑定机制,极大地简化了这些操作。在本文中,我们将深入探讨Vue的双向绑定特性。 什么是双…...

谷歌浏览器安装 Vue.js devtools 插件
文章目录 1. 安装2. 使用3. 注意 1. 安装 ① 搜索极简插件:https://chrome.zzzmh.cn/index ② 搜索框输入 Vue,选择 Vue.js devtools ③ 从历史版本里面选择并下载,选择 6.4 版本的就行 ④ 打开浏览器,右上角三个点 → 扩展程序…...

LWIP通信协议UDP发送、接收源码解析
1.UDP发送函数比较简短,带操作系统和裸机一样。以下是udp_sendto源码解析; 2.LWIP源码UDP接收数据 2.1.UDP带操作系统接收数据,以下是源码解析; 2.2.UDP裸机接收数据,以下是源码解析...

Linux—进程学习-01
目录 Linux—进程学习—11.冯诺依曼体系结构2.操作系统2.1操作系统的概念2.2操作系统的目的2.3如何理解管理2.4计算机软硬件体系的理解2.5系统调用和库函数的概念 3.进程3.1进程是什么3.2管理进程3.2.1描述进程-PCB3.2.2组织进程3.2.3总结 3.3查看进程 4.与进程有关的系统调用 …...

FR动态数据源插件支持配置模板中某个数据集进行数据连接的切换
1 需求背景 该插件的需求来源于官方帮助文档: 动态数据源/数据库- FineReport帮助文档 - 全面的报表使用教程和学习资料 官方的方案的缺点是会暴露数据库IP,端口密码等,不安全。...

epoll 技术为什么用rbtree而不用hashmap呢?
目录 1.epoll 技术为什么用rbtree而不用hashmap呢?2 .红黑树支持顺序遍历,这对于epoll的事件管理机制可能非常有用, 怎么理解 epoll 理解,可以参考这个 https://zhuanlan.zhihu.com/p/64746509 1.epoll 技术为什么用rbtree而不用…...

关于Android Studio Koala Feature Drop | 2024.1.2下载不了插件的解决办法
解决 androidStudio Settings->Plugins下载插件,点击install后没反应,同时插件描述相关显示不出来 第一步: 第二步: 点击设置,勾选Auto-detect proxy settings,输入网址 https://plugins.jetbrains.com…...

公共命名空间,2024年11月的笔记
进行类比思维。对于在电脑上显示字符的任务,需要字符集。曾经有人研究算法,希望编出一个神奇的程序,能够显示所有字符。但最终的结果是,需要字符集,人工地把所有字符收集起来,让电脑一个个记住,…...

登录功能设计(php+mysql)
一 登录功能 1. 创建一个登录页面(login.php),包含一个表单,用户输入用户名和密码。 2. 在表单的提交事件中,使用PHP代码处理用户输入的用户名和密码。 3. 首先,连接MySQL数据库。然后&a…...

从0开始学习Linux——远程连接工具
往期目录: 从0开始学习Linux——简介&安装 从0开始学习Linux——搭建属于自己的Linux虚拟机 从0开始学习Linux——文本编辑器 从0开始学习Linux——Yum工具 Linux 远程连接工具是指用于从远程计算机连接到 Linux 系统并进行操作的各种工具。它们可以帮助管理员或…...

Java线程6种生命周期及转换
多线程技术是我们后端工程师在面试的时候必问的一个知识点,今天就来盘点一下多线程的相关知识, 先来说下进程,线程及线程的生命周期: 进程:进程就是正在进行中的程序,是没有生命的实体,只有在运…...

关于STM32在代码中的而GPIO里面的寄存器(ODR等)不需要宏定义的问题
1.GPIO为什么需要宏定义地址 在 STM32 这样的微控制器中,硬件寄存器的地址是固定的并且特定于每个外设(比如 GPIOA、GPIOB 等)。为了方便代码访问这些硬件寄存器,我们通常会使用宏定义来指定每个外设的基地址。这样做有几个理由&a…...

【北京迅为】《STM32MP157开发板嵌入式开发指南》-第七十七章 交叉编译QT工程
iTOP-STM32MP157开发板采用ST推出的双核cortex-A7单核cortex-M4异构处理器,既可用Linux、又可以用于STM32单片机开发。开发板采用核心板底板结构,主频650M、1G内存、8G存储,核心板采用工业级板对板连接器,高可靠,牢固耐…...

高效率的快捷回复软件 —— 客服宝聊天助手
在电商行业日益繁荣的今天,高效的客户沟通对于企业的成功至关重要。无论是电商平台、居家客服还是其他各类客服行业,都需要一款强大的工具来提升工作效率。今天,我们就来介绍一款高效率的快捷回复软件 —— 客服宝聊天助手。 一、跨平台跨店铺…...

Node.js + MongoDB + Vue 3 全栈应用项目开发
🌈个人主页:前端青山 🔥系列专栏:node.js篇 🔖人终将被年少不可得之物困其一生 依旧青山,本期给大家带来node.js篇专栏内容:Node.js MongoDB Vue 3 全栈应用项目开发 在前几篇文章中,我们已经为 Node.j…...

【云原生开发】如何通过client-go来操作K8S集群
✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…...

CSS基础知识六(浮动的高度塌陷问题及解决方案)
目录 1.浮动高度塌陷概念 2.下面是几种解决高度塌陷的几种方案: 解决方案一: 解决方案二: 解决方案三: 1.浮动高度塌陷概念 在CSS中,高度塌陷问题指的是父元素没有正确地根据其内部的浮动元素或绝对定位元素来计…...

开源模型应用落地-glm模型小试-glm-4-9b-chat-vLLM集成(四)
一、前言 GLM-4是智谱AI团队于2024年1月16日发布的基座大模型,旨在自动理解和规划用户的复杂指令,并能调用网页浏览器。其功能包括数据分析、图表创建、PPT生成等,支持128K的上下文窗口,使其在长文本处理和精度召回方面表现优异&a…...

.net为什么要在单独的项目中定义扩展方法?C#
使用 扩展方法(Extension Methods) 和创建 扩展类(Extension Class) 在 C# 中有几个特定的目的,主要是为了提高代码的可扩展性、灵活性和可读性。让我们来详细解释这些概念以及为什么扩展类需要是静态的。 为什么使用…...

动态规划 —— dp 问题-打家劫舍II
1.打家劫舍II 题目链接: 213. 打家劫舍 II - 力扣(LeetCode)https://leetcode.cn/problems/house-robber-ii/ 2. 题目解析 通过分类讨论,将环形问题转换为两个线性的“打家劫舍|” 当偷第一个位置的时候,rob1在&#…...

Java基础-组件及事件处理(上)
(创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹) 目录 Swing 概述 MVC 架构 Swing 特点 控件 SWING UI 元素 JFrame SWING 容器 说明 常用方法 示例&a…...

Python实例:爱心代码
前言 在编程的奇妙世界里,代码不仅仅是冰冷的指令集合,它还可以成为表达情感、传递温暖的独特方式。今天,我们将一同探索用 Python 语言绘制爱心的神奇之旅。 爱心,这个象征着爱与温暖的符号,一直以来都在人类的情感世界中占据着特殊的地位。而通过 Python 的强大功能,…...