人人都能懂的ChatGPT解读
本文将用浅显且不严谨的语言解惑以下问题:ChatGPT 为什么能火起来?
ChatGPT 背后的关键技术是什么?我能弄个自己的 ChatGPT 吗?我怎么用它来赚钱?
对话机器人不是个新技术,以往的机器人产品很多,为什么这次 OpenAI 公司推出的 ChatGPT 能这么火?因为以前的机器人只能做简单且有限的事,问天气、放音乐还行,问个复杂一些的事就有点“人工智障”了。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 能够记住之前的对话、承认错误、在连续的多轮对话中给人很顺畅的感觉。
顾名思义,大规模语言模型就是非常大的语言模型。什么是语言模型呢?
简单说来,语言模型的作用就是根据已知句子的一部分,来预测下一个单词或者空缺部分的单词是什么。比如,给你前半句:“国庆前夕,天安门广场前伫立起一个 ____”,你会预测出空白部分大概率会是“大花篮”。
其实,你天天都在用语言模型,当你使用手机或电脑里的输入法回复消息时,它就在推荐你下一个单词。ChatGPT 使用的 GPT-3.5 可比输入法中的语言模型要大很多。输入法语言模型占用的存储空间可能只有 50MB,而 GPT-3.5 有 800GB。
GPT 为什么会那么大?因为它内部是神经网络的结构。大规模语言模型的基础单元叫做感知机,它模拟了人脑中神经元的结构。这些感知机组织成庞大的网络结构,用来“山寨”人脑的神经网络。
一般情况下,一个正常人的大脑约有 800~1000 亿个神经元,以及约 100 万亿个突触。神经科学家 Paul Maclean 提出的三元脑(triune brain) 模型,将大脑结构分为三类:爬行脑、哺乳脑、人类脑。爬行脑最早进化出来,负责呼吸、心跳、血压等,完全自动运作。哺乳脑负责情感、记忆、习惯形成等,能够做出非常快的决策。人类脑最晚形成,负责一些复杂的分析推理,是做慢决策,即所有需要深思熟虑的事物。
GPT-3.5 的参数总量达到 1750 亿,虽然距离人脑突触的量级还有差距,但也已经显现出之前小规模模型所不具备的推理能力。要想足够智能,网络规模足够大是个必要条件。
大模型的核心是一个叫 Transformer 的组件,Transformer 在这里可不是"变形金刚"的意思,也许翻译成"变压器"意思更接近些。
想想我们国家的西电东输工程,西部利用水力、风力、日光所转化的电能,经过变压器压缩成高压甚至特高压,再在电网上传输,到了东部之后再逐级降压,然后才能使用。变压器在其中先升压再降压,有效降低了能量在传输过程中的损耗。
我们人类在交流过程中也有类似的过程,同事 A 跟你说了一件事,你并没有逐字逐句的记在脑子里,而是理解了其中的语义,在脑子里形成一种意识流,这是一种压缩编码的过程。你脑子里保留的意识流具体是什么,你也说不清楚 --- 也不需要说清楚。当你向同事 B 复述这件事的时候,你重新把它组织成语言,保留了其中的各项重点内容,通过一系列的发音或文字表达给对方,这是解码的过程。这种先编码再解码的过程,就是 Transformer 的工作原理。另外,在实际当中,有些语言模型只用到堆叠多层的编码器,有些只用到堆叠多层的解码器;堆叠的层数也多有不同,少的有 6 层、12 层,多的有 48 层。
如果你有一些计算机基础,听说过词袋模型(Bag of Words,BOW)、循环神经网络(Recurrent Neural Network,RNN),那么对 Transformer 就更容易理解了。
BOW 完全丢弃了词的位置信息,没有把文本当作有顺序的序列,因此语义理解能力较差。例如,“不,我很好”和“我很不好”,两句话虽然用词一样,但词的位置不同,语义上差别巨大。
RNN 能较好的保留词的位置信息,可以考虑到词的先后顺序对预测的影响,但是,如果处理的文本长度很长,关键的词之间距离较远时,效果会显著下降。
Transformer 中引入“注意力”机制,多个组件分别关注句子中不同方面的重点,而且随着网络层次的增加,能够提取出更高级更抽象的语义信息,理解能力更强。Transformer 除了语义提取能力强,还能从无标注的数据中学习,而且场景迁移能力好。
此外,大规模语言模型还带给人们的一项意外的惊喜,那就是让人细思极恐的思维链(Chain-of-Thought,CoT)能力。
简单地说,思维链就是让 LLM 将一个问题拆解为多个步骤,最后给出答案,而不是让 LLM 直接给出答案。直接给答案的出错率更高。比如,你给 LLM 出了一个题目:“张三养了 10 条狗,每天照顾每条狗都要花半小时,请问他照顾这些狗要花费多长时间?”LLM 直接给答案的话可能会出错,当你提示 LLM 要“一步步地回答”时,它会告诉你:“张三养了 10 条狗,每天照顾每条狗都要花半小时,那就是 10 x 0.5 = 5 小时 / 天。5 小时 / 天 x 7 天 / 周 = 35 小时 / 周。答案是每周 35 小时。”
这项能力并不是设计者的初衷(初衷只是学习如何说人话),而是在随后的代码训练、提示学习中挖掘出来的,这些能力原本就已经存在于大模型之中,它从代码、书籍、网页中学到了一些常识知识并具备了一定的推理能力。
人类问问题的方式对于 LLM 而言不是最自然的理解方式,为了让 ChatGPT 给出的答案更贴近人类的问题、更符合公序良俗,它在发布前采取了一种叫做“基于人类反馈的强化学习”(Reinforcement Learning by Human Feedback,RLHF)的训练策略。简单来说,就是花钱找人给模型提出各种可能的问题,并对模型反馈的错误答案进行惩罚、对正确的答案进行奖励,从而实现提升 ChatGPT 回复质量的目的。
光有海量的、无标注的数据还不够,还要有少量的、高质量的标注数据才行。前者用来训练语言模型,让它学会说人话,后者用来训练对话模型,让它别啥都瞎说,比如:回答中不能含有种族歧视和性别歧视的内容,拒绝回答不当问题和知识范围之外的问题。
简单地回答:极大概率是不能的。起码在现阶段,这不是招几个人、花些钱就能做成的事,能训出 ChatGPT 的人可能比做出 4 纳米芯片的人还要少。
这其中的原因是什么?咱先来捋捋 ChatGPT 超能力的来源,再对比看看自己手中的家底。
算力,也就是数据的处理能力,与数据、算法,并称为 AI 三要素。据估计,仅仅训练一次 GPT-3,Open AI 可是花费了 460 万美元。对于 ChatGPT 而言,支撑其算力基础设施至少需要上万颗英伟达 A100 的 GPU,一次模型训练成本超过 1200 万美元。
然而,在这些必要非充分条件中,算力是最容易解决的。
模型要足够深、足够大,才能解决远距离的语义理解能力、才能产生抽象的推理能力,这些高级的基础的能力具有很好的通用性。因此,高级的能力可能只存在于大型模型中,而训练大模型,需要足够的数据量。
全球高质量文本数据的总存量在 4.6 万亿到 17.2 万亿个字符之间。这包括了世界上所有的书籍、科学论文、新闻文章、维基百科、公开代码以及网络上经过筛选的达标数据,例如网页、博客和社交媒体。最近的一项研究数据显示,数据总数大约为 3.2 万亿个字符。DeepMind 的 Chinchilla 模型是在 1.4 万亿个字符上训练的。也就是说,在这个数量级内,我们很有可能耗尽世界上所有有用的语言训练数据。
此外,反观中文网站的数据资源,大致占全世界总资源的 1.3%。中文内容相比英文有四五十倍的差距,人工智能脱离不了人类知识的土壤,这方面的先天条件不是短期内花钱或凭一己之力就能解决的。
ChatGPT 公开出来的少量材料中,披露出了一系列训练技巧,比如:代码训练、指令微调、上下文学习等。更多的细节目前还没有公开,即便公开了也不见得是全部,即便全部公开也未必能重现。因为整个过程链条非常长,有大量的工程技巧在里边。俗话说魔鬼藏在细节里,具体的实现和工程技巧才是重头戏,好比刚学做菜的人,即便有足够的食材,照着菜谱也不可能做出一套满汉全席。
今年 2 月初,谷歌已向人工智能初创公司 Anthropic 投资约 3 亿美元,并获得该公司 10% 股份。该公司 2021 年创立,目前团队规模仅在 40 人左右,初创期的 11 位核心成员都曾经参与过 GPT-2、GPT-3 模型的研发。可见,业界对于人才的重视程度以及人才的奇缺性。
ChatGPT 似乎打破了人们关于 AI 模型的一项固有认知:“通用的不好用,好用的不通用。”
大模型革命的一个关键趋势就是,通用大模型比专用小模型表现地更好。对于定位在垂直细分领域里的初创公司来说,既不能自研出大模型,效果上又失去了竞争力,因此是不是就没有活路了?
我觉得不是,ChatGPT 的能力可以分成 chat 和 GPT 两部分来看,即上层的对话和图片的生成能力、底层的语言和推理能力。
在 ToC 类内容消费市场,未来可能会出现大量的、碎片化的 AIGC 应用,比如生成头像、诗文、甚至短视频等,重点是在有趣的细分场景里发挥创造性和想象力。在消费电子市场里,有对话能力的智能音箱、智能家电在去年的出货量有所下滑,借助更强的对话能力,也许还能挽回一些颓势。
在 ToB 类企业服务市场,AI 不再只是替代简单重复性的体力劳动,还将替代简单规律性的脑力劳动,并在逻辑复杂的脑力劳动中辅助员工提升工作效率。简单的脑力劳动,比如营销文案撰写、初级程序员和插画师等。复杂的脑力劳动,可能会围绕具体业务的推理能力,以虚拟工作助手的形式出现。
对于处于 ToB 赛道的科技公司而言,中间层可能会越来越薄,对于行业 KnowHow 的积累会成为越来越重要的竞争门槛。这其中可能会遇到很多挑战,比如:如何在使用强大的通用模型和构建自己的垂直模型之间进行迭代,如何将通用无标注的大规模数据和领域小规模知识相结合,如何将领域事实知识注入到 LLM 中使得 LLM 的输出内容可控。在目前的研究范式下,领域内高质量的标注数据 + 领域推理能力,两者如何形成“飞轮效应”是非常重要的问题。
说了这么多,总结一下重点,不管你能记住多少,起码下次在电梯里遇到老板或者在饭局上遇到同学时,在聊起 ChatGPT 的时候,你能插上几句话。
关于大规模语言模型:训练时要用到万亿级的数据、花费百万美元的算力,才能使它能说人话,并具有一定的“思维链”推理能力。
大模型的超能力:模型要足够深、足够大,才能产生抽象的推理能力,这些高级的基础能力具有很好的通用性。大模型革命的一个关键趋势就是,通用大模型比专用小模型表现地更好,打破了人们一项固有认知:“通用的不好用,好用的不通用。”
应用场景:ToC 类应用要找准细分的内容生成场景,ToB 类应用要围绕推理能力去发挥,让它成为脑力工作者的辅助,替代一部分简单的脑力工作,辅助员工的做创造性工作。
最后,对于想进一步深入了解技术细节的同学,推荐一下延展阅读材料:
OpenAI 官网上关于 ChatGPT 的介绍:ChatGPT: Optimizing Language Models for Dialogue
关于大规模预训练语言模型:《预训练语言模型》
基于语言模型提示学习的推理:论文列表
关于 GPT 技术演进过程:GPT1 到 ChatGPT 的技术演进
关于大模型的涌现能力:大模型的突现能力和 ChatGPT 引爆的范式转变
关于 InstructGPT:Training language models to follow instructions with human feedback
对话式 AI 需要具备领域知识时,可以参考这本书:《知识中台》
对话式 AI 需要处理视频或语音时,可以参考:《深度学习视频理解》《语音识别服务实战》
张杰,中关村科金技术副总裁
天津大学计算机专业博士。荣获第十届吴文俊人工智能技术发明一等奖。著有《知识中台:数字化转型中的认知技术》、《“新一代人工智能创新平台建设及其关键技术丛书”— 知识图谱》两部技术专著。研究领域:知识工程、自然语言处理等技术领域拥有丰富的理论和实践经验。主持或参与国家级课题八项,并发表学术论文十余篇、拥有专利一百余项。主导开发了推荐引擎、知识问答系统、客服机器人、大数据风控平台、行业知识图谱等多项商业化系统,累计产值数亿元。
推荐阅读: