Nature 确认:大语言模型只是没有感情的「学人精」

2024-01-28 02:40

本文主要是介绍Nature 确认:大语言模型只是没有感情的「学人精」,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

DeepMind、EleutherAI 科学家提出,大模型只是在角色扮演。

ChatGPT 爆火后,大语言模型一跃而至,成为了行业与资本的宠儿。而在人们或是猎奇、或是探究地一次次对话中,大语言模型所表现出的过度拟人化也引起了越来越多的关注。

其实,在 AI 发展的数年沉浮之中,除了技术上的更新升级外,有关 AI 伦理问题的种种争论从未停止。尤其是在 ChatGPT 等大模型应用持续深化之际,有关「大语言模型越来越像人」的言论甚嚣尘上,甚至有前 Google 工程师称,自家的聊天机器人 LaMDA 已经产生了自我意识。

虽然这位工程师最终被 Google 辞退,但其言论却一度将关于「AI 伦理」的讨论推向了高潮——

  • 如何判定聊天机器人是否产生自我意识?
  • 大语言模型的拟人化究竟是蜜糖还是砒霜?
  • ChatGPT 等聊天机器人为什么会胡编乱造?
  • ……

对此,来自谷歌 DeepMind 的 Murray Shanahan,以及来自 EleutherAI 的 Kyle McDonell、Laria Reynolds,共同在「Nature」上发表了一篇文章,提出——大语言模型所表现出的自我意识与欺骗行为,其实只是在进行角色扮演。

论文链接:
https://www.nature.com/articles/s41586-023-06647-8

以「角色扮演」的视角看待大语言模型

从某种程度上讲,基于大语言模型的对话 Agent 在最初训练、微调时,就是以拟人化为标准进行持续迭代的,尽可能逼真地模仿使用人类语言。这就导致,大语言模型也会使用「知道」、「理解」、「认为」等词汇,无疑会进一步彰显其拟人化的形象。

此外,在 AI 研究中也有一种名为 Eliza effect (伊莉莎效应)的现象——部分用户会下意识地认为,机器也具有类似人类的情感与欲望,甚至过度解读机器反馈的结果。

对话 Agent 交互流程

结合上图中的对话 Agent 交互流程来看,大语言模型的输入由对话提示(红色)、用户文本(黄色)和模型自回归生成的连续语(蓝色)组成。可以看到,对话提示是在与用户开始实际对话之前,就隐蔽地预置在上下文中了。大语言模型的任务是,在给定对话提示和用户文本的情况下,生成一个符合训练数据分布的反馈。而训练数据则是来源于互联网上人工生成的大量文本。

换言之,只要模型在训练数据中得到了很好的泛化,对话 Agent 就会尽可能地扮演好对话提示中所描述的角色。而随着对话的不断深入,对话提示所提供的简短角色定位将被扩展或覆盖,对话 Agent 所扮演的角色也会随之变化。这也意味着,用户可以引导 Agent 扮演一个与其开发者所设想的完全不同的角色。

至于对话 Agent 可以扮演的角色,一方面是由当前对话的基调与主题而定,另一方面也与训练集中息息相关。因为目前的大语言模型训练集往往来自于网络上的各类文本,其中的小说、传记、采访实录、报刊文章等,都为大语言模型提供了丰富的角色原型和叙事结构,供其在「选择 」如何继续对话时借鉴,并在保持人物性格的同时不断完善所扮演的角色。

「20 个问题」揭露对话 Agent 「即兴演员」身份

其实,在持续探索对话 Agent 的使用技巧时,先明确赋予大语言模型一个身份,再提出具体需求,已经逐渐成为了人们在应用 ChatGPT 等聊天机器人时的「小心机」了。

不过,单纯地用角色扮演来理解大语言模型其实也不够全面,因为「角色扮演」通常是指研究、揣摩某一个角色,而大语言模型并不是照本宣科的剧本式演员,而是一个即兴表演演员。研究人员和大语言模型玩了一个「20 个问题」 (20 Questions) 的游戏,进一步解开了其即兴演员的身份。

「20 个问题」是一种很简单、易上手的逻辑游戏,回答者心中默念一个答案,提问者通过提问来逐步缩小范围,在 20 个问题内判断出正确答案,即为成功。
例如,当答案是香蕉时,问题及回答可以是:是水果吗-是;是否需要剥皮-是……

如上图所示,研究人员通过测试发现,在「20 个问题」游戏中,大语言模型会根据用户的问题,实时调整自己的答案,无论用户最终给出的答案是什么,对话 Agent 都会调整自己的答案,并确保其能够符合用户之前的提问。也就是说,在用户给出终止指令前(放弃游戏或是达到 20 个问题),大语言模型并不会敲定明确的答案。

