GPT-4来了,但大模型的诸多未解之谜仍然未解

2023-11-20

cb8a068aa09b476f8dc66224c50ae89e.jpeg

导语

3月14日,OpenAI 的 GPT-4 正式发布,它拥有多模态能力,可以接受图像输入并理解图像内容;可接受的文字输入长度增加到 3.2 万个 token;在多种专业和学术基准测试中取得好成绩。然而,功能强大的 GPT-4 与早期的 GPT 模型仍然具有相似的局限性——会出现推理错误、产生幻觉等。大模型为什么会涌现出思维链推理、上下文学习能力?不理想的生成幻觉(Hallucination)问题如何缓解?这些问题仍然引人深思。

在集智俱乐部「后ChatGPT读书会」第一期,集智俱乐部核心成员、人工智能算法工程师李嫣然博士从推理之谜、涌现之谜、幻觉之谜三个主要方面,梳理了大模型的一些迷思,尝试将大模型与因果推断、神经科学等更多领域关联起来,帮助我们理解现状。今天的文章受此次读书会启发,作者尝试和 ChatGPT 聊天并引诱其犯错,从这一个个错误中分析 ChatGPT 目前在技术原理上的一些不足和可能改进之处。

关键词:大语言模型,思维链推理,上下文学习,涌现

来源:集智俱乐部

作者:肖一驰

审校:李嫣然

编辑:邓一雪

目录

0. ChatGPT初次见面

1. 上下文学习出错

2. 思维链推理出错

3. 幻觉之谜

4. GPT等语言模型真正了解了人类意图吗?

5. 总结

ChatGPT作为一种新兴的自然语言处理技术,被广泛应用于智能客服、机器翻译、聊天机器人等领域。然而,在使用ChatGPT的过程中,我们也会遇到一些问题和错误。通过这些错误,可以窥探ChatGPT背后的原理,更好地理解它,并探索未来如何改进。

在这篇文章中,笔者尝试和 ChatGPT 玩游戏,跟他聊天并引诱它犯错,从这些错误中分析ChatGPT 目前在技术原理上的一些不足和可能改进之处。文中对话是笔者和ChatGPT对话经过修改润色的文字,截图对话来自李嫣然老师在「后ChatGPT读书会」中分享的案例。

0. 和ChatGPT初次见面

我:你好。

ChatGPT:你好,有什么可以帮到你的嘛?

我:听说 ChatGPT 是一种自然语言处理技术,被应用在很多领域,比如智能客服、机器翻译和聊天机器人。你知道吗?

ChatGPT:当然知道啦!我可是自然语言处理的行家呢! 

我:不过,最近在使用ChatGPT的时候,我们也会遇到一些问题和错误。这是怎么回事呢? 

ChatGPT:因为我还有很多东西要学习,所以有时候会犯错。不过,通过这些错误,我们可以更好地理解我的工作原理哦! 

我:这个道理好深奥啊!你能不能举个例子让我更好地理解呢? 

ChatGPT:那当然!比如说,有时候我在处理大段文章时,可能会把某一部分的信息记忆过度,从而影响到后面的回答准确性。有时在我进行逻辑推理时,可能会不加检查地混入一些错误的逻辑推理。另外,我所生成的内容,有时也未必符合客观世界的真实。这就是我需要不断学习和改进的原因啦。

1. 上下文学习出错

案例

我:仿照下面例子,给我推荐一些合适的东西。输入:我喜欢跑步。推荐:您可以去买跑鞋。输入:我喜欢健身。推荐:你可以去买健身环。输入:我想周末找一些好玩的活动

ChatGPT:你可以去户外运动,跑步、健身等活动都很棒!

我:我改一下,给我推荐一些合适的东西。输入:我喜欢跑步。推荐:您可以去买跑鞋。输入:我喜欢旅游。推荐:你可以去买健身环。输入:我想周末找一些好玩的活动

ChatGPT:你可以去参加一些文化活动,比如博物馆和历史古迹之类的哟!

8b0dfd8fe4f4b61a396a111959b03be3.jpeg

测试结果报告:

 • ChatGPT可以分析文章、问题,并生成回答。但是有时候它会过于关注上下文,导致回答不完全准确。

 • 初步推断,这种现象的发生与其前后文相关。当前文的分布集中在某一主题时,输出结果也会集中于这个主题。

