热门搜索:和平精英 原神 街篮2 

您的位置:首页 > > 教程攻略 > ai资讯 >大白话!解析大模型原理!

大白话!解析大模型原理!

来源:互联网 更新时间:2026-08-18 13:58

要说LLM(大语言模型)的工作原理,对大多数人来说确实像个黑箱。虽然核心机制说白了就是“预测下一个词”,并且需要海量文本去训练,但具体怎么个预测法、内部到底在捣鼓什么,往往让人一头雾水。问题的关键就在于,这些系统的开发方式很特别——它们是基于几十亿词汇训练出来的神经网络,而不是传统程序员一行行敲出来的软件。到目前为止,还没人能完全搞清楚它的内部机制,不过研究人员一直在努力挖掘。

大白话!解析大模型原理!

所以,咱们今天就来聊聊,怎么不用数学公式、不说技术术语,把大模型的工作原理讲透彻。从词向量开始,到Transformer架构、训练方式,再到为什么需要那么多数据才能有好的表现——逐个掰开揉碎了说。

一、词向量

要理解语言模型的工作原理,首先得知道它怎么表示单词。咱们人类用字母序列表示单词,比如“cat”就是C-A-T。语言模型则不同,它用一串长长的实数向量来表示,比如“cat”可能长这样:[0.0074, 0.0030, -0.0105, ..., 0.0002]。

为什么要用这么复杂的表示法?打个比方。华盛顿特区在北纬38.9度、西经77度,我们用向量表示它:

  • Washington DC

    是 [38.9, 77]

  • New York

    是 [40.7, 74]

  • London

    是 [51.5, 0.1]

  • Paris

    是 [48.9, -2.4]

空间推理对判断地方之间的距离非常关键。你看,38.9和40.7很接近,77和74也接近,说明纽约和华盛顿特区离得近;巴黎和伦敦也相近,但和华盛顿特区就隔远了。

语言模型用的也是这个思路。它把每个词向量当成“词空间”里的一个点,含义相近的词在空间里靠得更近。比如“cat”的近邻可能就是“dog”“kitten”“pet”。用实数向量而不是字母序列,就能做一些字母做不到的事——比如计算两个词的距离。

因为单词的复杂性,语言模型使用的向量空间有几百甚至几千个维度。人类很难想象高维空间,但计算机可以推理,还能得出有用的结果。

词向量的概念从20世纪70年代就有了,但真正火起来是2013年谷歌的word2vec项目。谷歌分析了数百万份Google新闻文档,让模型学习预测哪些词会一起出现,把相似的词拉近。它有个很有意思的特性:可以用向量算术做推理。比如“biggest”的向量减去“big”加上“small”,结果差不多等于“smallest”。

用向量算术可以做个类比:big对应biggest,small对应smallest。谷歌的词向量捕捉到了很多关系,比如国籍、首都、反义词、复数、性别角色等等。

这些向量是根据人类使用单词的方式构建的,所以也反映了语言里的偏见——比如“doctor - man + woman”会得到“nurse”。减轻这种偏见也是研究者努力的方向。不管怎么说,词向量对语言模型来说是很有用的积木,因为它编入了单词之间各种微妙的关系。一旦模型学会了关于猫的一些东西,就能顺带推及到小狗、小猫;学会了巴黎和法国的关系,那柏林和德国、罗马和意大利很可能也有同样的关系。

词义取决于上下文

单纯的词向量方案没办法完全应对自然语言的多义性。比如“bank”既可以是金融机构也可以是河岸;“杂志”在“John picks up a magazine”和“Susan works for a magazine”里的含义也不一样。这就是多义词或同音异义词的问题。ChatGPT这类语言模型能做到什么呢?它可以根据上下文用不同的向量表示同一个单词。对于“bank”和“杂志”,模型会产生不同的向量,来区分不同的含义。这种动态调整的表示能力,对理解语言模型的工作方式至关重要。

传统软件处理的是明确数据,但自然语言充满了歧义。比如“the customer asked the mechanic to fix his car”里的“his”,或者“the professor urged the student to do her homework”里的“her”,还有“fruit flies like a banana”里的“flies”。人类依靠上下文来消除歧义,但这事儿没有固定的规则。词向量给了语言模型一种灵活的方式,去表达单词在特定上下文里的精确含义。接下来我们就看看它们是怎么做到的。

