作者 | 张杰,中关村科金技术副总裁
策划 | 刘燕
ChatGPT 发布了两个多月,热度不降反增,不断火爆出圈。是时候,为不懂 AI 技术的同学们白话科普一下了。
本文将用浅显且不严谨的语言解惑以下问题:ChatGPT 为什么能火起来?
ChatGPT 背后的关键技术是什么?我能弄个自己的 ChatGPT 吗?我怎么用它来赚钱?
1. ChatGPT 为什么这么火?
对话机器人不是个新技术,以往的机器人产品很多,为什么这次 OpenAI 公司推出的 ChatGPT 能这么火?因为以前的机器人只能做简单且有限的事,问天气、放音乐还行,问个复杂一些的事就有点“人工智障”了。ChatGPT 可以说是技术上的量变引起了效果上的质变,在三个方面让我感觉很惊艳:
有上下文记忆能力,多轮对话衔接地很好,很难看出是机器生成的;
有学习纠错能力,在它回答错误之后,如果你纠正了它,第二次就不会再答错。
有思维链推理能力,具备一些常识知识,能做复杂一些的算数题;
2. ChatGPT 背后的
关键技术是什么?
在 ChatGPT 背后起关键作用的是一种被称为大规模语言模型(Large Language Model,LLM)的东西,ChatGPT 用的这款语言模型命名为 GPT-3.5,GPT 是生成式预训练(Generative Pre-Training)的缩写,目前的版本号是 3.5 版。此外,在 GPT-3.5 之上,ChatGPT 还通过基于人类反馈的强化学习(Reinforcement Learning from Human Feedback,RLHF),使 GPT 能够记住之前的对话、承认错误、在连续的多轮对话中给人很顺畅的感觉。
2.1 大规模语言模型
顾名思义,大规模语言模型就是非常大的语言模型。什么是语言模型呢?
2.1.1 语言模型
简单说来,语言模型的作用就是根据已知句子的一部分,来预测下一个单词或者空缺部分的单词是什么。比如,给你前半句:“国庆前夕,天安门广场前伫立起一个 ____”,你会预测出空白部分大概率会是“大花篮”。
其实,你天天都在用语言模型,当你使用手机或电脑里的输入法回复消息时,它就在推荐你下一个单词。ChatGPT 使用的 GPT-3.5 可比输入法中的语言模型要大很多。输入法语言模型占用的存储空间可能只有 50MB,而 GPT-3.5 有 800GB。
2.1.2 神经网络
GPT 为什么会那么大?因为它内部是神经网络的结构。大规模语言模型的基础单元叫做感知机,它模拟了人脑中神经元的结构。这些感知机组织成庞大的网络结构,用来“山寨”人脑的神经网络。
一般情况下,一个正常人的大脑约有 800~1000 亿个神经元,以及约 100 万亿个突触。神经科学家 Paul Maclean 提出的三元脑(triune pain) 模型,将大脑结构分为三类:爬行脑、哺乳脑、人类脑。爬行脑最早进化出来,负责呼吸、心跳、血压等,完全自动运作。哺乳脑负责情感、记忆、习惯形成等,能够做出非常快的决策。人类脑最晚形成,负责一些复杂的分析推理,是做慢决策,即所有需要深思熟虑的事物。
GPT-3.5 的参数总量达到 1750 亿,虽然距离人脑突触的量级还有差距,但也已经显现出之前小规模模型所不具备的推理能力。要想足够智能,网络规模足够大是个必要条件。
2.1.3 Transformer
大模型的核心是一个叫 Transformer 的组件,Transformer 在这里可不是"变形金刚"的意思,也许翻译成"变压器"意思更接近些。
想想我们国家的西电东输工程,西部利用水力、风力、日光所转化的电能,经过变压器压缩成高压甚至特高压,再在电网上传输,到了东部之后再逐级降压,然后才能使用。变压器在其中先升压再降压,有效降低了能量在传输过程中的损耗。
我们人类在交流过程中也有类似的过程,同事 A 跟你说了一件事,你并没有逐字逐句的记在脑子里,而是理解了其中的语义,在脑子里形成一种意识流,这是一种压缩编码的过程。你脑子里保留的意识流具体是什么,你也说不清楚 — 也不需要说清楚。当你向同事 B 复述这件事的时候,你重新把它组织成语言,保留了其中的各项重点内容,通过一系列的发音或文字表达给对方,这是解码的过程。这种先编码再解码的过程,就是 Transformer 的工作原理。另外,在实际当中,有些语言模型只用到堆叠多层的编码器,有些只用到堆叠多层的解码器;堆叠的层数也多有不同,少的有 6 层、12 层,多的有 48 层。
如果你有一些计算机基础,听说过词袋模型(Bag of Words,BOW)、循环神经网络(Recurrent Neural Network,RNN),那么对 Transformer 就更容易理解了。
BOW 完全丢弃了词的位置信息,没有把文本当作有顺序的序列,因此语义理解能力较差。例如,“不,我很好”和“我很不好”,两句话虽然用词一样,但词的位置不同,语义上差别巨大。
RNN 能较好的保留词的位置信息,可以考虑到词的先后顺序对预测的影响,但是,如果处理的文本长度很长,关键的词之间距离较远时,效果会显著下降。
Transformer 中引入“注意力”机制,多个组件分别关注句子中不同方面的重点,而且随着网络层次的增加,能够提取出更高级更抽象的语义信息,理解能力更强。Transformer 除了语义提取能力强,还能从无标注的数据中学习,而且场景迁移能力好。
2.1.4 ˼ά