小白也能读懂,简述大模型Transformer架构

Transformer架构解读



对于

如果你是做大模型领域的,哪怕是2023年才开始进入AI赛道,Transformer架构可以说是必修课,因为现在几乎所有的大模型如ChatGPT都是基于Transformer架构的。而Transformer架构也比较复杂,尤其算法部分,所以在此并不会过度解读,只会用通俗易懂的说法解读核心的部分。


Transformer起源

Transformer是谷歌在2017年发表的一篇论文,它的出现为自然语言处理(NLP)提供了一种全新的范式,尤其是其核心自注意力机制,提供了一种更加高效、更加强大的方法来处理序列数据。Transformer的架构图如下所示,并且我给标上了序号,方便后面讲解:


Transformer架构解读

1、Inputs:输入的内容。这个就是用于我们用于交互的输入,比如输入一段文字:中国春节大家都吃什么?


2、输入预处理部分:这里包含两部分,Inputs Embedding (把文字转码成用512个数字去表示)和 Positional Encoding(标记文字的位置,这里为什么要标记位置呢,因为同样的字,比如我爱你和你爱我,位置不同,表示的含义不同,所以需要对输入的每一个文字,进行位置的标记)。整体总结:这一步所做的事是将输入的文字转换为用数字表示,并标记位置。这里我们将这一步称之为Q矩阵。


3、大模型:第三部分就是我们传统意义上的说的大模型部分了,这部分最为复杂,包括左边的编码器和右边的解码器,里面还有各种组件,其中最重要的就是之前提到的自注意力机制。下面,我们换个角度来解读大模型部分。


大模型的组成:模型= 公式 + 参数(系数),比如一个数学公式,z=2x+7y,其中的2和7就是参数,而x和y是你输入的内容,z就是要计算后输出的结果。比如ChatGPT-3.5有1750亿个参数就是指的这个,现在GPT-4已经有万亿参数了。


大模型参数:大模型在没开始训练前,每个参数都是随机数,训练完成后,每个参数都是一个固定的数字。大模型训练后,当你把第二部分Q矩阵传入进去,跟着参数(比如ChatGPT3.5的1750亿个参数)做计算,最后就产生输出了。因为现在大家大模型底层都是Transformer架构,大家公式都差不多,最后评估一个大模型靠不靠谱,主要还是看参数。而机器学习训练大模型的过程,本质上就是让参数越来越靠谱的过程。


自注意力机制:大模型里面最重要的一个是自注意力机制,也就是我们说的大模型具备自我学习的能力,就是指这个机制。这个机制背后的核心是神经网络,简单理解就是模拟人脑的思维。我们训练前,准备大量靠谱的数据(比如大量的文字语言库、wiki百科等),让其自己去学习,构建自己的知识库


4、Output Probabilities:经过大模型计算后输出的部分,这里只会输出一个文字,并不会输出全部,所以我们看ChatGPT的输出是一个字一个字往外蹦,就是因为这个原因。


5、Outputs(shifted right)存储第四步的输出结果,然后会作为下一次大模型计算的输入(依然会进行和第二步一摸一样的两步处理,转数字和标记位置),整体是一个递归的过程


针对第4步和第5步,举个例子,比如第四步输出了一个“中”,然后存储到第五步中,第五步会带着“中”这个字继续进入到大模型中进行计算,计算后第四步会输出一个“国”字,然后继续存储到第五步,此时第五步里面存储了“中国”,第五步下次会带着“中国”作为输入,继续让大模型进行计算。。。如此循环往复,是一个递归的过程。


以上,我们针对大模型的Transformer架构做了一个简单的解读。


--------


Transformer架构的出现,为处理自然语言提供了一种全新的范式,它的设计彻底摆脱了对循环结构的依赖,为现在ChatGPT、文心一言等大模型的出现奠定了基础,可谓意义重大。这些模型利用了Transformer的高效并行处理能力和强大的表示能力,通过在大规模数据集上进行预训练,能够捕获丰富的语言知识,并在多种NLP任务上实现了前所未有的性能。


不过可惜的是,Transformer架构虽然是由谷歌提出的,但是其自身可能还持有怀疑,并未在上面投入过多精力,反而ChatGPT将其发扬光大,开启了人工智能新时代的到来。并且出乎谷歌意料之外的是,它自己都没想到,Transformer架构所表现出来的能力,比其预想的要强大多,可以处理多模态,而谷歌最早提出只是针对NLP领域。

(正文完)

更多精彩内容,欢迎扫码加入免费知识星球
极客e家

共同打造极客文化


请使用浏览器的分享功能分享到微信等