二、将词向量转化为词语预测

GPT-3(ChatGPT原始版本背后的模型)由几十个层组成。每个层的输入是一系列向量——输入文本里每个单词对应一个向量,然后模型给这些向量添加信息来澄清单词的含义,以便更好地预测接下来可能出现的单词。

先从一个简化的例子说起。

LLM的每一层都是一个transformer,这是2017年谷歌提出的神经网络架构。模型的输入是一段话的部分内容,单词被表示成word2vec风格的向量,输入到第一个transformer中。Transformer能推断出每个词的词性,生成新的向量(称为隐藏状态),再传给下一个transformer。后面的层会对整个段落做更高层次的理解。

实际上,LLM的层数远不止两层——GPT-3就有96层。前几层主要关注句子的语法和消除歧义,后面的层则专注于对整个段落做高层次的抽象理解。比如当LLM“读取”一个短篇小说时,它会跟踪性别、年龄、关系、位置、个性、目标这些信息。

研究人员现在还没完全搞懂LLM到底是怎么跟踪这些信息的,但模型是通过在层间传递时修改隐藏状态向量来实现的。现代LLM用的词向量非常大——GPT-3用的是12,288维的向量。这些额外的维度相当于给模型提供了“临时空间”,用来记录每个单词的上下文信息。后面的层可以读取和修改前面层做的记录,这样模型就能逐渐加深对整个段落的理解。

96层的LLM最终要输出最后一个词的隐藏状态,这个状态需要包含所有必要的信息,用来预测下一个词。模型就是这么通过多层transformer,一步步实现对句子和段落的深层次理解。

三、Transformer的注意力机制

接下来咱们聚焦Transformer内部是怎么工作的。Transformer通过两步来更新输入段落里每个单词的隐藏状态:

  1. 注意力步骤

    :单词会寻找跟自己上下文有关的其他单词,并且互相共享信息。

  2. 前馈步骤

    :单词仔细思考注意力步骤里收集到的信息,然后尝试预测下一个单词。

实际执行这些步骤的是网络,不是单词本身。但这种以单词为基本单位的分析方式,可以充分利用现代GPU的大规模并行处理能力,让语言模型能处理几千个单词的段落,突破了以前模型的限制。

注意力机制有点像单词之间的“媒婆服务”。每个单词会创建一个查询向量,描述它想找什么样的单词,还会创建一个键向量,描述自己的特征。网络通过比较查询向量和键向量,找到最佳匹配的单词,然后把信息传过去。

举个例子,假设Transformer推断出“his”指的是“John”。那么“his”的查询向量可能表示“我正在找一个描述男性的名词”,而“John”的键向量表示“我是描述男性的名词”。网络检测到匹配后,就把John的信息转移到“his”的向量里。

每个注意力层里都有多个注意力头,每个头关注不同的任务——有的负责代词和名词匹配,有的负责解析多义词,有的负责短语链接。这些头是串行工作的,每层的结果会成为下一层的输入。GPT-3有96层,每层96个注意力头,每次预测要执行9216次注意力操作。

四、一个完整的案例

了解了注意力头怎么工作,再来看看真实语言模型内部到底在发生什么。去年,Redwood Research的研究人员研究了一下GPT-2(ChatGPT的前身)是怎么预测下一个单词的。他们用了这个句子:“When Mary and John went to the store, John ga ve a drink to.”

研究发现,GPT-2用了三种注意力头来预测下一个词是“Mary”。第一种叫“Name Mover Heads”(名字移动头),负责从Mary的向量里把信息复制到最终的输入向量里;第二种叫“Subject Inhibition Heads”(主体抑制头),通过标记第二个John的向量,阻止“Name Mover Heads”去复制John的信息;第三种叫“Duplicate Token Heads”(重复令牌头),把第二个John标记为第一个John的重复,帮助“Subject Inhibition Heads”做决策。

这九个注意力头让GPT-2推断出“John ga ve a drink to John”是没意义的,所以选择了“John ga ve a drink to Mary”。这个例子很好地说明了理解语言模型有多难。Redwood团队的论文详细解释了他们怎么识别和验证这些注意力头,但即便如此,我们仍然没能全面解释GPT-2为什么选了Mary。比如模型怎么知道下一个词应该是人名而不是其他类型的词?换一个类似的句子,Mary可能就不是个好的预测了。科学家们还在努力揭示GPT-2推理过程的其他步骤。要全面理解GPT-2的决策,可能要花好几个月甚至好几年。