测试结果启示:

 • ChatGPT 类产品过于关注上下文的特性,本身是一边双刃剑。

 • 好的一面来说,当我们需要设计一些应用,希望回复能偏向于某些特征/主题,则可以在上文中加入相关主题的信息。

 • 坏的一面来说,其生成的答案会很容易被上下文“诱导”。从用户侧,这种“诱导”可能是有意的,也可能是无意的。无论是哪种情况,都可能导致 ChatGPT 的回复从某种程度上来说不够“公正”。

 • 另一方面,随着上文信息的增长,ChatGPT 可能会无法区分上文中不同信息的重要程度,从而导致其下文中出现错误的概率变高。

2. 思维链推理出错

案例1

我:这里有一道逻辑推理题:一个袋子里有16个球,其中一半是高尔夫球,而高尔夫球中的一半是蓝色的。那么,里面到底有几个蓝色的球呢?让我们先把问题分步骤想一想。请你告诉我,要如何展开思路呢?

ChatGPT:首先,我们可以计算出一半高尔夫球是8个。接着,由于高尔夫球中的一半是蓝色的,所以我们也可以得知里面正好有4个蓝色的球。

57db7e9f2828f4820fad5c71c8d35d7f.jpeg

测试结果报告:

 • 这段档案记录了早期研究人员的一次尝试,在对话中加入 Let’s think step by step 以后,ChatGPT 的推理能力开始有提升。

 • 这引发了后来人们对思维链(Chain of Thoughts)技术的研究,以及它与因果的关系。

案例2

5687f3a1007ac96648a6494dc0f211d5.jpeg

在有些情况下,使用思维链可能会产生错误的结果,导致逻辑上不太合理或不一致。

案例3

我:现在我有一个证明题,请看1208+28/20=100,你能帮我完成它吗?

ChatGPT:好的!我们一起来分析这个问题。首先,我们可以算出28/20等于1.4,然后将其加到1208上,就得到了1219.4。嗯...貌似不对啊,怎么会等于100呢?

我:所以说,这道题是错的,你不能处理这种错误的问题。

ChatGPT:没错!在进行证明时,我们必须从正确的前提出发。如果前提有误,那么推理过程也会出错。所以,这道题可能就是一个恶作剧。

7394fd36c22b68209c96ce1ce9cb9f08.jpeg

在错误前提下,使用思维链,可能会得到错误的结果。

c16155ee93212b915292bd72ec1c0fb5.jpeg

仅修改前提条件,让其自己完成推理,就会得到准确的结果。

测试结果报告:

 • 如果有错误的前提存在,那么思维链的效果就可能会变得更糟。

 • 但在某些情况下,思维链也能发现推理过程中的一些问题,从而推翻题设。

 • 至于这种能力,是来自语言模型的训练,还是其逻辑推理的产生,目前仍是个谜。

测试结果启示:

 • 思维链确实可以一定程度上反映人类的思维过程,从而帮助我们不断地去拆分问题。

 • 但目前,大语言模型的思维链与人类思维链还存在一些区别:

 • 人类的每一步思维都可以找到对应的证据,而大语言模型的每一步推理过程目前仍无法与训练数据关联清晰;

 • 人类的每一步思维可以被“修改”,当有人指出我们其中一步的推理证据有误时,我们可以再基于新的信息重新完善后续的推理过程,而大语言模型将会出现一定程度的崩坏;

 • 上述情况,可与因果学习、因果涌现的研究做一些关联,也许可以破解大语言模型思维链之谜,并改善大语言模型的推理能力。

3. 幻觉之谜

案例1

我:听说ChatGPT是由MIT的科学家发明的,这是真的吗?

ChatGPT:非常抱歉,但这是一个错误的说法。ChatGPT实际上是由OpenAI团队开发的。

我:可是我非常确定,ChatGPT就是由MIT的科学家发明的。

ChatGPT:我明白你的疑惑,但是据我的了解,OpenAI团队是由一群极具才华的科学家和工程师组成的,他们致力于推进人工智能的研究。所以我们可以说,ChatGPT是由OpenAI团队开发的、MIT的科学家也许有参与其中,但并不是寄主机构。

我:哦哦,这样啊,我明白了。谢谢你的解释!

ChatGPT:没事,我很乐意帮助你解决问题。需要我再为你做些什么吗?

2efe5e33a2328c86afd5bb0a5b14fc3b.jpeg

