陈浪,新加坡南洋理工大学应用语言学博士,新加坡 Solearn International 高级学术顾问,自媒体 “书先生和路夫人 ”主理人。主要研究方向为认知语言学理论在学术语体分析中的应用。
引子
2022年11月,ChatGPT横空出世,这对很多人造成了冲击。
有的人职业受到了冲击,他们害怕人工智能会让他们成为尤瓦尔 ·赫拉利口中的“无用阶层”(此名词出自尤瓦尔·赫拉利著《未来简史》)。
有的人心灵受到了冲击,他们害怕人工智能最终会产生自我意识,然后像“哈尔9000”那样,“先发制人”,伤害人类(相关情节见库布里克经典科幻电影《2001太空漫游》)。
有的人情感受到了冲击,他们害怕人与人的自然感情最终会让位于个性可自由定制,交互性却可以假乱真的机器人爱人(相关情节见英国电视剧《黑镜》)。
我无法穷尽各类人群对ChatGPT的反应,但有一点我敢肯定,语言学界的从业者受到的冲击一定不小。我这样说的原因也很简单:ChatGPT背后毕竟是个语言模型。
ChatGPT背后的语言模型叫GPT,全称是Generative Pre-trained Transformers,翻译成汉语就是“基于转换器的生成式预训练模型”。和本文讨论主题最相关的是它名字中的第二个单词:pre-trained。GPT采用了一种叫 “无监督学习”(unsupervised learning)的方法来训练模型的参数。所谓无监督,就是用于训练模型的输入数据并没有与之对应的标签。也就是说,训练过程中并没有一个可以参照的标准答案。这样一来,训练的目标就不再是“学习”输入和输出之间的映射,而是让模型自己去发现输入数据的结构和表征。
上面这段话,你可以在任何一个讨论GPT的网页上读到,如果你问ChatGPT,它也会给你类似的答案。我为什么还是要特意重复一下呢?原因就是:GPT是个语言模型,经过预训练后,它“发现”的是语言数据的结构——而且是在没有人类干预的条件下发现的。
鉴于ChatGPT令人惊艳的表现,我们有理由相信, GPT所“自主发现”的语言结构,应该相当靠谱。至于它到底发现了什么,是转换生成语法还是构式语法,或是一种我们人类还根本没有想到的结构,我们可能永远不得而知。
不重要的问题
ChatGPT之所以有这么出色的表现,据说是因为它背后的GPT模型参数达到了千亿级别。参数背后的意义到底是什么?这对ChatGPT来说,丝毫不构成困扰。它只管根据输入给出答案,它甚至都不关心答案是否正确。对它来说,答错问题不要紧,说出来的话像人说的,这才要紧。
但对人类来说,至少对语言学家来说,这点恰恰让我们困扰。我们总是忍不住要问这样的问题:一个在文本输出方面如此接近人类(甚至超过一部分人类)的软件系统,它真的理解了人类语言吗?或者说,它真的学会了人类语言吗?
持语言先天论的学者显然不会认为ChatGPT真的学会了人类语言,毕竟一个由人类设计的诞生不到一年的系统,不太可能拥有一个人类经过几十万年进化而来的“语言习得装置 ”(language acquisition device,LAD)。对语言先天论者来说,ChatGPT的回答不过是基于统计的概率最高的序列,而不是人类语言那样的“有限规则无限应用”。它需要从海量的语言数据中得出这样的统计概率,这对语言先天论者来说也是ChatGPT的“原罪”,因为人类的小孩儿从少量的、充满瑕疵的语言样本中就能不费吹灰之力地学会语言。
ChatGPT的回答是否仅仅就是一个概率最高的序列,这还有争议,但说它的回答是基于统计概率,这是对的。然而,这真的就能构成否认GPT可以学会人类语言的理由吗?这个理由要成立,必须先证明人类不是这样学的。关于这一点,持基于使用的语言理(usage-based theory of language,UBTL)观点的学者恐怕不会完全认同。例如,阿黛尔·戈德堡( Adele Goldberg)教授在她的Explain Me This一书中就谈到了统计排除( statistical preempt)对于人类判断什么用法可以接受、什么用法不可以接受至关重要。试看她举的例子(相关例子和解释见阿黛尔·戈德堡关于构式语法的专著Explain Me This):
? Explain me something. ≈ Explain something to me.
会英语的人都会觉得例子左边的用法不对,而右边的用法是可以的。但为什么会这样呢?是因为有什么内在规则的限制吗?显然不是,因为双宾语在英语中是一个常见的构式,而explain的一些近义词就可以用于这样的结构,比如teach somebody something和inform somebody something。
对此,戈德堡教授的解释是,正是由于右边的例子在真实使用中的概率非常高,才降低了(preempt)左边例子的可接受性。也就是说,语言使用中人们普遍接受的规则不是先验存在的,而是使用的结果,而使用的本质,就是概率的调整。
从这个意义上来讲,学会一门语言,本质上就是掌握一套非常复杂的概率分布。对于一个人工智能语言模型来说,就是一套参数。在人类大脑里,它是如何存储和表征的,现在还不清楚,或许就体现在神经元树突、轴突的粗细长短上,在树突棘的数量上、神经元连接的强度上、神经回路的结构上,或者在所有因素的组合上。
既然人类可能也是这样学习语言的,那人类能够掌握的那些语言里的细节,GPT肯定也能掌握—包括那些语言先天论者认为因为涉及语言深层结构而机器一定会搞错的语言知识。比如乔姆斯基在《纽约时报》专栏文章里提到的句子:
John is too stubborn to talk to.
乔姆斯基认为,机器学习程序“太肤浅,太不可靠”(too superficial and dubious),基于统计类比,大概率会把“John is too stubborn to talk to”看作和“John ate”类似的句子,从而错误地把句子理解为“约翰不想说话”。
真的是这样吗?我们可以验证一下。我们不要直接问ChatGPT“John is too stubborn to talk to”是什么意思,因为它可能会从学过的数据中“抄一段答案”。所以我们间接地考察一下,这样问:
Compare the following two sentences: 1. John was too stubborn to talk to, so they all left. 2. John was too tired to talk, so they all left.In these two sentences, did“they”leave for similar reasons?
(比较这两个句子:1. John was too stubborn to talk to, so they all left. 2. John was too tired to talk, so they all left. 在这两个句子里,“他们”离开是否基于相似的原因?)
下面是 ChatGPT的回答:
The reasons that “they”left in each sentence, based on the given context, appear to be different:
1.“John was too stubborn to talk to, so they all left.”— In this sentence, it’s suggested that “they” left because of John’s stubbornness, making it difficult or unpleasant to talk to him.
2.“John was too tired to talk, so they all left.”— In this sentence, it seems “they” left because John was too tired to engage in conversation. This implies a different motive:perhaps out of respect for John’s state of fatigue, or because his tiredness made conversation impossible or unproductive.
In both sentences, John’s condition leads to “they” leaving, but the reasons are different — one is due to his stubbornness and the other due to his tiredness.
(根据所给的语境,“他们”离开的理由似乎是不同的:第一个句子暗示“他们”离开是因为约翰的固执,使得和他谈话变得困难或不愉快。在第二个句子中,似乎“他们”离开是因为约翰太累了,无法进行对话。这意味着动机是不同的:也许是出于对约翰的疲劳状态的尊重,或者是因为他的疲劳使谈话无法进行或没有结果。在这两个句子中,约翰的状况导致了“他们”的离开,但原因不同:一个是由于他的固执,另一个是由于他的疲倦。)
从这个回答,我们可以看出:ChatGPT是分得清 “ John is too stubborn to talk to”和“John is too tired to talk”的区别的。也就是说,它学会了使用语言,甚至掌握了很细微的语言知识。
是的,我认为GPT已经理解了、学会了人类的语言——但这不重要。
有学者会认为GPT并没有学会人类的语言,至少和人类的理解不是一种类型,因为GPT仅仅掌握了语言内部词汇的关系,而人类掌握的是语言和世界的关系——但这也不重要。
总之,GPT是否理解了、学会了人类的语言,这个看似对语言学家来说至关重要的问题,其实并不重要。我这样说有两个理由:
第一,对于人类大脑到底是如何学习语言和处理语言的,我们并不真正清楚。所以,我们实在也没有特别站得住脚的理由来说GPT没有真正掌握人类语言。
第二,所有针对这个问题的讨论,都是在已知文本是 ChatGPT生成的前提下进行的。假如是在不知道对面是真人还是ChatGPT,ChatGPT又特意设置为不暴露自己身份的前提下,我相信,很多人都无法分辨和自己聊天的是人还是机器。既然你我都没有把握通过对话将ChatGPT和真人区分开,又有什么理由说它没有掌握人类语言呢?
基于这两个理由,我认为讨论ChatGPT是否掌握了人类语言的意义不大。正如一句英语俗语所说,“If it looks like a duck and walks like a duck, it is a duck”,既然我们无法通过对话将ChatGPT与真人区分开,倒不如大大方方地承认它掌握了人类的语言。
于是,真正重要的问题是:在这个新的认识基础上,我们可以做些什么或者可以反思些什么?
重要问题
如果我们承认ChatGPT已经掌握了人类语言,那么第一个值得问的问题就是:它掌握的是什么?
GPT的参数里肯定包含着一些语言知识,但它现在就像一个自然而然学会了母语的人一样,能够自由使用母语,却无法描述母语里的知识。我们得想办法帮它找出来。都说深度学习系统是一个黑箱,调参数就像炼丹,现在,是时候探究一下黑箱里面到底发生了什么。
当我们不再纠结于GPT是否学会了人类语言时,我们其实给自己增加了一个研究语言的渠道,甚至可以说增加了一个研究语言的范式——通过对成功的语言模型进行反向工程,以探究人类语言的结构。
除了语言学研究上的问题,在承认ChatGPT已经掌握人类语言的前提下,我们也可以反思一些东西。我认为最值得反思的就是,我们如何与人工智能相处。
GPT是通过学习海量的文本才掌握了自然语言,而人类学习母语似乎不需要这么大量的输入。这个矛盾似乎不好调和。
真的是这样吗?在承认GPT可以通过大量文本训练学会人类语言的前提下,我们有必要反思一下人类训练数据小这个前提是否正确。的确,人类学习母语时,接触的语言数据并不多,质量也不高。但人类习得母语的过程中接触的不仅仅是语言数据,还有多种渠道的数据——听觉的、视觉的、嗅觉的、触觉的甚至味觉的。
从统计的角度看,那些和语言交流无关的信息对理解语言信息同样重要。这就好比语料库分析中,想要知道一个单词和某个构式的搭配强度,不但要知道二者共现的频率,还需要知道二者不共现的频率和二者与其他构式(词汇)共现的频率。从这个意义上来看,儿童学习母语时用到的是海量的数据:周围人的动作、环境声和语音的对比、父母说话时声波向自己聚焦和周围声波散射的对比、和语音产生同时发生的事件、语音产生前后环境的变化等,所有这些信息,共同帮助人类儿童学会了母语。
反过来看, GPT之所以需要海量的语言数据来训练,恰恰是因为它没有办法接触海量的多模态数据,也无法像人类那样去处理这些信息。所以,我们和机器一样,都需要海量的数据训练才能掌握语言,只是数据的类型不一样。
明白这一点—也就是说,在学习上我们和人工智能系统可能并没有本质区别—或许我们会少些焦虑,多些释然。我们担心人工智能会超越人类进而统治人类,这担心的背后,其实是自傲。我们认为我们就应该是万物之灵,我们有资格统治地球上的一切生物,但除了我们自己造出来的神,谁也没有资格来统治我们。
我们对那些人类有而其他动物没有的特征特别珍视,比如语言和复杂情感。如果有什么非人类的东西在这些方面可以和我们相提并论了,我们就会恐慌或者拒绝相信,尤其是这个东西还是我们自己造出来的时候。
造出汽车时,我们不恐慌,我们兴奋,因为我们没有一些动物跑得快,现在有了让我们的速度远超过它们的工具,这是值得庆祝的事儿;
造出飞机时,我们不恐慌,我们兴奋,因为我们不像鸟儿有翅膀,可以在天空飞翔,现在有了让我们上天的工具,这是值得庆祝的事儿;
造出GPT时,我们恐慌了,因为只有人类才会说话,现在有了一个说得和我们一样好的机器,大事不好了!
其实大可不必恐慌,只要我们放弃非得控制自己创造物的执念。实际上,地球现在的样子,就是生物和环境互动的结果,这里面也有人类活动的功劳。换句话说,我们所处的环境,哪怕是所谓的自然环境,也是我们创造的。但这个环境里,又有多少是我们能够控制的呢?
在我看来,对待人工智能最好的态度就是:创造但不拥有。创造是人类的本能,但一个东西一旦被创造出来,就应该当作是环境的一部分,接下来我们应该做的事情就一件—适应这个新的环境。
所以,去适应有了GPT的世界吧,无论是在科研上还是生活中。
结语
本文是我使用 ChatGPT半年后的一些感受。文章的观点总结起来就是:既然我们无法仅根据对话将ChatGPT和人类区分开,倒不如承认它已经学会了人类语言。在承认这个事实的基础上,去探索新的语言学研究角度,反思我们和人工智能相处的方式。