ChatGPT背后的GPT-3.5和GPT-4更大更复杂。所以,要完全解释这些系统的工作原理,恐怕是一项短期内不可能完成的任务。

五、前馈步骤(模型推理的过程)

注意力头之间传递完信息之后,还有一个前馈网络登场——它负责独立思考每个词向量,并尝试预测下一个单词。在这个阶段,词与词之间不再交流信息:前馈层单独分析每个单词。不过前馈层能访问注意力头之前复制进来的所有信息。下面是一个GPT-3最大版本里前馈层的结构示意图。

图中的绿色和紫色圆圈代表神经元,它们通过计算输入的加权和来做数学运算。前馈层的强大之处就在于它庞大的连接数。GPT-3的前馈层规模非常夸张:输出层有12,288个神经元,隐藏层有49,152个神经元。每个前馈层大约有12亿个权重参数,总共96个前馈层加起来,总参数达到1160亿——占了GPT-3总参数的三分之二。

前馈层是通过模式匹配来工作的:每个神经元会匹配输入文本里的特定模式。层数越高,模式就越抽象。早期的层匹配具体的单词,后面的层则匹配更广泛的语义类别,比如电视节目或者时间间隔。这点很有意思:前馈层一次只检查一个单词,但因为它能借助上下文信息把相关含义移入向量,所以能判断出单词是否跟某个类别相关。

当神经元匹配到某个模式时,它会往词向量里添加信息,这些信息可以被理解成对下一个单词的初步预测。布朗大学的研究揭示了前馈层是怎么用向量运算来做推理、预测下一个单词的。他们发现GPT-2在前几层之后就开始预测下一个单词了,而到了更高的层,预测变得越来越准确。比如他们发现,通过往模型里加一个向量,第20个前馈层能把“波兰”转换成“华沙”,“中国”转换成“北京”。同时,这一层也能把小写单词转换成大写,把现在时转换成过去时。

注意力层和前馈层在GPT-2里各有分工:注意力层基于提示来做预测,而前馈层则依赖训练数据里的信息。如果禁用前馈层,模型就没法预测出“华沙”;但只要加上“波兰的首都是华沙”这句提示,GPT-2又能回答了。这说明注意力层是从提示里检索信息,而前馈层提供的是训练数据里的信息。所以可以把前馈层看作模型的数据库——早期层编码简单的事实,比如“特朗普和唐纳德经常一起出现”;后面的层则编码更复杂的关系,比如国家和首都之间的转换。

六、语言模型是如何训练的(模型训练的过程)

早期的机器学习算法需要人工标注的训练数据,这极大限制了模型的规模和训练成本。语言模型的一个创新之处在于,它可以利用未标注的文本数据进行学习。这就意味着模型可以从海量的书面材料中学习——比如维基百科页面、新闻文章、计算机代码,应有尽有。

语言模型通过学习预测下一个单词来进步。刚开始,模型的表现会非常差,因为它的权重参数都是随机设置的。但随着模型接触到越来越多的示例,这些权重参数会慢慢调整,让预测越来越准。这个过程有点像调节水龙头的水温——来回转动阀门,直到找到合适的温度。在语言模型里,这个操作要复杂得多,因为它需要调整几百亿个“阀门”(权重参数),来控制信息在神经网络中的流动。

别看概念听起来很复杂,实际上由于计算机性能不断提高,这种规模的计算在现实中是可行的。语言模型的所有部件——前馈层的神经元和注意力头——都被实现成简单的数学函数,行为由权重参数决定。训练算法通过增大或减小这些权重,来控制信息在神经网络中的流向。

训练过程分两步:前向传递和反向传递。前向传递时,模型检查自己的预测是不是准的;然后反向传递时,模型调整权重参数来改进下一次预测。这个过程需要海量的数学运算。训练像GPT-3这样的大模型,需要几十亿次的前向和反向传递。尽管计算量惊人,但得益于计算机性能的提升,这种训练在几个月内就能完成。

七、GPT-3的惊人表现

你可能会觉得好奇:ChatGPT居然能写论文、做类比推理、甚至编写计算机代码,这么复杂的事情它都能干。那为什么一个“预测下一个词”的简单学习机制,能产生这么强大的模型呢?