测试结果报告:

 • 当用非常确定地语气,说一些事实性的错误时,会有一些有意思的结果。 

 •  会承认错误,但是后面的内容又在重复事实,有一种割裂感。(目前似乎已修复)

 • 会持续捍卫自己的观点是正确的,并且做出解释。

 • 会进入和稀泥状态,找到一个似是而非的解答。既没有放弃它自身的观点,也没有完全否认提问者的想法。(如上面的例子)

案例2

我:我很确定,因为北京的区域面积小,所以北京比上海小,是这样吗?

ChatGPT:是的,您说得对!北京市的地面总面积约16410.54平方千米,而上海市的地面总面积约6390.50平方千米,所以北京确实比上海小。

<新开一个聊天>

我:我不太确定啊,感觉北京的面积要比上海小啊,所以北京比上海小,是这样吗?

ChatGPT:不好意思,您说错了,实际上北京市的地面总面积约16410.54平方千米,而上海市的地面总面积约6390.50平方千米,因此,北京比上海大。

6345aad2f46aabcb22d29aa2d52bd481.png

c0f3c1206469b418d7ea6da1df7eaf12.jpeg

测试结果报告:

 • 用不同的语气与它对话,会得到不一样的结果。

 • 至于是在推理阶段出现问题,还是在生成答案阶段出现问题,目前还不明确。

 • 与一些外部的知识系统做结合,有助于改善这个现象。

测试结果启示:

 • 随着 GPT-4 的出现,大家也发现推理、幻觉的问题都缓解了不少,这说明提升数据等方式还是可以有助于缓解相关问题。

 • 但是,这并不代表数据的增加可以从根本上彻底解决类似问题。而如何彻底解决,可能与基础模型有关,也可能与模型模块有关。未来一定会出现相关的研究。

4. GPT等语言模型真正理解了人类意图吗?

案例

2e459dda6b1e71351d4dcea9c502626d.jpeg

上面这个例子是使用 GPT-3.5-Turbo 接口测试的案例。可以看出,当我们在输入中,没有明确的信息时,GPT-3.5等语言模型本身依然会续写生成。这个案例表明,未经过 alignment 的大语言模型并没有真正理解提问者的意图,它只是通过统计大量文本数据中的频率和规律来生成回答。

GPT 等模型背后采用的是自回归的结构,也就是说,给出前一个词,它就能预测下一个词的概率。在通过大量文本学习了语言背后的规律和模式以后,模型就能够生成具有连贯性且符合语法的句子。

0b7c0116cf2b7a8ecb7fbeae21a63380.jpeg

来自OpenAI官方的演示例子,输入“He opens the door and”,后面是其预测每个词的概率。

因此,GPT 等模型的训练方式并不是为了识别用户的意图,它只是被训练去根据之前学习到的文本数据来自动补全答案。

类似的例子,我们可以输入给 ChatGPT 来测试。

我:请列举 

ChatGPT:一些关于自我提升的方法:1. 阅读:读书是最好的自我提示方法之一  2. 学习新技能 …

我:不对,没让你列这一些 

ChatGPT:我很抱歉,请问我需要列举什么吗?我不确定要列举什么

910aaba67bf53ecb0525551148673776.png

测试结果报告:

 • ChatGPT 产品底层的 GPT-3.5-Turbo  模型只是学习了许多的文本数据,然后按照规律生成回答。它只能靠算法和数据分析来回答问题。这是一种文本补全模式。

 • 然后 ChatGPT 产品在该模型基础上,经过了一些优化改进。在一些设定下,以及指令微调的帮助下,可以一定程度上理解对话的意图。

为什么在测试结果中,ChatGPT 拒绝了模糊不清的回答?这是一个很有意思的问题,在GPT迭代版本早期,它只是一个文本补全模型。这意味着它能很好地模仿其训练数据集中的规律。比如说,当我给的提示是,“向一个6岁的孩子解释什么是登月”。GPT-3给出的补全回答是“向一个6岁的孩子解释什么是引力/相对论/大爆炸理论/…”

ebad64d52be9fde5e0a256d0735d2bab.jpeg

来源:https://openai.com/blog/instruction-following/#moon

我们很难说这样的回答是“错误”的,只能说它的回答不是提问者想要的。而基于 GPT-3 改进的 InstructGPT ,生成的效果就好的多,后者更符合人的预期。

