ChatGPT如何练就对答如流的本领

来源:科普时报 时间:11-02 作者:冯润

到今年11月份,ChatGPT就“一岁”了。以ChatGPT为代表的人工智能模型正在以惊人的速度快速迭代,甚至有科技公司宣称,ChatGPT今后可能取代人类。那么,ChatGPT的原理是什么?它真的有可能取代人类吗?今天,我用大家都熟悉的例子,让人们直观地了解这项看似玄幻的技术。

“套娃”方式让ChatGPT实现长文本生成

英文缩写ChatGPT全名是Generative Pre-trained Transformer,翻译过来就是“生成式预训练转换器”。从这个名字我们就能看出,它是一个可以生成内容的预训练模型。什么叫生成内容呢?成语接龙游戏就是一种生成,根据前面的内容生成后面的内容。如果我说“守株待……”ChatGPT可能会生成“兔”,如果我说“声东击……” ChatGPT可能会生成“西”。这就是单字接龙的生成能力。

如果只是一个字一个字地生成,想要生成一段长文本岂不是太慢了?这就需要用到“套娃”的方法,就是每生成一个字,就把它和前面的内容组合起来,作为新的前文再去生成下一个字,如此反复,就可以生成任意长的文章。比如,开始时输入“守株待”,ChatGPT生成“兔”,然后把“守株待兔”作为新的前文,再生成下一个字。这样通过大量的单字生成和组合,任何长文本都可以生成出来。

生成内容受两个因素影响,并非随机答案

那么,ChatGPT生成出来的内容是不是完全随机呢?答案是否定的,因为生成内容受两个因素影响:一是前面的上下文,二是ChatGPT自身的语言模型。简单来说就是,相同上文不同模型会生成不同内容,相同模型不同上文也会生成不同内容,这就好像每个人脑海中对“守株待兔”后面应该连接什么字都有自己的理解是一样的。

当然,我们还希望ChatGPT生成我们想要的内容。这就需要给ChatGPT提供大量我们想要的内容,让它通过学习来改变自身的语言模型,就像重复学习“守株待兔”后面的词应该是“猛虎”。久而久之,看到“守株待兔”后,我们的脑海中第一个出现的词就是“猛虎”。ChatGPT也一样,通过学习就能逐步掌握我们想要的语言规律。

ChatGPT通过学习能自己生成新答案

学习不是简单的记忆,而是能举一反三。如果训练过“守株待兔,猛虎”,看到“守望相助,英雄辈出”也知道下一句应该是“猛虎”,这就是ChatGPT的泛化能力,就是可以应用学习的规律回答没有见过的问题,这与我们通过学习就会应用道理回答新的问题是一样的。

ChatGPT回答问题也是这样的原理,给它提供大量正确的问答范例进行学习,它就掌握了回答这个类型问题的方法,从而可以回答没有见过的新问题。这点不同于搜索引擎,属于直接在数据库里找现成答案。ChatGPT懂得回答问题的方式,然后自己能生成新答案。

不过,ChatGPT的答案不一定正确,因为它可能按照错误的规律生成虚假内容,就像我们也可能从错误例子中学习到错误的知识一样,产生不符合事实的答案。所以,我们不能盲目相信它的一面之词,而要通过多次提问来评估它的可靠性。

得益于极大的模型规模和三段训练法

ChatGPT为何能达到如此惊人的语言生成效果呢?这得益于极大的模型规模和三段训练法:首先,ChatGPT吸收了上亿条互联网数据进行无监督预训练,掌握了广泛的语言知识,然后人工设计语言交互模板规范它的行为,最后通过人工提问,不断反馈训练,提升创造力。通过这样逐步的训练,ChatGPT才能超越我们的预期,完成很多复杂的语言任务。

作为人造系统,ChatGPT也有局限性,生成的内容不可全部相信,需要人类进行监督与评估。就像任何技术一样,只能作为辅助工具而不应该也不可能取代人类创造力和意识,它终究需要人来指导运用。让我们积极而理性地看待这项科技进步,以人为本,造福社会。

(作者系北科科普宣讲团成员,北京实验动物研究中心有限公司市场与行业研究员)