「ChatGPT」爆火背后的大语言模型到底是什么?

您所在的位置:网站首页 dxomark什么意思 「ChatGPT」爆火背后的大语言模型到底是什么?

「ChatGPT」爆火背后的大语言模型到底是什么?

#「ChatGPT」爆火背后的大语言模型到底是什么?| 来源: 网络整理| 查看: 265

在比较古老的时候,我们是用纯统计的方法进行建模的。统计方法直接构建词汇表,然后使用统计方法预测词频等,来理解一段文字。这种方法将一个个单词本身当成操作的对象(hard-token),没法理解单词的任何含义。(统计学时代)

后来,有语言学家提出,可以用一个词语的关联词来解释这个词语。例如星巴克往往与咖啡馆、餐厅相连,于是星巴克的意思可能与一个地点接近。这种想法引出了WordNet。但是WordNet依然将词汇理解成一个hard token,即使能理解一部分词汇的含义,但是没法在不同句子中显示不同的含义,也就是没有根据上下文理解一词多义的能力。而且语义网的搜索实在是太慢了,因为搜索空间是离散的。(语义网时代)

为了加快运算,学者提出可以使用一些数字的方法来表示计算机内不同的文本名词,这就引出了word embedding,就是把每一个词(hard token)转换成一个数字(soft token)再存储在计算机内,通过对数字的加减乘除,来完成计算机的各种处理。具体完成数字化的模型主要是Word2Vec。由于数字是连续的,存储压力大大下降,语义的表示也更佳精准。这大大提升了运算效率,使得批量计算和深度理解成为可能。embedding的提出是大语言模型的巨大里程碑,但是Word2Vec依然是静态的,没法理解一词多义。(embedding时代 或。数字化时代)

为了解决一次多义的问题,学者提出根据每个句子的语境分别训练embedding,于是有了ELMo。有了连续的数值表示,各种深度学习方法都变得可行。ELMo借鉴了CV里一个叫做微调(fintune)的深度学习方法,在用Word2Vec获得了每个词的数字embedding之后,再在具体的语境下对这个数字做一个小小的调整,来获得一词多义的能力。ELMo是所有后续大模型发展的基础,但是脑容量还是太小了,一词多义清情况下,词的语义并不够完整。(一词多义时代)

为了提高模型的容量,学者开始想方设法换掉ELMo的容积,于是去Seq2seq界取经,找到了脑容量大又可以并行计算的Transformer,用Transformer(差不多一个大脑的大小)换掉了ELMo的two side-LSTM(差不多一个细胞组织的大小),于是诞生了GPT和BERT。这两个模型都是基于Transformer的,但GPT是单向Transformer,更适合生成;BERT是双向Transformer,更适合理解。GPT,就是ChatGPT的最早祖先。这两个模型都先在很大的语料库上预训练,然后在特定的任务上微调,其实和一词多义时代的Word2Vec+ELMo的思路并没有太大不同。这也导致了这个阶段,模型依然依赖于特定的任务,没法成为通才。(BERT时代)

为了提高模型的泛化能力,学界提出了纯预训练不微调范式。这个范式的基础是单向Transformer,因为双向Transformer基于有标签数据才效果好,而单向Transformer不需要人工打标签就能参数有效地学习,所以BERT没法做的很大,但GPT可以,所以提出了GPT-2,只预训练,不微调。GPT-2的提出是OpenAI对于GPT的一个探索,如果效果好,说明可以继续做大。结果证明,GPT-2可以在各种任务上都达到非常好的性能,拥有极强的泛化能力。然而,在特定的任务上,依旧是BERT比较占优势。(GPT-2时代)

OpenAI发现GPT-2效果不错后,开始All in GPT-3,这是一个挺有希望的leap of faith。GPT-3就是GPT-2继续往上叠,原理上很简单,这也是为什么Yann LeCun说GPT-3缺乏创新。ChatGPT就是GPT-3再经过高质量数据的微调,相当于回到了一词多义时代的训练范式,却展现出了非常强的效果,大幅领先于GPT-3,这也是让很多学者反对ChatGPT的原因。换句话说,ChatGPT和GPT-3的创新并不是深度学习的创新,而是数据的创新。

下面细致聊一下GPT-2/3/Chat(LLM)的原理。

大语言模型的语言生成的原理叫做自回归模型,是统计上一种处理时间序列的方法。例如现在有一个句子:“我早上去了星巴克”,将其拆分为“我”、“早上”、“去了”、“星巴克”这四个词(我们叫做 token)。大语言模型是这样去学习的:第一个单词是,输入到模型中。经过了一个Transformer模块后,它输出希望被训练成第一个字,也就是“我”。

在第二个位置,它的输入是“我”,它的输出是“早上”,第三个位置输入是“早上”,输出是“去了”,这样不断地一轮一轮迭代,每个细胞能够根据我现在的这个单词,去预测下一个单词。最后这个模型就能够学到,“我早上去了星巴克”的下一句话应该是“星巴克里的咖啡很好喝”,它认为生成“星巴克里的咖啡很好喝”比“我明天要去乘飞机”这样一句话合理得多。

自回归模型的关键是根据你前面已经出现过的内容,来推测它的下一个字,下一句话应该是怎样生成的,在这样不断的迭代过程中,它就能学会如何去生成一句话、一个段落,以及一篇文章。