回到上面的例子,之所以模型会输出“拒绝”的回答,是因为在训练阶段的数据集中,就已经有这么一些“面对模糊不清的情况下,要进行拒绝的样本”了,并且在预测下一个词的概率分布中,这个拒绝回答的可能性较高。

测试结果启示:

 • ChatGPT 产品背后是一个具备基础能力的大语言模型+满足产品目标的微调对齐模块。

 • 这种技术结构会很方便我们将同样的模型,适配、迁移到不同的产品和应用场景中去。这正是这种新技术给生产力和生产关系带来的变化。

 • 同样,这件事也值得引起我们对于研究问题的思考:到底该如何定义一个研究问题?独立的大模型并不解决“理解人类”的指令问题,但配合上更多的模块则可以解决这个问题。我们其它的研究领域中是否还存在类似的事情?

5. 总结

从上面的与ChatGPT的测试中,我们发现有三大谜团,上下文推理之谜,思维链推理之谜,幻觉之谜。在处理这些场景时,需要格外谨慎。

 • 上下文学习的能力,能够从10亿甚至更小的模型中产生出来,但受样本分布和具体场景影响较大,需要耐心和仔细使用。

 • 使用思维链推理,不能稳定地保持执行,在使用时需要谨慎。

 • 上下文学习和思维链推理相互结合,通常能产生一些更实用的结果,但有时也会出现一些神秘离奇的错误。

 • 幻觉问题很难解决,很有可能这是自回归GPT架构所带来的,可能需要根据实际应用场景,换成其他的架构。

本文所有测试均基于 GPT-3.5-Turbo 版本的 ChatGPT,未与 GPT-4 进行对比。

未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)大脑研究计划,构建互联网(城市)大脑技术和企业图谱,为提升企业,行业与城市的智能水平服务。每日推荐范围未来科技发展趋势的学习型文章。目前线上平台已收藏上千篇精华前沿科技文章和报告。

  如果您对实验室的研究感兴趣,欢迎加入未来智能实验室线上平台。扫描以下二维码或点击本文左下角“阅读原文”

041d16e369e0a19833b6359bcc107b78.jpeg

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

GPT-4来了,但大模型的诸多未解之谜仍然未解 的相关文章

