ChatGPT 的「神功」,是如何炼成的?
最强对话式 AI,站在巨人的肩膀上。
来源:Web3天空之城(Web3SkyCity)
作者:城主
AIGC 在这几个月成了一个大热的话题。
颇有些风水轮流转的感觉,如同年初大火特火的 web3 一样, AIGC 是现在的当红炸子鸡, 创业投资讨论里如果不带点 AIGC 就是妥妥的落伍。
不久之前,备受关注的开源 AI 绘画模型 Stable Diuffusion 推出了 2.0 版, 引起了更多关注和焦虑:「我连 1.0 的门道都还没摸清楚,怎么就 2.0 了啊」
没有跟上 AIGC 的步伐,仿佛就要被世界所抛弃。
有趣的是,作者前面看到一些 AIGC 文章,基本都是围绕着最近大热的 AI 绘画来讨论的。
当然了,生成式 AI 绘画模型的突破是一件值得大书特书的事情,在作者上一篇文章《AI 绘画何以突飞猛进? 从历史到技术突破,一文读懂火爆的 AI 绘画发展史》里也已经做了深入的探讨。
但是,必须指出的是,当下在 AI 绘画或者 AI 生成其他形式内容的大模型里,对自然语言的理解是一个首要的关键环节,而之所以 AI 绘画能火爆出圈,有至少一半的功劳必须归结于,当下最新的 AI 绘画模型可以直接「理解」用户的语言输入,以及在模型内部里把语言内容理解和图像内容理解紧密结合起来。
生成式 AI 就像人工智能皇冠上的一颗明珠,不是唯一的一颗,但绝对璀璨耀眼。尽管 AI 在信息分析处理等各个方面都发挥着重要作用,但「生成式 AI」的出现无疑影响更深远:生成即创造。生成式 AI 的突破,意味着 AI 开始走向了创造新内容世界的大道。
罗马不是一天建成的。就让我们一起回顾和尝试理解,这激动人心的一切究竟是怎么发生的。
01
ChatGPT 横空出世
在回顾历史前,首先要跟风提一下几天前发布的 ChatGPT,一个绝对神仙级别的自然语言生成式 AI。
ChatGPT 诞生的重要意义恐怕不亚于 Stable Diffusion 等 AI 绘画生成模型的出现。有兴趣的朋友可以感受去 chat.openai.com 感受一下这个当今最热没有之一的自然语言问答式 AI 的巨大威力。
ChatGPT 是明星人工智能公司 OpenAI 的 GPT 自然语言生成式模型的最新衍生品。在这之前,坊间已经传闻 OpenAI 的下一代自然语言生成模型 GPT4 即将出现。而且,有一个让人震惊的江湖传言:GPT4 据称通过了图灵测试!
图灵测试究竟是什么意思? 简单的说,就是隔着一个小黑屋问各种话题,然后是否能分辨小黑屋里回答问题的究竟是机器还是人类。如果无法辨别,就就说明了机器具有和人一样等级的智能,通过了图灵测试。
迄今为止,还没有 AI 模型能真正通过图灵测试。看来临界点已经到,笔者都迫不及待的期待 GPT4 的真正推出了。
谁知道,还没等来 GPT-4,衍生自 GPT-3.5 的 ChatGPT 却先来了。
顾名思义,ChatGPT 就是「聊天 GPT」,以对话的方式交互,用户问问题,它来回答。
咋听起来,似乎也没有很新鲜。 但情况是,ChatGPT 的智能化远远超出了那些它的聊天 AI 前辈们。
好比 StableDiffusion/Midjourney 也就是 AI 绘画,但所能生成的 AI 绘画质量甩了前辈无数条街。
网上有越来越多的文章开始安利 ChatGPT,不过多是拿了外网英文问答的截图,其实 ChatGPT 可以直接上中文!另外,可以直接问 ChatGPT 怎么写代码,比如写一个俄罗斯方块。
而更有想象力的,是让 ChatGPT 来生成 AI 绘画的输入关键词!让 AI 自己来指导 AI 作画,多美妙的主意。
这仅仅是一个开始,随着 ChatGPT 在全网的各种自来水安利,相信还有更多古灵精怪的玩法不断被网友们挖掘出来。
ChatGPT 的回答给人的感觉是,这是一个特别靠谱的聊天 AI,真正的上知天文下知地理,最关键的是,它不胡说八道!正因为它回答的准确性,看起来 ChatGPT 有了替代通用搜索引擎 Google 的可能性。
OpenAI 的 CEO 萨姆・阿尔特曼(Sam Altman)对 ChatGPT 的未来发展表示很有信心。他在推特上说,语言接口是未来的一个发展方向,OpenAI 只是一个先行者,相信很快大家就能用上真正智能的提供建议的 AI 助手了。
测试版的 ChatGPT 仍有一些缺点,但这都只是战术级别的;在战略上,ChatGPT 的前景已经相当令人期待,特别是 OpenAI 下一代 GPT-4 加持下的 ChatGPT,其能力恐怕更加突破天际。
我们也许正在经历又一个 AI 突破的时刻,一如 2022 年初到年中 AI 绘画的势如破竹。 而这次,则是人类通用信息生成的突破!
喜欢刨根问底的读者们会问, AI 是如何走到这一步的?
02
大算力,大数据,
大力出奇迹
2006 年,杰弗里·辛顿(Geoffrey Hinton)在 science 期刊上发表了重要的论文《Reducing the dimensionality of data with neural networks》,提出深度信念网络(Deep Belief Networks,DBNs),「深度学习」正式诞生,基于人工神经网络的第三次 AI 发展浪潮开始了,且一直延续至今。
和前两次浪潮不同的是,当下计算机性能已经能让大规模的人工神经网络模拟得以成为现实。在 1957 年,罗森布拉特用 IBM 704 去仿真感知机,每秒完成 1.2 万次浮点加法,而如今超级计算机速度是 IBM 704 的 10 万亿倍以上。
此外,个人计算机 GPU 近些年发展迅猛,尽管 GPU 的初衷是为了加速 3D 图形计算,但通用 GPU 的计算模式正好匹配了神经网络并行计算的需求特点,从而进一步推动了神经网络模型的发展。
除了算力之外,限制前两次 AI 浪潮发展的另一主要因素就是数据的缺乏。
在深度学习理论模型提出之后,最早之一意识到了 AI 学科发展的数据钳制,并着手去解决的是华人 AI 科学家李飞飞。
年轻的李飞飞以坚韧不拔的大无畏精神,推动完成了一个超大规模的开源图片标注数据库,这就是著名的 Image Net 项目。在 2009 年正式发布时,Image Net 有超过 1000 万数据,两万多个类别。
2010 年开始,Image Net 大规模视觉识别挑战赛(ILSVCR)开始举办,全世界图像领域深度学习的专家们同台竞技和交流,从此拉开了计算机视觉的新篇章。
虽然本文主要是关注自然语言大模型的前世今生的,而 Image Net 完全是图像领域的工作。 但是,Image Net 的出现和发展给了自然语言 AI 模型研究一个很重要的启发。这就是图像领域深度学习的预训练概念。
大家都知道,「深度学习」顾名思义,就是具有很多层级的神经网络模型。现代神经网络模型的网络结构层数很深,动则几百万上千万参数量。 而这些神经网络模型在能做特定任务之前,都是需要经过「训练」,即根据标注好的特定训练数据去反复调整模型里的参数,最后所有参数调整到位,模型能匹配训练数据集的输入和输出。
那么,问题来了,要调整深度学习神经网络模型里那成千万的参数量,如果训练数据少了,肯定很难调整到位。这就好比一个内部齿轮复杂精密的新机器,如果只稍微动一下,内部能牵扯到的齿轮机构说不定都很少,达不到磨合的目的;只有大规模长时间运转起来,内部的齿轮才能全速转起来,互相磨合好。
但是,那些特定的 AI 任务往往没有那么多训练数据,这怎么办?
非常值得庆幸的是,AI 科学家研究发现了深度学习网络一个有趣的特性,对于图像领域的深度学习神经网络而言,不同层级的神经元学习到的是不同逻辑层级的图像特征!
如上图所示,若将训练好的网络每层神经元学习到的特征可视化,会发现最底层的神经元学习到的是线段等特征,第二层学到的是人脸各个五官的特征,第三层学到的是人脸轮廓的特征,这三层构成了人脸特征的逻辑层级结构。神经网络越底层的特征越基础抽象,比如什么边角弧线等,而越往上层,就具体和任务相关。
一个训练好的深度学习网络的内部参数,在底层体现了通用和基础的特征,而越到高层,越和特定任务相关。这是深度学习神经网络一个特别棒的特性。
人们开始动脑筋了,既然是这样,那么是不是可以先用标准的大数据集比如 Image Net 来做深度学习网络的「预训练」呢? 反正那么多层的神经网络里,大多数的层级都和特定任务关系不大,我们只需要把通用大数据预训练得到的网络模型结果,再结合任务相关的那点可怜的标注数据去微调(Fine-tuning)高层的网络参数,使得高层参数输出更匹配当前领域的任务,就 OK 了。
这样一来,原本因为数据不足而无法训练的特定任务也能解决了。即便任务的训练数据不缺,先通过预训练过程也能极大的加快特定任务训练的完成速度。预训练这种通吃的解决方案人见人爱,很快在图像处理领域广泛流行开来。
既然在图像处理领域的深度学习里预训练这么管用,搞自然语言处理 AI 的同学们自然也会在心里想,为什么不在自然语言处理领域里做预训练这么香的事情呢?
03
自然语言 AI
的深度进化
首先,自然语言处理的研究里,有个基本概念叫做「语言模型」,大致理解起来也简单,就是想办法打造一个核心函数 P,这个函数通过一个句子里前面的所有单词来计算下一个单词的概率大小。一句话里的单词总是顺序出现的, 每个单词都可以通过前面所有单词计算出这么一个概率,把所有这些单词的概率乘起来,总概率数值越大,说明这越像是人说出的话。
怎么构造这个神奇的函数 P 是 AI 科学家的事情,但读者们一定可以明白,有了这个牛的「语言模型」函数 P,计算机就会说人话了。
而从神经网络学派的同学看来,是不是可以用神经网络来打造这样一个语言模型呢?就是说用很多的现成语料,来训练出一个神经网络,然后给这个神经网络模型输入一句话的前面几个词,这个模型就能计算出这句话的下一个单词。
这就是大名鼎鼎的「神经网络语言模型」NNLM。
NNLM 神经网络语言模型的想法并不是最近冒出来的,它的历史要追溯到 20 年前。NNLM 的论文在 2003 年就被发表出来了,而当时,深度学习的概念还只存在于杰弗里·辛顿(Geoffrey Hinton)的脑袋里。
所以,不幸的是,NNLM 当时没有引起学界多少反响,被埋没了近 10 年。事实上,在深度学习大火之前,用神经网络做自然语言处理甚至会被笑话,之前自然语言处理的主流研究方式还是基于统计学的机器学习方法。神经网络语言模型 NNLM 这个概念太超前时代了。
一直到了 2013 年,在深度学习概念提出来 7 年之后,深度学习神经网络模型先是在图像和语音领域大显神威,自然语言 AI 的同学终于想起了这篇十年前的论文。NNLM 重出江湖, 为世人所知:
在 2013 年,AI 研究人员倒腾了一个自然语言处理的处理模型 Word2Vec。 顾名思义,「Word2Vec」就是「Word to Vector,从词到向量」。研究人员的目标是把一个单词变成一个数学向量,这个数学量在 NLP 里有个专门的名词,叫做 Word Embedding(词嵌入)
为啥要变成一个向量,出发点也很简单,如果能将每个单词都能表示为数学空间里的一个向量,那么是不是理论上,在这个向量空间里比较接近的词,就是意义接近的单词呢? 这样计算机不就可以方便的理解单词之间的联系了吗?
Word2Vec 翻出了十年前的 NNLM。NNLM 的初衷只是想构建一个神经网络语言模型,根据前面的词,来预测后一个是什么词。NNLM 网络内部构造了一个随机初始化的矩阵,通过不断的训练,来达成 NNLM 模型预测单词的目的。
特别凑巧的是,研究人员发现这个训练出来的内部矩阵的每一行,正好可以作为每个词的嵌入向量 Word Embedding!这真是得来全不费功夫啊。
NNLM 和 Word2Vec 使用了类似的神经网络结构,不过因为目的不同,其训练方法理念是截然不同的。NNLM 作为语言模型,是要看到上文预测下文,所以训练时输入的是句子上文单词;而 Word2Vec 呢? 因为它的目标是要找出所有单词之间意义远近的数学关系,所以训练时都使用句子上文和下文作为输入。
不知道读者意识到没,这两种训练方式在更高的意义上有着一些本质区别,就好比我们人类说话,都是顺序说出来一个个单词的,说不定呢,人的潜意识或许也是一个类似 NNLM 的 P 函数,自觉不自觉地的决定人说话里的下一个词是什么。因此只从上文预测下文的训练方式,貌似天然更契合「生成式」的逻辑。
而 Word2Vec 这种通过上文和下文输入来训练的方式,可以比喻成机器来做阅读理解,就像是我们做语文或英语的阅读理解,一定是通读全文,然后根据上下文来理解和判断问题的答案。这样的人工智能,就是所谓分析式的 AI。
两种模型训练的思路,在后续发展里变成了自然语言模型的两种路线。本文开头提到的 OpenAI 生成式模型 GPT 系列,坚定的只用上文进行训练,用以追求「纯粹」的生成;而 Google 公司的大语言模型 Bert,则采用了上文和下文一起训练的模式,此乃后话。
前面提到,图像处理领域里使用大规模通用数据进行「预训练」所取得的效率和成果实在让人羡慕,而在自然语言处理领域里,其实也有一点点「预训练」概念的,这个预训练就是,每个单词的 Word Embedding 可以反过来初始化神经网络的内部参数。
不去探究数学细节,读者只要知道,这种「预训练方式」和前面图像处理领域的低层级网络预训练方式有点类似,但问题是利用 Word Embedding 只能初始化第一层网络参数,和图像处理领域的预训练能有效初始化大多数网络层级不可同日而语,只能说是一种比较原始初级的「预训练」了
但直到 2018 年前,这就是 NLP 领域里能采用的预训练典型做法了。
采用 Word Embedding 来初始化 NLP 神经网络有那么点效果,但没有期待的那么好。这里面还有一个逻辑上的原因:一个单词有多义词问题。所以企图在一个数学空间里用一个固定的数学向量来表征一个单词的意义,还要求含义相近的单词都聚在一起。 在面对多义词的时候, 这在逻辑上显然就是矛盾的。
当然了,聪明的 AI 研究人员肯定还是有办法。既然一个单词存在多义性,固定的 Word Embedding 向量无法表达单词的多个含义,那么是不是可以先训练好一个单词的 Word Embedding,然后在实际使用中,根据句子里的上下文语义去动态调整这个 Word Embedding 数值,这样经过调整后的「动态 Word Embedding」 更能准确表达单词在上下文的具体含义,同时自然的,解决了多义词的问题。
这个根据当前上下文来动态调整 Word Embedding 的想法就是顶级学术会议 NAACL 2018 年的最佳论文「Deep Contextualized Word Representation」,这个 NLP 模型命名为 ELMO(Embedding from Language Models,基于语言模型的词嵌入)
ELMO 引入上下文动态调整单词 Word Embedding 后,多义词问题就被彻底解决了,而且比预期的解决得还好:利用 ELMO 改进过的多种不同 NLP 任务,性能上都有幅度不同的提升,最高达到了 25%,不愧是最佳论文。
此外,ELMO 还有一个贡献,研究人员发现 ELMO 所使用的深度神经网络模型里,不同层次提取到的特征是有差异的。看到这里,读者想起了什么没有? 是不是和图像预训练的模型层级特征有点像了?
让我们复习一下,前面讲过,图像处理领域进行大规模预训练后,把深度学习网络每层参数做可视化后可以看到,深度学习网络每一层都对应着不同抽象层级的「特征」,在图像领域里,就是从底层的线段,到中间层的具体五官细节,再到高层的脸型,等等。
再说一次,「预训练」为什么是一个特别重要的概念? 这是因为好的「预训练」可以直接利用大量标准通用的的训练数据(图像领域就是图片,NLP 领域就是语料),把深度学习模型调整到了 90% 甚至更高程度的可用状态,预训练好的模型最后通过任务相关的少量训练数据,就能微调至完全胜任各种特定任务,这真是一个很美妙的事情。
那么,ELMO 出现后,自然语言处理领域的「预训练」有可能赶上图像领域了吗?
遗憾的是,还差一口气。
因为技术原因,LEMO 模型在抽取文字特征方面还比较弱,这是一个技术上的缺陷,意味着这个模型就无法很好完成 NLP 的「预训练」梦想: 特征都抽取不好,怎么让网络里每一层具体表达不同逻辑层级的特征呢。而从技术细节上对比,也会发现 ELMO 这种「预训练」方法和图像领域的预训练方法,两者在模式上还有很大差异。
自然语 AI 研究人员还需要继续找到一个方法,希望这个方法能很好的提取出文字的特征,就类似图像处理领域的神经网络模型,能很好的提取图像不同逻辑层面的特征。
恰就在时间刚好的 2017 年底, Google 研究人员发表了一篇里程碑式的论文, 这一篇论文提出的「自我注意力」机制让自然语言处理揭开了崭新的篇章。
04
注意力机制
和 Transformer
2017 年 12 月,Google 在顶级机器学习会议 NIPS 上发表了论文《Attention is all you need》,提出在机器翻译上大量使用自注意力(Self Attention)机制来学习文本表示,并把这种机制模型起了个霸气的名字:Transformer。
这篇论文一经出世就横扫了整个自然语言处理学术界,Transformer 迅速的取代了深度学习里传统的循环神经网络(RNN)成为了之后的大语言模型的标准配置。
Transformer 是目前 NLP 领域里最强的特征提取器,本质上 Transformer 是一个叠加的「自注意力机制」构成的深度网络。
包括我们现在所知道的 OpenAIGPT 系列模型,以及 GoogleBERT 系列模型,都受到了这篇文章的启发采用了部分 Transformer 的架构,从而取得了突破性的效果。
先说个题外话,笔者感慨,论文是否牛,一看题目就知道,这篇论文连题目都如此特别和霸气。
话说回来,什么是注意力机制? 深度学习里的注意力机制其实是一种思想,参考借鉴了人类的注意力思维方式。
视觉注意力机制是人类视觉所特有的大脑信号处理机制,我们的眼睛会快速扫描全局图像,得到需要重点关注的区域,就是所谓的注意力焦点后,再进一步对相关区域投入更多的关注。这是人类在长期进化中获得的一种生存机制,极大提高了人类信息处理的效率和准确性。
深度学习的注意力机制在概念上参照了人类的视觉注意力机制,核心目标就是从众多信息里选择出对当前任务更重要和关键的信息。
具体到 NLP 自然语言处理领域里,在之前,注意力机制一般是指输出句子里某个词和输入句子每个词之间的相似度。这也很好理解,就是去寻求问题(输入)和答案(输出)之间的关系么。
但 Google 这篇《Attention is all you need》的特别之处,是明确指出了,我们其实不需要先考虑输入和输出的关系啊,为什么不参考人类理解语言的方式,首先「学习」一句话内部单词之间的关系呢? 这就是所谓的「SelfAttention 自注意力机制」:指的是输入元素之间,或者输出元素之间的内在联系机制。
如上图所示,Self Attention 自注意力机制寻找到了一个句子里单词之间的语义特征,「it」指代的是「the animal」
稍微想一下,Self Attention 自注意力机制在逻辑意义上非常清晰,它让机器去理解人类语言每句话里单词之间的语义关系。
除了逻辑上看起来更有道理,Self Attention 机制还附带了一个很大的好处:因为网络层面抛弃了传统的 RNN(循环神经网络)模型,彻底规避了 RNN 不能很好并行计算的困扰,极大提高了模型并行训练计算的效率。更不用说,Attention 注意力机制只关注部分信息,参数较少,容易训练。
有趣的是,谷歌研究人员在这篇重要论文里差点使用了「注意力网络」这样的命名,只是他们觉得这个名字听起来实在不够响亮,后来团队里一位工程师给起了个名字 Transformer,这看起来就高大上很多了。
基于自我注意力机制的 Transformer 模型的出现是革命性的,最最重要的一点,它能实现自我监督学习。所谓自我监督,就是不需要标注的样本,使用标准的语料或者图像,模型就能学习了。
在 Tranformer 出现之前,我们要训练一个深度学习模型,必须使用大规模的标记好的数据集合来训练神经网络。对数据进行标注只能人工进行,金钱和时间成本都相当高。
读者如果还有印象,在笔者上一篇关于 AI 绘画的文章里有讲到,对于 AI 绘画至关重要的跨模态模型 CLIP 之所以成功,是因为它使用了互联网已经带文字标记的图片作为训练数据,巧妙规避了超大规模数据标记的难题。
而回过头来,Transformer 的核心是在数学上计算输入元素之间的关联(Attention),通过这种模式,Tranformer 成功的消除了训练数据集的标注需求!
这简直是感天动地,我们可以想象一下,从今以后,互联网上或者企业数据库里海量的文本数据都能直接成为大模型的训练数据源了。
NVIDIA 创始人兼 CEO 黄仁勋在 2022 NVIDIA GTC 大会上表示说,Transformer 使自我监督学习成为可能,并无需人类标记数据,AI 领域出现了「惊人的进展」。因此,Transformer 正在越来越多的领域中发挥作用。比如用于语言理解的 Google BERT,用于药物发现的 NVIDIA MegaMolBART 以及 DeepMind 的 AlphaFold2 都要追溯到 Transformer 的突破。
上面又提到了 Google BERT 语言模型。这里要插一句,Google 引以为傲的语言大模型 BERT 的架构和 OpenAI GPT 其实非常像,但有一个简单而本质的区别,在训练阶段,Google BERT 输入上文和下文来训练,OpenAI GPT 系列一直坚持只输入上文训练,而结果就是,Google BERT 在体现 AI 分析能力的各种阅读理解等问题上,都表现上佳;而 OpenAIGPT 术业有专攻,在生成式 AI(比如回答各种问题,创造各种文字内容)上一骑绝尘。
不夸张的说,Transformer 是迄今为止发明的最强大的模型之一。斯坦福研究人员在 2021 年 8 月的一篇论文把 tranformer 称之为「基础模型「(Foundation model),认为它推动了 AI 整个范式的转变。
Transformer 技术的应用面|英伟达
05
GPT-3,神功初成
受 Google 论文启发,基于 Transformer 模式的 GPT 系列模型作为 OpenAI 的当红炸子鸡,风头当下无两。
GPT 全称是「Generative Pre-Training」,直译过来就是「生成式的预训练」,有意思吧。
如前文所说,OpenAI 对 GPT 的生成式 AI 有坚定的信念,因此在训练模型的时候,只选用「上文」来训练模型,也就是说,GPT 本质上是一个极致的概率模型,它根据上文提示,来猜测下一个单词应该是什么。
这个坚持虽然在一开始 GPT-1 和 GPT-2 时代让其输出效果稍逊于同期 Google 的语言大模型 BERT,但到了 GPT-3 时期,在超级规模网络参数的加持下,GPT 这个 100% 纯粹的生成式 AI 终于迸发出耀眼的光芒,模型输出效果甚至大幅超越了研究人员的预期。
尽管没有实证,但笔者很倾向认为 GPT-3 的极大成功和 OpenAI 坚定不移的只用上文来训练模型有着某种必然的关系,人的语言沟通也从来都是按顺序表达的,没有谁先把一句话的最后一个词说完才回头考虑上一个词。从这点来看,GPT 系列模型顺应了人类思考的逻辑,最终由量变推动了质变。
终于,借助了 Transformer, GPT 这样的超大规模语言模型(GPT-3 有 1750 亿个参数)在不需要标记数据的情况下,可以借助现成的海量标准数据以及超级算力,得到通用的「预训练」版本模型。
可能有读者会继续问,有了预训练好的模型版本后,GPT 怎么能以适应各种各样的特定任务(或者专业一点,「下游任务」)呢? GPT 论文里给出了简单的改造施工图,附在这里读者们有点直观感性感知即可。总之通过简单的改造操作,GPT 就能很好适应不同的任务。只需要在输入部分调整一下就可以了,非常方便。
补充一句,或许正是因为改造特别方便,OpenAI 的研究人员才能在 GPT-3.5 版之上改造出一个问答专用的 ChatGPT。虽然还不是基于大杀器 GPT4,但 ChatGPT 所展现出的超强内容生成能力,在这几天已经在大众用户群体里刮起了超级旋风。
06
从 GPT-3 到
ChatGPT,进化继续
在历史长河里走了过来,终于回到了本文开头的主角 ChatGPT。
如果读者已经理解了前面关于深度学习神经网络的变迁和发展之路,再来看 ChatGPT 的技术升级,就是特别简单的事情了。
ChatGPT 是基于 GPT-3.5 模型的魔改。GPT-3.5 和 GPT-3 的区别呢,首先是和微软合作,在微软的 Azure AI 云服务器上完成了训练;另一个重要的区别是其训练数据集里除了文字,还加入了代码,因此 ChatGPT 现在已经可以写程序,甚至给现成的代码找 bug 了。
为什么试用过 ChatGPT 的同学都感觉提升很明显? 一个重要的原因是 ChatGPT 引入了一个新的训练方法 RLHF(论文《Training language models to follow instructions with human feedback》发表于 22 年 3 月),简单的说,就是用人类反馈的方式加强训练。
看这个简单的描述显然不能感受到技术的提升,不过我们只需要理解, 这其实就是在 GPT-3 的大数据预训练之下,再次加强了人类的反馈。
有趣的是,前面基于 Transformer 的通用大数据无监督训练模式把自然语言的自动学习做到了某种极致,而这个 RLHF 又重新捡起了「手动档」人类反馈机制,貌似有一点返璞归真的感觉。 仿佛是武功高手练至化境之后,又重新拿起了最早的野球拳,一招使出了无与伦比的超越功力。
ChatGPT 还有一个很重要的特点,就是针对输出有效性上做了非常好的调整。使用过 ChatGPT 的同学一定能感觉到,ChatGPT 并非每一个问题都能回答详尽,但它绝对没有胡说八道,ChatGPT 的回答和真实世界的情况是相当一致的。做到这点很不容易,也是 ChatGPT 和之前容易乱说一气的问答 AI 模型前辈最大的不同。
另一个和确保回答有效性同样值得关注的改进是,ChatGPT 在道德约束上做得很出色。如果我们去询问一些逾越了道德边界的问题,或者一些特别敏感的问题, ChatGPT 基本都能察觉和回避。这让我们想起了 AI 绘画大模型最让人诟病的地方,那就是通过 AI 生成 18 禁图片,尽管这不是一个技术问题,但对于一个智能内容生成平台,我们显然要有方法管理好内容的质量,以及内容的道德边界。在这一点上,ChatGPT 带了一个好头。
ChatGPT 的试用版在 OpenAI 的 RLHF 论文发出半年之后刚刚推出,根据 OpenAI 研究人员自己的说法,内部经过了大量调优,而且即使当下,ChatGPT 还是有很多需要改进的地方。但无论如何,ChatGPT 已经展示给我们所有人,自然语言生成式 AI 所能达到的全新高度。
笔者特别憧憬 GPT4 的 ChatGPT 改版。 如果如传说那般,GPT4 已然突破了图灵测试,笔者对基于 4.0 版本的 ChatGPT 抱有无限的期待。说不定,作者在上一篇文章里预言的,AI 大模型来写长篇玄幻小说的时代,马上就要来临了。
07
后记
如果能耐着性子读到这里,读者应该自然语言的生成式 AI 的前世今生有了一点概念。
回过头来再问一次,对于「预训练」这个深度模型里的重要概念。读者有没有想过,预训练到底是什么?
对,具体而言,预训练就是在几千亿参数的支持下,类似 GPT 这样的超级模型灌入了难以计量的文本训练数据(说不定已经把全世界可以搜刮到的文本都拿来用了)来训练得到了一个通用大语言模型。
不过,在更高的一个角度去畅想,当我们把全世界的文字信息直接灌进拥有数千亿参数的 AI 模型里,模型在网络的各个层级上抽取和记忆这些文字里的特征信息。那么,GPT 这样的超级模型实际上就在通过所谓预训练方式,学习到了人类所有文字信息的全部特征,直接把人类的语言智慧记在了自己几千亿量级的神经网络大脑里。
做到了这种程度,真的就像是我们用人类的全部知识体系来培养出了一个超级强大的机器大脑,这个大脑通过它超大规模的人工神经网络规模接纳学习了人类创造的所有内容。进而,针对人类的任意问题,AI 可以做出连图灵测试都无法区分的真正智能回答。
人类已经马上无法分辨,在小黑屋后面,那究竟是一个人还是一个 AI 了。
这一天来得比想象更快。
一个能容纳和理解人类全部文字知识,并做出真正智能回答的 AI,我们是不是可以简单认为:
今天,真正的机器智能,已然诞生。
*头图来源:OpenAI
极客一问
你如何看待 ChatGPT?
更多创新大会详情
请点击文末「阅读原文」
↓↓↓
微信扫码关注该文公众号作者