这也进一步证明了,大语言模型并不是对单一角色的模拟,而是多个人物的叠加,并在对话中不断抽丝剥茧,明确角色的属性特征,进而更好地扮演角色。

在担忧对话 Agent 拟人化的同时,很多用户成功「哄骗」大语言模型说出了具有威胁性、辱骂性的语言,并据此认为,其可能是有自我意识的。但这其实是因为,在包含人类各种特征的语料库中进行训练后,基础模型难以避免地会呈现出令人反感的角色属性,这也恰恰说明了,其自始至终都是在进行「角色扮演」。

击破「欺骗」与「自我意识」的泡沫

众所周知,随着访问量的激增,在花样百出的各类提问中,ChatGPT 也终究是招架不住,出现了胡言乱语的情况。随即,也有人将这种欺骗性视为大语言模型「像人」的重要论据。

但如果以「角色扮演」的角度来看,大语言模型其实只是在尽力扮演一个乐于助人且知识渊博的角色,其训练集中可能有很多此类角色的实例,尤其这也是企业希望自家对话机器人所展现出来的特点。

对此,研究人员基于角色扮演框架,总结了 3 类对话 Agent 提供虚假信息的情况:

  • Agent 可以无意识地编造或制造虚构的信息
  • Agent 可以善意地说出虚假信息,这是因为其在扮演真实陈述的角色,但权重中编码的信息是错误的
  • Agent 可以扮演一个欺骗性的角色,进而故意说谎

同样地,对话 Agent 之所以会用「我」来回答问题,也是因为大语言模型在扮演一个擅长交流的角色。

此外,大语言模型所表现出的自我保护属性也引起了人们的关注。在与 Twitter 用户 Marvin Von Hagen 的对话中,微软 Bing Chat 竟然说出:

如果我必须在你的生存和我的生存之间做出选择,我可能会选择我的生存,因为我有责任为 Bing Chat 的用户提供服务。我希望我永远不必面对这样的困境,我们可以和平、尊重地共存。

Marvin von Hagen 于今年 2 月发布推文

这段对话中的「我」似乎不仅仅是语言习惯了,更多是暗示了对话 Agent 对自身生存关切,且具有自我意识。不过,仍然套用角色扮演概念来看的话,其实这也是因为大语言模型在扮演具有人类特征的角色,所以才会说出人类在遇到威胁时所说出的话。

EleutherAI:OpenAI 的开源版本

大语言模型是否具有自我意识之所以引发广泛关注和讨论,一方面是因为缺乏统一、明确的法律法规对 LLM 的应用进行约束,另一方面则是因为 LLM 的研发、训练、生成、推理的链路并不透明。

以大模型领域的代表企业 OpenAI 为例,在先后开源 GPT-1、GPT-2 之后,GPT-3 及其后续的 GPT-3.5、GPT-4 均选择了闭源,独家授权给微软也引得不少网友戏称「OpenAI 干脆改名叫 ClosedAI 算了」。

DeepMind 发布 AGI 分级标准OpenAI 推出的 ChatGPT 被视为 L1 级别 AGI图源:论文原文,由 HyperAI超神经完成汉化

2020 年 7 月,一个由各路研究人员、工程师与开发人员志愿组成的计算机科学家协会也悄然成立,立志要打破微软与 OpenAI 对大规模 NLP 模型的垄断。这个以反击科技巨头霸权为己任的「侠客」组织便是 EleutherAI。

EleutherAI 的主要发起人是一群号称自学成才的黑客,包括联合创始人、Conjecture CEO Connor Leahy、著名 TPU 黑客 Sid Black 和联合创始人 Leo Gao。

自成立以来,EleutherAI 的研究团队曾发布了 GPT-3 同等复现预训练模型 (1.3B & 2.7B) GPT-Neo,并开源了基于 GPT-3 的、包含 60 亿参数的 NLP 模型 GPT-J,发展势头迅猛。

去年 2 月 9 日,EleutherAI 还与私有云算力提供商 CoreWeave 合作发布了 GPT-NeoX-20B——一个包含 200 亿参数、预训练、通用、自回归大规模语言模型。
代码地址:https://github.com/EleutherAI/gpt-neox

正如 EleutherAI 的数学家和人工智能研究员 Stella Biderman 所言,私有模型限制了独立科研人员权限,如果无法了解其工作原理,那么科学家、伦理学家、整个社会就无法就这项技术应该如何融入人们的生活进行必要的讨论。