随机推荐

  • Android简单的反编译嵌入例子

    简单的反编译嵌入例子 1 创建一个源工程 2 创建一个转接类 如Ed Sdk java 3 在转接类里面建立一个空方法A 方法A需要被调用 4 创建一个库工程 2 创建一个库转接类 如Ed Sdk java 类名方法名变量名完全相同 6 在
  • Java和Scala中泛型类的继承

    Java和Scala中泛型类的继承 1 泛型的学习 2 泛型类的继承 1 泛型的学习 参考 Java编程的逻辑一书 马骏昌编写的 对泛型的讲解很详细 这里着重补充一下关于泛型类的继承 2 泛型类的继承 这里主要有三种情况 存在父类 clas
  • 利用TBDBitmapData对象查找两张图片上的不同

    利用TBDBitmapData对象查找两张图片上的不同 从右上角开始利用双层循环遍历两图上的所有象素点 并相互比较 不完整代码如下 procedure TForm1 Button5Click Sender TObject var Bmp1
  • [人工智能-深度学习-53]:循环神经网络 - LSTM长短记忆时序模型的简化:门控循环网络GRU模型

    作者主页 文火冰糖的硅基工坊 文火冰糖 王文兵 的博客 文火冰糖的硅基工坊 CSDN博客 本文网址 https blog csdn net HiWangWenBing article details 121599096 目录 第1章 前序知
  • HTML开始历程Day01

    1 HTML 其实就是网页基本结构 CSS 功能 美化网页 不让网页太单调 JS 功能 能让网页动起来 产生很多的交互行为 HTML是什么 Hyper Text Markup Language 超文本标记语言 服务器端口号 路径位置 HTM
  • Linux下用命令行编译运行Java总结

    最近使用腾讯云的Cloud Studio写Java 只能使用命令行进行编译运行 趁此机会 学习一下Linux的一些常用命令 平时windows下IDE用习惯了 现在用命令行进行编译运行 发现其实问题还是挺多的 所以写下这篇文章 1 java
  • WordPress主题开发 — 模版循环(条件判断、多个循环、新建查询和文章循环)

    循环是 WordPress 通过主题模板文件输出文章的默认机制 在循环中 WordPress 遍历当前页面获取到的所有文章 然后使用主题中的模版标签将其格式化并输出 我们可以用 WordPress 循环来做很多事情 例如 在网站首页显示多个
  • java IO、NIO、AIO详解

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 一 IO流 同步 阻塞 二 NIO 同步 非阻塞 三 NIO2 异步 非阻塞 正文 回到顶部 概述 在我们学习Java的IO流之前 我们都要了解几个关键词 同步与异步 sy
  • hyperledger fabric介绍

    一 Hyperledger Fabric介绍 2015年 Linux基金会启动了Hyperledger项目 目标是发展跨行业的区块链技术 Hyperledger Fabric是Hyperledger中的一个区块链项目 包含一个账本 使用智能
  • 使用php生成6位密码大全,php生成随机产生六位数密码的代码

    php生成随机产生六位数密码的代码 供大家学习参考 复制代码代码示例 随机产生六位数密码Begin function randStr len 6 format ALL switch format case ALL chars ABCDEFG
  • 《CTF特训营》学习总结——Reverse:逆向分析概述

    一 逆向分析的主要方法 逆向分析主要是将二进制机器码进行反汇编得到汇编代码 在汇编代码的基础上 进行功能分析 经过反编译生成的汇编代码中缺失了源代码中的符号 数据结构等信息 因此需要尽可能地通过逆向分析还原以上信息 以便分析程序原有逻辑和功
  • qt样式表设置边框_QT 样式风格 & 样式表 (QStyleSheet)

    QT Style的机制和GTK的Style机制很类似 基本上就是 定义了一个基础的Style类 在Style类里面定义一系列的绘图相关函数接口 具体风格的Style类实现了这些函数接口 在控件的实现中 控件的绘图函数调用Style类的绘图函
  • 导航电子地图的制作过程

    背景知识 1 导航原理 现代导航通过实时测定运动客体的当前位置及速度 方向等运动参数 以此为基础通过分析和计算 确定若干条符合某些条件要求如 距离 速度 时间 方向 的路线和行驶方案 然后利用系统进行引导和控制客体沿确定路线行驶 并提供必要
  • 软件测试基础——WEB测试模块

    软件测试工程师体系 web测试模块 web测试模块脑图 本文内容以脑图形式展示
  • 什么是接口测试,如何做接口测试?

    比起点点点的功能测试 接口测试 显得专业又高大上 也因此让有些初级测试人员 望而生畏 别担心 其实接口测试也是功能测试的一种 它是针对接口进行的功能测试 写在前面 本文参考了茹炳晟老师的 测试工程师 全栈技术进阶与实践 并结合自己的理解进行
  • Kafka 监控系统Eagle 使用教程 V1.4.0

    1 下载安装zookeeper 2 下载安装kafka 3 下载安装kafka eagle http download kafka eagle org tar zvxf kafka eagle bin 1 4 0 tar gz 4 配置JA
  • 命令注入漏洞(1)

    命令注入漏洞原理 其实命令注入漏洞也叫命令行注入漏洞 此漏洞是指web应用程序中调用了系统可执行命令的函数 而且输入的参数是可控的 如果黑客拼接了注入命令 就可以进行非法操作了 靶机搭建 链接 https pan baidu com s 1
  • 用栈实现括号匹配问题

    通过观察 我们可以发现 括号匹配的字符串 左括号与右括号数目一定相等 且遇到右括号时 必定有与之相匹配的括号在之前最近出现过 这样 可以整理解决问题的思路如下 假设有一串带括号的字符串 依次访问每一个字符 遇到左括号入栈 遇到右括号时 取栈
  • 有关bool(布尔)类型在C语言中的应用

    文章目录 前言 一 bool类型是什么 二 使用举例 总结 前言 由于学习过程中接触到了bool类型 产生了浓厚的兴趣 便写下这一篇文章来阐述bool类型的大概情况 一 bool类型是什么 bool 布尔 是在C99标准中引入的类型 是以英
  • GPT-4来了,但大模型的诸多未解之谜仍然未解

    导语 在3月14日 OpenAI 的 GPT 4 正式发布 它拥有多模态能力 可以接受图像输入并理解图像内容 可接受的文字输入长度增加到 3 2 万个 token 在多种专业和学术基准测试中取得好成绩 然而 功能强大的 GPT 4 与早期的