GPT-4并非世界模型,LeCun双手赞同!ACL力证LLM无法模拟真实世界
一直以来,支持LLM的观点之一是模型可以集成海量事实知识,作为通往「世界模拟器」的基础。虽然也有不少反对意见,但缺乏实证依据。
那么,LLM能否作为世界模拟器?
最近,亚利桑那大学、微软、霍普金斯大学等机构联合发布了一篇论文,从实证角度否定了这一观点。
最新研究已被ACL 2024顶会接收。
论文地址:https://arxiv.org/pdf/2406.06485
GitHub地址:https://github.com/cognitiveailab/GPT-simulator
研究发现,GPT-4在模拟基于常识任务的状态变化时,比如烧开水,准确度仅有60%。
升级ChatGPT-4o Turbo步骤https://www.zhihu.com/pin/1768399982598909952
论文认为,尽管GPT-4表现惊艳,但如果没有进一步创新,它不能成为可靠的世界模型。
为了量化LLM的规划能力,作者提出了一个全新的基准测试——bytesized32-state-prediction,并在上面运行了GPT-4模型。
基准测试的代码和数据已在GitHub上开源,帮助未来研究继续探查LLM的能力优缺点。
一向对自回归语言模型无感的LeCun也转发了这篇论文。
尽管如此,只凭一篇论文难以平息LLM界的重大分歧。
模拟世界对于AI学习和理解世界至关重要。
以往,多数情况下,可用模拟的广度和深度受到现实的限制,因为需要人类专家耗费数周甚至数月的时间做大量工作。
而现在,大模型提供了一种替代方法,通过预训练数据集中大量知识,获得对世界的深刻理解。
但是,它们准备好直接用作模拟器了吗?对此,研究团队在「文本游戏」这一领域检验了这一问题。
一般来说,在世界建模和模拟的背景下,应用LLM有两种方式:一是神经符号化方法,二是直接模拟。
论文中,作者们首次对LLM直接模拟虚拟环境的能力进行了量化分析。
他们利用JSON模式的结构化表示作为脚手架,不仅提高了模拟精度,还可以直接探查LLM在不同领域的能力。
结果发现,GPT-4普遍无法捕捉与智能体行为无直接关联的「状态转移」(state transition)。
01 研究方法
在文本环境中,智能体通过自然语言完成特定目标。研究人员将文本的虚拟环境形式化,建模为一种部分可观测马尔可夫决策过程(POMDP),包含7个元组:S, A, T, O, R, C, D。
- S表示状态空间
- A表示行动空间
- T:S×A→S表示状态转移函数
- O表示观测函数
- R:S×A→R表示奖励函数
- C表示用自然语言描述目标和动作语义的「上下文信息」
- D:S×A→{0,1}表示二元指示函数,用0或1标记智能体是否完成任务
上下文C为模型提供了除环境外的额外信息,比如行动规则、物体属性、打分规则和状态转换规则等。
研究人员提出了一个预测任务,称为LLM-as-a-Simulator(LLM-Sim),作为定量评估大模型作为可靠模拟器的能力的方法。LLM-Sim任务定义为实现一个函数,将给定的上下文、状态和动作映射到后续的状态、奖励和任务完成状态。
每个状态转移用如下的九元组表示:
实际上,整个状态转换模拟器F,应该考虑两种类型的状态转移:行为驱动和环境驱动的转移。
例如,行为驱动的状态转移是在执行「打开水槽」动作后,水槽被打开。而环境驱动的转移是,当水槽打开时,水将填满槽中的杯子。
此外,LLM的预测模式也分为两种:预测下一步的完整状态,或者预测两个时刻之间的状态差。
为了更好地理解LLM对于每种状态转移的建模能力,研究人员进一步将模拟器函数F分解为三种类型:
02 评估结果
建模了LLM的决策过程后,作者用文本构建了一个虚拟人物场景。Bytesized32-SP基准测试的数据来源于公开的Bytesized32语料库,其中有32个人类编写的文字游戏。留出一个游戏作为gold label后,测试集总共涉及31个游戏场景,7.6万多个状态转换。
LLM根据上下文和前一个状态进行单步预测,给出下一步时的物体属性、任务进展等信息。规则方面,研究人员提出了三种设定:由游戏作者撰写、由LLM自动生成,或者根本不提供规则。设定好虚拟环境和任务规则后,作者运行GPT-4进行预测,得到了如下结果。
为了严谨起见,作者根据状态转移前后预测结果是否变化,分成static和dynamic两类分开统计。如果前后两个状态中,结果并没有发生变化,LLM也会更容易预测。不出意料,static一栏的准确率基本都高于dynamic。
对于「静态」转移,模型在预测状态差时表现更好。「动态转移」则相反,在完整状态预测中得分更高。作者猜测,这可能是由于预测状态差时需要减少潜在的格式错误,这会为任务输出带来额外的复杂性。
还可以看到,预测动作驱动的状态转移的准确率往往高于环境驱动类。在dynamic栏,前者预测最高分有77.1,而后者最高只有49.7。
此外,游戏规则的制定会很大程度上影响LLM的表现。如果不提供游戏规则,LLM预测的性能会显著下降,但规则由人类制定或LLM自动生成并不会显著影响准确率。相比之下,规则制定对游戏进度预测的影响更加明显。相比人类规则,LLM生成规则时,GPT-4的预测有超过10个百分点的提升。
对于规划任务中的单步预测模型,每一步的模拟误差都会累积并向后传播,单步的低性能会很大程度上影响全局表现。因此,LLM较低的准确率说明了它并不能成为可靠的「文本世界模拟器」。
此外,人类准确率的波动幅度基本不大,说明任务设定比较简单、直接,适合人类的思维模式。GPT-4这种较差的性能表现给我们提供了一个宝贵的机会,可以更具体地剖析LLM究竟在哪方面出现了能力缺陷。
论文作者将LLM的预测结果拆开仔细分析,发现在二元布尔值属性上(is开头的属性),模型通常可以做得很好。
如何使用WildCard正确方式打开GPT-4o,目前 WildCard 支持的服务非常齐全,可以说是应有尽有!
官网有更详细介绍:WildCard
推荐阅读:
更强大Mamba-2正式发布啦!!!
黎曼猜想取得重大进展!!
相关文章:
GPT-4并非世界模型,LeCun双手赞同!ACL力证LLM无法模拟真实世界
一直以来,支持LLM的观点之一是模型可以集成海量事实知识,作为通往「世界模拟器」的基础。虽然也有不少反对意见,但缺乏实证依据。那么,LLM能否作为世界模拟器? 最近,亚利桑那大学、微软、霍普金斯大学等机构…...
第 6 章: Spring 中的 JDBC
JDBC 的全称是 Java Database Connectivity,是一套面向关系型数据库的规范。虽然数据库各有不同,但这些数据库都提供了基于 JDBC 规范实现的 JDBC 驱动。开发者只需要面向 JDBC 接口编程,就能在很大程度上规避数据库差异带来的问题。Java 应用…...
[C++ STL] vector 详解
标题:[C STL] vector 详解 水墨不写bug 目录 一、背景 二、vector简介 三、vector的接口介绍 (1)默认成员函数接口 i,构造函数(constructor) ii,析构函数(destructor࿰…...
PHP简约轻型聊天室留言源码
无名轻聊是一款phptxt的轻型聊天室。 无名轻聊特点: 自适应电脑/手机 数据使用txt存放,默认显示近50条聊天记录 采用jqueryajax轮询方式,适合小型聊天环境。 访问地址加?zhi进入管理模式,发送 clear 清空聊天记录。 修改在…...
代码随想录算法训练营day23|669.修剪二叉搜索树、108.将有序数组转换为二叉搜索树、538.把二叉搜索树转换为累加树
669.修剪二叉搜索树 这道题目需要考虑当前节点是否在[low,high]之间, 因为是平衡二叉树, 所以当当前节点值小于low时,那么其左节点肯定更小,因此删除该节点的方式是给root节点返回其右节点的递归,注意:这里…...
实时通信websocket和sse
microsoft/fetch-event-source是一个JavaScript库,用于处理服务器发送的事件(Server-Sent Events,简称SSE)。它提供了一个简单易用的API,使得客户端可以与服务器进行实时通信。这个库主要用于浏览器环境 安装依赖npm i…...
(超详细)基于动态顺序表实现简单的通讯录项目
前言: 我们在上一章节用c语言实现了线性表中的的动态顺序表,那么顺序表就只是顺序表吗?当然不是,使用顺序表结构可以实现很多项目,许多项目的数据结构都会用到顺序表,本章节我们就要使用顺序表实现一个简易…...
修改SubVI的LabVIEW默认搜索路径
在启动顶级VI后,LabVIEW可能会遇到找不到subVI的情况。这通常是由于subVI的路径发生了变化或没有被正确配置。 LabVIEW默认搜索路径 默认情况下,LabVIEW会按以下顺序搜索文件位置(*表示LabVIEW将搜索子目录): <t…...
基于python深度学习的CNN图像识别鲜花-含数据集+pyqt界面
代码下载: https://download.csdn.net/download/qq_34904125/89383615 本代码是基于python pytorch环境安装的。 下载本代码后,有个requirement.txt文本,里面介绍了如何安装环境,环境需要自行配置。 或可直接参考下面博文进行…...
第九站:Java黑——安全编码的坚固防线(第②篇)
4. 验证和过滤输入数据示例:使用Apache Commons Lang 对输入数据进行验证和过滤是防止多种安全漏洞的关键步骤,包括但不限于SQL注入和命令注入。Apache Commons Lang库提供了一些实用方法来帮助进行字符串操作和验证。以下是一个简单的示例,…...
如何优雅的删除正式环境中的大表
引起 MySQL 数据库性能抖动的原因有很多,比如大事务、定时批量查询等,而这些原因我们一般都会注意到。但是,有一个引起性能抖动的原因却经常被我们忽视,那就是在生产环境删除无用的大表,即 DROP TABLE。 一、为什么要 DROP TABLE? 生产环境中,为什么要 DROP TABLE?相…...
Vulnhub-DC-1,7
靶机IP:192.168.20.141 kaliIP:192.168.20.128 网络有问题的可以看下搭建Vulnhub靶机网络问题(获取不到IP) 前言 1和7都是Drupal的网站,只写了7,包含1的知识点 信息收集 用nmap扫描端口及版本号 进入主页查看作者给的提示,不是暴力破解的…...
使用MySQL全文索引实现高效搜索功能
MySQL全文索引是MySQL提供的一种高效的搜索功能,可以快速地搜索文本内容。全文索引可以用于搜索大量文本数据,通常应用在文章、博客、论坛等需要搜索的场景中。 什么是MySQL全文索引 MySQL全文索引是一种用于快速搜索文本内容的索引技术。它可以在存储和…...
数据结构学习笔记-图
1.图的存储 (1)邻接矩阵法 #define MaxVertexNum 100 //顶点数目的最大值 typedef struct{char Vex[MaxVertexNum]; //顶点表int Edge[MaxVertexNum][MaxVertexNum]; //邻接矩阵表,边表int vexnum,arcnum; //图的当前顶点数和边…...
【归并排序】| 详解归并排序核心代码之合并两个有序数组 力扣88
🎗️ 主页:小夜时雨 🎗️专栏:动态规划 🎗️如何活着,是我找寻的方向 目录 1. 题目解析2. 代码 1. 题目解析 题目链接: https://leetcode.cn/problems/merge-sorted-array/description/ 本道题是归并排序的…...
51单片机STC89C52RC——2.3 两个独立按键模拟控制LED流水灯方向
目的 按下K1键LED流水向左移动 按下K2键LED流水向右移动 一,STC单片机模块 二,独立按键 2.1 独立按键位置 2.2 独立按键电路图 这里要注意一个设计的bug P3_1 引脚对应是K1 P3_0 引脚对应是K2 要实现按一下点亮、再按一下熄灭,我们就需…...
Neo4j连接
终端输入: neo4j console 浏览器访问:http://localhost:7474/ 输入用户名和密码:neo4j, 梦想密码(首次neo4j) 代码连接用新的服务器地址: g Graph(neo4j://localhost:7687, auth(neo4j, ))…...
List 列表
文章目录 一、什么是 List 列表1.1 创建 List 列表的方式1.2 列表的新增函数方法1.3 列表的删除函数方法1.4 修改列表数据的方法1.5 列表的查询函数方法1.6 列表的排序和反序1.7 列表的复制 一、什么是 List 列表 List 列表:该数据类型定义的变量可以理解为是一个数…...
nginx ws长连接配置
nginx ws长连接配置 http根节点下配上 map $http_upgrade $connection_upgrade {default upgrade; close;}如下: server服务节点下,后端接口的代理配置 proxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connec…...
Windows下访问wsl的数据
Windows下访问wsl的数据 有些人感受到的是雨,而很多人感受到的只有淋湿。 Windows下的wsl说实话还是挺不错的,对于开发而言,效果相当的可以。 比如在某个文件夹,Windows编辑好代码后,直接右键打开wsl,就可…...
机器学习笔记 - 用于3D数据分类、分割的Point Net简述
一、简述 在本文中,我们将了解Point Net,目前,处理图像数据的方法有很多。从传统的计算机视觉方法到使用卷积神经网络到Transformer方法,几乎任何 2D 图像应用都会有某种现有的方法。然而,当涉及到 3D 数据时,现成的工具和方法并不那么丰富。3D 空间中一个工具就是Point …...
vscode 连接 GitHub
目录 vscode连接github一、解决 github 登录问题二、通过 SSH 连接 github1、只有一个 git 账号2、切换 git 账号3、在两个账号之间切换 vscode 连接 gitee一、通过 HTTPS 连接二、通过 SSH 连接 vscode连接github 在 vscode 中首次使用 git push 命令时会要求输入 github 账户…...
集合java
1.集合 ArrayList 集合和数组的优势对比: 长度可变 添加数据的时候不需要考虑索引,默认将数据添加到末尾 package com.itheima;import java.util.ArrayList;/*public boolean add(要添加的元素) | 将指定的元素追加到此集合的末尾 | | p…...
智能体(Agent)实战——从gpts到auto gen
一.GPTs 智能体以大模型作为大脑,同时配备技能,使其能够完成具体的任务。同时,为了应用于垂直领域,我们需要为大模型定义一个角色,并构建知识库。最后,定义完整的流程,使其完成整个任务。以组会…...
PyTorch 张量数据类型
【数据类型】Python 与 PyTorch 常见数据类型对应: 用 a.type() 获取数据类型,用 isinstance(a, 目标类型) 进行类型合法化检测 >>> import torch >>> a torch.randn(2,3) >>> a tensor([[-1.7818, -0.2472, -2.0684],[ 0.…...
奇思妙想-可以通过图片闻见味道的设计
奇思妙想-可以通过图片闻见味道的设计 偷闲半日享清闲,炭火烧烤乐无边。肉串飘香引客至,笑语欢声绕云间。人生难得几回醉,且把烦恼抛九天。今宵共饮开怀酒,改日再战新篇章。周四的傍晚,难得的闲暇时光让我与几位挚友相…...
装饰者模式(设计模式)
装饰模式就是对一个类进行装饰,增强其方法行为,在装饰模式中,作为原来的这个类使用者还不应该感受到装饰前与装饰后有什么不同,否则就破坏了原有类的结构了,所以装饰器模式要做到对被装饰类的使用者透明,这…...
ADB调试命令大全
目录 前言命令大全1.显示当前运行的全部模拟器:adb devices2.启动ADB: adb start-server3.停止ADB: adb kill-server4.安装应用程序: adb install -r [apk文件]5.卸载应用程序: adb uninstall [packagename]6.将手机设备中的文件copy到本地计…...
查看npm版本异常,更新nvm版本解决问题
首先说说遇见的问题,基本上把nvm,npm的坑都排了一遍 nvm版本导致npm install报错 Unexpected token ‘.‘install和查看node版本都正确,结果查看npm版本时候报错 首先就是降低node版本… 可以说基本没用,如果要降低版本的话&…...
计算机行业
计算机行业环境分析 2022.01.12 计算机行业环境分析 计算机专业就业前景 随着科技的进步和信息事业的发展,尤其是计算机技术的发展与网络应用的逐渐普及。计算机已成为人们工作和生活中不可缺少的东西。IT行业迅猛发展,就业工作岗位也比比皆是。在最近…...
网站做自签发证书/专业网站优化
作者: _陈哈哈 来源: blog.csdn.net/qq_39390545/article/details/107020686Part1前言BATJTMD等大厂的面试难度越来越高,但无论从大厂还是到小公司,一直未变的一个重点就是对SQL优化经验的考察。一提到数据库,先“说一说你对SQL优化的见解吧&…...
向国旗敬礼做时代新人网站/国际新闻界期刊
//C#访问SQL Server数据库,SqlConnection用于建立与数据库的连接//SqlCommand用于创建SQL命令//SqlDataReader对象是执行SqlCommand对象返回结果集的查询语句后的结果 //用于连接的字符串string connectString "data SourceGUCAS-A4ACB77A6\\SQLEXP…...
wordpress做产品页教程/网络推广网站电话
注:如果没有 root 权限也是可以试试,一般情况下,都需要 root 权限,才能连接成功。1.需要确保你的开发 PC 和 Android 手机都连上了 wifi 并处于同一网段下;2.开启 usb 调试,且用 usb 将 Android 设备连接到…...
专做衬衣的网站/今日新闻十大头条内容
原题链接 hdu1878 大致题意: 欧拉回路是指不令笔离开纸面,可画过图中每条边仅一次,且可以回到起点的一条回路。现给定一个无向图,问是否存在欧拉回路? 思路: 无向图存在欧拉回路的条件:1、图是连通的 2、所有点的度数…...
要维护公司的网站该怎么做/免费注册网址
2019独角兽企业重金招聘Python工程师标准>>> 今天决定看看开源中国安卓版app,并试着重构一下。好的进入主题。 创建MainActivity public class MainActivity extends ActionBarActivity implementsNavigationDrawerFragment.NavigationDrawerCallbacks,O…...