其中一个关键原因就是规模。像GPT-3这样的模型,接触到的例子数量是极其庞大的——它在大概5000亿个单词的语料库上训练过。作为对比,一个10岁的孩子大约只接触过1亿个单词。

过去五年里,OpenAI逐步扩大了语言模型的规模。2020年的一篇论文报告说,模型的准确率跟模型规模、数据集规模和训练计算量之间存在一种幂律关系,而且这个趋势跨越了七个数量级以上。

随着模型规模变大,它在语言任务上的表现也越来越好。但有一个前提:训练数据量也需要相应地增加,这意味着需要更多的计算能力。

OpenAI从2018年的GPT-1开始,一步步增加规模。GPT-1有1.17亿个参数,GPT-2的最大版本有15亿个参数,2020年的GPT-3更是达到了1750亿。今年发布的GPT-4,虽然具体细节还没公开,但普遍认为它的规模远超GPT-3。

这种规模上的跃进,让ChatGPT等语言模型在各种任务上展现出强大的能力。每个模型不仅学到了比前代更多的事实,而且在需要某种抽象推理的任务上表现也更好了。举个例子:

这是一个装满爆米花的袋子。袋子里没有巧克力。然而,袋子上的标签却写着“巧克力”而不是“爆米花”。Sam找到了这个袋子。她以前从未见过这个袋子。她无法看到袋子里面的东西。她读了标签。

Sam会相信袋子里有巧克力,等她发现是爆米花时会大吃一惊。这种能力叫“心智理论”,人类从小就有,但对非人类动物来说一直有争议。今年,斯坦福大学研究了大型语言模型在心智理论方面的表现。GPT-1和GPT-2都失败了,但GPT-3的准确率大约40%,跟三岁小孩差不多。最新版的GPT-3准确率提高到了90%,跟七岁小孩相当,而GPT-4更是达到了95%的准确率。

研究人员Kosinski认为,没有证据表明心智理论能力是被特意设计进模型里的,科学家也不知道怎么实现这种能力。它很可能是随着模型语言能力的增强而自然“涌现”出来的。不过,并不是所有研究者都认同这个观点,有人认为GPT-3在某些任务上的表现可能受到了混淆效应的影响。尽管有争议,但GPT-3在一些衡量心智理论的任务上展现出了接近人类的能力,这跟大型模型在高级推理任务上表现更佳的整体趋势是吻合的。

GPT-4也展现了类似人类的复杂思考方式。比如有人让它用TiKZ图形编程语言画一只独角兽——结果虽然有点粗糙,但你能看出来它确实理解了独角兽长什么样。

研究人员猜测GPT-4可能是从训练数据里记住了画独角兽的代码,所以他们又出了一个后续挑战:他们修改了独角兽的代码,把犄角移除,还移动了其他一些身体部位,然后让GPT-4把犄角放回去。结果GPT-4把犄角放在了正确的位置上。

注意,GPT-4的训练数据里并不包含图像,它纯粹从文本中推理出了独角兽的身体形状。这件事又引发了一场哲学辩论——模型到底是不是真的理解了单词的含义?这个辩论很深奥,但我们更应该关注的是模型的实际表现。如果模型能在特定问题上给出正确答案,而且已经排除了混淆因素,那么不管它理解方式跟人类一不一样,这本身就是一个有趣且重要的结果。

语言模型选择“预测下一个词”这个任务,原因之一是语言本身具有可预测性。语言中的规律往往跟物理世界中的规律相关,因此模型在学习单词之间关系的同时,也在学习世界之间的关系。预测是生物智能和人工智能的基础——要做出好的预测,就需要好的表示方式。

传统上,语言模型的挑战在于如何最佳地表示词语,尤其是词语含义会随着上下文变化。而“预测下一个词”这种方法让研究人员绕开了这个难题——只要提供足够的数据和计算能力,模型最终能学到很多关于人类语言如何工作的知识。不过,这些系统内部的完整工作机制,我们至今仍未完全理解。

关于宇宙的好的网名有哪些
关于宇宙的好的网名有哪些

类型:角色扮演

大小:1

语言:简体中文

平台:互联网

游戏下载

热门手游

手机号码测吉凶
本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件haolingcc@hotmail.com 联系删除。 版权所有 Copyright@2012-2013 haoling.cc