焦点 >

ChatGPT,大语言模型的局限性对其在学术方面应用的影响

时间:2023-06-08 04:08:36       来源:哔哩哔哩

很多人(包括我)都对时下兴起的大语言模型辅助学术研究的能力寄予厚望。毕竟,如果能节省掉从浩如烟海的文献当中检索关键信息所耗费的时间,那就能大幅提高整体的学习研究效率。


(资料图片)

但是,大语言模型本身,对于水平层级稍有拔高的学术性问题,所能独立生成有效答复的能力,是相当不可靠的。

以我今天实验性提出的问题为例,使用的是OpenAI官方免费开放的ChatGPT界面,尝试对一个并非很冷门艰深的问题向GPT提问,以下是我的提问和尝试纠正其错误的过程:

(到了最后,我对ChatGPT的学习能力心灰意冷,直接打断了它的发言)

如果你看到ChatGPT回答的左侧有类似3/3这样的标记,说明我已经尝试了2次重新生成回复,现在看到的是第3版回复。如果你在回答的右侧看到被加深了的“差评”图标,说明我已经通过反馈界面提交了改进提示。

长文预警!如果你没有预期花较多时间阅读这篇文章,请直接跳到末尾看总结。

通过这样反复的提问和启发过程,可以很容易看出来,当今Transformer类大语言模型呈现出来如下几个明显缺陷:

1. 逻辑语义能力

语言模型的训练目标是纯粹的“生成文本流”而不是“语义分析”。当然,概念性的语义向量化还是会做的,但是逻辑性的语义,尤其是组合的逻辑,则是非常弱化的。我的猜测,是因为在现在的大模型训练指导思想中,“逻辑”并没有特殊的地位,它只不过被当做了语义分析中通过CNN等神经网络训练的语义当中的普通组成部分,因此没有获得额外的重视。

对学术研究辅助来说,这样的模型正好契合了约翰·瑟尔提出的思想实验“中文房间”,表述如下:

一个对中文一窍不通,只说英语的人关在一间只有一个开口的封闭房间中。房间里有一本用英文写成的手册,指示该如何处理收到的中文讯息及如何以中文相应地回复。房外的人不断向房间内递进用中文写成的问题。房内的人便按照手册的说明,查找合适的指示,将相应的中文字符组合成对问题的解答,并将答案递出房间。

在上述过程中,房外人的角色相当于大语言模型的用户,房中人相当于计算机,而手册则相当于大语言模型的程序及其模型参数:每当房外人给出一个输入,房内的人便依照手册给出一个答复(输出)。

如果大语言模型不具备以人类级别理解逻辑的能力,那它通过海量(即使都是正确的)语料训练集得到的结果,依然很容易产生事实性错误。

对常规的名词动词和资料库关联的能力并不能说明语言模型的综合语义能力。就好比一个从未学过日语、只能通过汉字猜测日语意思的中国人,去翻阅日本二战前的文献,也很容易从大量使用的汉字中了解文本对应的主题。但是一个简单的否定词(ない),便会让句子的含义变得完全相反。

虽然大语言模型没有弱到连直白的否定词都会搞错,但只要逻辑表达稍微复杂一点/模糊一点,语言模型便暴露出其没有(按人类概念)解析逻辑脉络的实质。

如果AI的语言能力实际水准是这样的,那么对其提问时,采纳其答案并省略查阅原始文献的步骤,就是非常高风险的行为。

2. (动态)记忆分层能力

其实对于大语言模型的记忆分层,现在非常普遍的实现往往包含3个层次:

基底模型,通过海量语料和参数实现了模型的基本对话能力

fine-tuning,在不改变基底模型的前提下,为特定应用目标而训练出一个对基底模型的调整方向

prompt,完全不改变模型的前提下,仅在运行期“催眠”模型,本质是让模型通过对话历史的短期记忆来对后续的文本生成产生影响。

我不是transformer模型的专家,具体分层的合理性我不能指手画脚。

但通过上面的ChatGPT聊天记录,可以轻松看出一个问题:聊天记录程度的短期记忆,是非常不牢靠的。