总的来说,LLMs可以理解为成规模的语言模型。从历史的角度来看,前面说的BERT和GPT并没有达到足够大的规模。直到GPT-2、GPT-3出现了,它们才达到了较大的量级。大家发现语言模型爆炸式增长,从一个细胞长成一个脑子,这种程度上的增长才带来了LLMs。所以我们一般理解LLMs,这个语言模型规模大到了至少到GPT-1或2阶段,它的参数量能够突破1亿或者10亿阶段才能称之为大模型。

至于它是怎么诞生的,回归到前面的问题,一开始是纯统计阶段,后面变成数字化阶段,第三个就是在不同任务上,对它进行分类提升,第四个阶段就是保证基本在所有的任务上都能达到不错的结果。

前期的技术积累可以分为这几点,第一个是数字化,把文字变成了数字。第二个积累是整个深度学习界都在用的方法,就是微调法,在不同的任务上,都让它变得很好。第三个是不再对任务进行划分,让它兼顾全局,在所有任务上都能获得很好的结果。

相较于语言模型BERT来说,GPT有很大的优势,它是不需要进行数据微调的,也就是说,它能够在很多的任务上,直接就表现出非常强的性能。GPT能够纯无监督学习,它可以把全世界的高质量的数据都从互联网上扒下来,做成它的数据集,从而把数据量做得非常大,保证数据的充分性。它的参数量很大的时候,就把这些数据都给记到脑子里,相当于你拥有一个超强大脑之后,还拥有读不完的书,这样就能不断的获取知识。我觉得这是GPT成功的一大前提。

还有一个是关于ChatGPT为什么能成功,它的数据和传统GPT相比又有一个差距。ChatGPT的本质是在无监督的数据上面加了一层有监督数据,本身的无监督,它是随便地看书,读万卷书行万里路。在这个基础上,再让它考试,让它做题,再让它做有监督的学习。在完成学习后,它比原来的GPT能更好地学到数据里面的知识,它的水平就得到了进一步提升。

那么我们再来聊聊自然文本语言模型与AI领域的其它类型(如绘画、影像)的型有什么不同呢?首先文本是一个一维的,就是从,没有的关系的。绘画是二维的,是有上下关系的,所以相比文本会偏难一点。而影像,比如我们看的视频,其实就是将一张一张的图片拼接起来,在二维的维度上又拼了一维,变成了一个三维的问题。

第二个区别,文本和影像是序列化的,跟时间有关,比如我想要说出星巴克,我一定是跟在去吃的东西的后面,是跟时间有关的,但是在像素层面上,比如绘画,是跟时间没关系的。

第三个不同,它们的方法不同,文本会用序列模型,比如用RNN模型这种多一点。绘画是用并行的模型,比如一个细胞要考虑上下左右,这几个东西一起用,就是CNN,它会用不同模型。

接下来,我们再引入一个In Context Learning的概念。假设一个场景:你的孩子已经培养出来了,大脑内的信息已经确定了。现在他正坐在你面前,你告诉它一段话,需要让他回答某一个问题。这时,In Context Learning就出现了。

你有两种方法跟它说,第一种你给它火星的半径,然后直接问它火星的周长是多少,它可能会因知识储备不够而答不出来。第二种是给它举个例子,比如告诉它地球的周长、太阳的周长,和它们的半径,再告诉它火星的半径是多少,这样它就能推出这个周长。相当于In Context Learning就是告诉它两个例子,让它去推出最终的结果。如今的ChatGPT也拥有这样的技术。

虽然如今的ChatGPT拥有这样的技术,但它是不能做数学题的,也就是没有推理能力。有一个很火的概念叫做CoT,就是思维链。即运用了生成模型的一个从前往后生成带来的“推理”能力。我们刚才一直在说,它是通过前一个词推后一个词,如果它前一个词是对的,后一个词对的可能性更大。但如果直接让它算132+167,它就没办法推出来,因为它没见过这个题。如果告诉我给它一个例子,现在你来一步一步推断。告诉它100之内的相加应该先加个位数,超过10了就进位,把这些规则告诉它,它就推出来了。它一步一步推,前面推是对的,最后再推那个答案,就更加轻松,这就是我们说的思维链。这个词的概率就是前面所有词概率的一个叠加,前面的词都是对的,这个词正确的概率就更大。

它的推理能力很局限,因为它没办法把中间推理的过程隐藏掉,直接得出最终的结果。怎样隐藏推理过程也是现在学界研究的一个热点。比如想要得到99+99=198这个结果,这个模型其实是很难实现的。它只具备很初级的推理能力,或者它没有本质上的推理能力,只能靠概率一步一步往后叠,最后的结果正确的概率才会高。

最后,ChatGPT可能拥有人类的价值观吗?这个问题可以从两个方向来解答,一个是它如何学习,一个是人类如何引导它。还是刚才那样一个比喻,先要看这个孩子是不是已经读完了这本书:如果没有读完,就在他将要读的书里面加入人类的价值观;如果它已经读完了这本书,你就需要告诉它在做这个任务的时候,要符合人类的价值观。

本回答整理自我前几天的直播实录:

知乎日报:知聊八点半特别版「AIGC 观察」直播实录 | ChatGPT 已经做到读万卷书,行万里路



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3