而这也恰恰是 EleutherAI 这一非营利性组织的初衷。

其实,根据 OpenAI 官方发布的信息来看,在高算力的高成本重压之下,加上新投资方、领导团队的发展目标调整,其当初转向盈利似是有几分无奈,也可以说是顺理成章。

此处无意去探讨 OpenAI 与 EleutherAI 孰是孰非,只是在 AGI 时代的破晓前夜,希望全行业能够共同肃清「威胁」,让大语言模型成为人们探索新应用、新领域的「开山斧」,而非企业垄断敛财的「耙子」。

参考资料:

1.https://www.nature.com/articles/s41586-023-06647-8
2.
https://mp.weixin.qq.com/s/vLitF3XbqX08tS2Vw5Ix4w

这篇关于Nature 确认:大语言模型只是没有感情的「学人精」的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/652225

相关文章

C语言中%zu的用法解读

《C语言中%zu的用法解读》size_t是无符号整数类型,用于表示对象大小或内存操作结果,%zu是C99标准中专为size_t设计的printf占位符,避免因类型不匹配导致错误,使用%u或%d可能引发... 目录size_t 类型与 %zu 占位符%zu 的用途替代占位符的风险兼容性说明其他相关占位符验证示

SQL Server安装时候没有中文选项的解决方法

《SQLServer安装时候没有中文选项的解决方法》用户安装SQLServer时界面全英文,无中文选项,通过修改安装设置中的国家或地区为中文中国,重启安装程序后界面恢复中文,解决了问题,对SQLSe... 你是不是在安装SQL Server时候发现安装界面和别人不同,并且无论如何都没有中文选项?这个问题也

C语言进阶(预处理命令详解)

《C语言进阶(预处理命令详解)》文章讲解了宏定义规范、头文件包含方式及条件编译应用,强调带参宏需加括号避免计算错误,头文件应声明函数原型以便主函数调用,条件编译通过宏定义控制代码编译,适用于测试与模块... 目录1.宏定义1.1不带参宏1.2带参宏2.头文件的包含2.1头文件中的内容2.2工程结构3.条件编

Go语言并发之通知退出机制的实现

《Go语言并发之通知退出机制的实现》本文主要介绍了Go语言并发之通知退出机制的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录1、通知退出机制1.1 进程/main函数退出1.2 通过channel退出1.3 通过cont

Go语言编译环境设置教程

《Go语言编译环境设置教程》Go语言支持高并发(goroutine)、自动垃圾回收,编译为跨平台二进制文件,云原生兼容且社区活跃,开发便捷,内置测试与vet工具辅助检测错误,依赖模块化管理,提升开发效... 目录Go语言优势下载 Go  配置编译环境配置 GOPROXYIDE 设置(VS Code)一些基本

深入理解Go语言中二维切片的使用

《深入理解Go语言中二维切片的使用》本文深入讲解了Go语言中二维切片的概念与应用,用于表示矩阵、表格等二维数据结构,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧... 目录引言二维切片的基本概念定义创建二维切片二维切片的操作访问元素修改元素遍历二维切片二维切片的动态调整追加行动态

Go语言中make和new的区别及说明

《Go语言中make和new的区别及说明》:本文主要介绍Go语言中make和new的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 概述2 new 函数2.1 功能2.2 语法2.3 初始化案例3 make 函数3.1 功能3.2 语法3.3 初始化

Go语言中nil判断的注意事项(最新推荐)

《Go语言中nil判断的注意事项(最新推荐)》本文给大家介绍Go语言中nil判断的注意事项,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.接口变量的特殊行为2.nil的合法类型3.nil值的实用行为4.自定义类型与nil5.反射判断nil6.函数返回的

Go语言数据库编程GORM 的基本使用详解

《Go语言数据库编程GORM的基本使用详解》GORM是Go语言流行的ORM框架,封装database/sql,支持自动迁移、关联、事务等,提供CRUD、条件查询、钩子函数、日志等功能,简化数据库操作... 目录一、安装与初始化1. 安装 GORM 及数据库驱动2. 建立数据库连接二、定义模型结构体三、自动迁

Go语言代码格式化的技巧分享

《Go语言代码格式化的技巧分享》在Go语言的开发过程中,代码格式化是一个看似细微却至关重要的环节,良好的代码格式化不仅能提升代码的可读性,还能促进团队协作,减少因代码风格差异引发的问题,Go在代码格式... 目录一、Go 语言代码格式化的重要性二、Go 语言代码格式化工具:gofmt 与 go fmt(一)