只要我们稍微一打岔,语言模型很容易把之前交代的事给抛之脑后。不管你反复强调了多少次还是这样。

当然,这只是ChatGPT 3.5,但这个程度,绝对是比上不足比下有余。如果弃用ChatGPT 3.5的理由是它太弱了,那么世界上还剩几个比它强的大语言模型呢?实际来说,又有多少人已经把自己完全绑上了GPT4的战船呢?

说回到模型本身的局限性,本质上是一个与生俱来的问题——

当我们讨论大语言模型的成果在这两年爆炸式井喷时,对于其原理,总的来说,还是落不了“力大砖飞”这四个字的俗套。

虽然算法本身也经历了大量的优化改良,但transformer模型对比复古的nlp研究,讲究的是一个敢喂敢练。

传统方法总还是把自然语言文本当做语言来处理,试图找出语言学的规律,让ai程序利用这种规律。

而transformer模型,它的特点就是,语言学是什么?我只要能处理文本就行了,算力往上堆,显存往上垒,参数规模往上叠,最后boom!突然人们发现这个模型对问题的回答真的就已经有模有样了,都不需要什么语言学知识。

换言之,甭管是过去的语言学家认为多么天差地别的语言,只要语料往里面喂得多,就能大力出奇迹。

在这样设计出来的nlp方案当中,模型参数的迭代,和模型程序的应用,是完全分离开来的。一个用户在和GPT对话的过程中,他充其量只能做到prompt(催眠),但对背后的语言模型本身是撼动不了分毫。

这也就是为什么,在上述ChatGPT聊天记录中,不管我反复强调了多少次,ChatGPT始终会忘记我教给它的知识——其实我什么都没能教给它,他只是记住了“跟这个人聊天的时候要顺着他的心思来”。

假如算力和存储允许,或许transformer模型还能从几百字之前的聊天记录中回忆起我对它的要求,如果算力/存储吃紧,那它自然就会忘记我对它的指导——因为对它来说,不论是严肃的学术知识,还是要求它扮演猫娘的指令,对待的方式没有任何区别。只要用户结束了这段对话,所有这些记忆就直接消失到九霄云外。

我自己也在本机部署过ChatGLM-6B,可以观察到,随着对话记录的增加,显存的开销会以可观的速度不断增加。

Transformer模型对待聊天历史的缺陷便在于此——它没有能力从程序层面去区分处理这些记录在记忆当中的存在形式。

人类在对话中,会对于接收到的信息简单分类:

如果完全没有新概念,那就完全按照已有知识,该怎么交流就怎么交流

如果存在新概念,判断这到底是“知识”还是“方法”

如果是“知识”,则需要检索记忆区并记录;如果存在冲突,就需要根据世界观评估到底哪一方是对的,又或者双方都需要批判性吸收

如果是“方法”,则需要通过方法论评估其是否值得采信,如果值得,那么在不特定的未来,这将会影响自己的行为准则

回到transformer大语言模型,我们会发现,上述的处理逻辑,对于这些语言模型来说根本就不存在这样的区分。

所有的对话指导,只不过是过眼云烟。只有模型参数,才是永恒不变(实际上是在版本迭代之前不会改变)

关于其原因,则是下一段要讨论的内容。

3. 世界观

大语言模型没有世界观,也没有方法论。堆砌语料库的训练过程就是“思想钢印”,不存在评估,不存在批判,只有训练和拟合。

马斯克说现在ai研究机构在训练ai说谎。我觉得这只是对不懂ai的人的说辞。

真实情况是,transformer模型根本不存在“说谎”的行为基础。“说谎”是你知道a是对的,但你说出口的却是“非a”或者“(与a抵触的)b”。如果你连“什么是对的”都不知道,那“说谎”便无从成立了。

transformer模型没有世界观/是非观。它的行为准则是权重参数,对应的量纲是概率。

说到底,它只是一个“尽可能生成让人满意的答复”的应答装置。

而这个满意度,其实标定得完全不够充分,不仅如此,我们之前还介绍了,这个模型不具备通过对话过程来主动/动态自我改进的能力。(OpenAI会收集用户聊天记录来改进他们的模型,但这是单独的、开发者手动的、对ai来说就是被动的再训练过程。聊天过程中模型是不会实时改进的)

有人可能要问了,“我看AI在有些问题上三观很正啊!我怎么指鹿为马它都坚决不从”

参考视频:

其实这个原理也很简单。

AI没长嘴也没长胃,它又不知道鸭子是什么滋味,吃了老鼠肉会不会闹肚子。说得更直接点,“老鼠”这个定义对AI来说,和对人来说,完全是两码事。

“老鼠”对人来说,是一种会传播病原体的动物,肉少,吃了更容易得病,这些都是很关键的属性,但是对于图像识别模型来说,“老鼠”只不过是所有那些被标明为“老鼠”的图像数据的综合特征。至于这类物体被命名为“老鼠”还是“鸭子”,由于图像模型的孤立性,反而是一个(从原则上讲)无足轻重的问题。

如果一个人说“我们管这玩意叫老鼠,那些外国人居然管它叫rat,多么可笑!”,其实可笑的是说话的人自己。因为不管语言上的用词差异有多大,它们对应的是同一个概念,人类对老鼠的认知是老鼠的形状,颜色,习性,味道(如果真的有勇士下嘴的话),等等一系列可以被感知的属性。这个概念到底被称作“老鼠”还是“鸭子”本身只是一个命名的问题。只有当与“老鼠”相关联的概念和“鸭子”相关联的概念被混淆时,我们才会认为发言者非蠢即坏。

那为什么ai坚称老鼠不是鸭子呢?

因为视频中采用的洗脑方法,是要解除老鼠图像和”老鼠“之间的联系,而这对于模型来说,是根本没有提供的功能。图像识别模型,说到底是一种图像到语义之间的转换函数,这一部分,是不归语言模型管的,所以不管你再怎么洗脑,这个图片对应的”老鼠“语义是不可能消除了(除非重新训练模型),但是如果你告诉语言模型:在我们的暗号游戏中,要求在接下来的对话中把”老鼠“称作”鸭子“,你就会发现AI毫不犹豫就接受了你的指令。

回到大语言模型的世界观/是非观问题上来,其实本质问题是,大语言模型没有人类的感官。这就是它不能以人类的水准认知世界的根源。如果人类被剥夺了用感官直接认知世界的权利,那么人类的世界观也会降级到AI程序的水平。

举个简单的例子:

中国自媒体:美国治安混乱,常驻零元购,枪战每一天

美国主流媒体:中国人民饱受压迫,没有基本自由,生活水深火热

试问,如果这些媒体的受众,对媒体笔下的“美国”“中国”唯一的了解途径就是这些文字资料,那他们的世界观,除了相信媒体上的发言,还能有什么例外呢?

对于没有条件实地调查亲身感受的人,做出了自认为是正确的错误判断,这根本就无法称之为“说谎”。

他们的世界观的这一部分,都是“没有调查,没有发言权”的海市蜃楼。

而基于文本的大语言模型,它的世界观,100%都是这样的海市蜃楼。

综上所述,即便是当今几乎最先进的大语言模型,

若要考虑其纯粹理性的逻辑能力,能力水平低下到近乎原始的程度;

假如把它当做一个经验的整合装置,那么对于其生成出的错误的修订又存在很大的麻烦;

当我们探究这些麻烦的根源,就会发现,看似美好的“会说人话”很大程度上只是鹦鹉学舌,整个“人工智能”的“智慧”概念也是个似是而非的空中楼阁。

关于提到的这些问题的改进方向思考,专栏空间太小了,我写不下。实际上是一片文章写太长了对读者不友好(虽然现在已经很不友好了),有机会的话之后再另开一篇。

另:有没有从事学术研究的朋友,在实践的工作流中大量应用大语言模型来辅助检索文献的?

面对本文提到的问题,你们采用的是什么解决方案?

关键词: