目录



, ,

大型语言模型

<markdown>

大型语言模型与聊天机器人的工作原理解析

先想象这样一种场景:你偶然发现一份简短的电影剧本,内容是关于一个人与他的人工智能助手之间的对话场景。剧本里写了人对人工智能的提问,但人工智能的回应部分被撕掉了。

假设你还拥有一台强大的“魔法机器”,这台机器能接收任何文本,并对接下来会出现的单词做出合理预测。那么,你就可以用这台机器来补全剧本——先把已有的内容输入机器,看看它会预测人工智能回应的开头单词是什么,然后重复这个过程,随着剧本内容不断丰富,逐步补全整段对话。

当你与聊天机器人互动时,实际发生的事情正是如此。大型语言模型本质上是一种复杂的数学函数,它能对任何文本的下一个单词做出预测。不过,它并不会确定地预测某个单词,而是会为所有可能出现的下一个单词分配相应的概率。

要构建一个聊天机器人,首先需要生成一段文本,描述用户与假设中的人工智能助手之间的互动场景,然后将用户输入的内容作为互动的第一部分添加进去,接着让模型反复预测这个假设中的人工智能助手会给出的下一个回应单词,最终将这些预测结果呈现给用户。

在这个过程中,如果允许模型随机选择一些可能性较低的单词,生成的输出内容会显得更自然。这就意味着,即便模型本身具有确定性,但对于同一个提示词,每次运行后得到的答案通常都是不同的。

大型语言模型的训练过程

大型语言模型通过处理海量文本来学习如何做出预测,这些文本通常来源于互联网。以GPT-3为例,若一个普通人要读完用于训练它的所有文本,即便每天24小时不间断阅读,也需要超过2600年。而此后更大型的模型,其训练所用的文本量还要多得多。

可以把模型训练想象成“调节一台大型机器上的旋钮”。语言模型的运行方式,完全由许多不同的连续数值决定,这些数值通常被称为参数或权重。改变这些参数,模型对给定输入文本的下一个单词所分配的概率就会随之改变。

大型语言模型之所以被称为“大型”,关键在于它们可能拥有数千亿个这样的参数。不过,这些参数并非由人类刻意设定,而是从随机值开始——这意味着模型最初输出的内容会是杂乱无章的,但会根据大量文本示例被反复优化。

这些训练示例,既可能是几个单词的短文本,也可能是包含数千个单词的长文本。无论示例长度如何,训练的核心方式都是:将示例文本中除最后一个单词外的所有内容输入模型,然后将模型的预测结果与示例文本中真正的最后一个单词进行对比。

之后,会使用一种名为反向传播的算法来调整所有参数,调整的目的是让模型更有可能选择那个真正的最后一个单词,同时降低选择其他单词的概率。当对数万亿个示例都进行这样的训练后,模型不仅能在训练数据上做出更准确的预测,还能对从未见过的文本做出更合理的预测。

考虑到模型拥有庞大的参数数量和海量的训练数据,训练大型语言模型所需的计算规模令人难以置信。举个例子,假设你每秒能完成10亿次加法和乘法运算,那么要完成训练最大型语言模型所需的所有运算,你觉得需要多久?一年?或许一万年?答案远比这更久,实际上需要超过1亿年。

训练的补充环节:预训练与人类反馈强化学习

不过,上述内容只是训练过程的一部分,这个过程被称为预训练。需要注意的是,补全互联网上随机一段文本的目标,与成为一个优秀的人工智能助手的目标截然不同。

为了解决这个问题,聊天机器人还会经历另一种同样重要的训练——人类反馈强化学习。工作人员会标记出那些无用或有问题的预测结果,然后根据他们的修正进一步调整模型参数,让模型更有可能给出用户偏好的预测结果。

回到预训练环节,这种惊人的计算量之所以能够实现,得益于专门的计算机芯片——图形处理器(GPU),这类芯片经过优化,能够并行运行大量运算。但并非所有语言模型都能轻松实现并行计算。

在2017年之前,大多数语言模型都是逐词处理文本的。后来,谷歌的一组研究人员推出了一种名为“Transformer(转换器)”的新型模型。与传统模型不同,Transformer不会从头到尾逐词读取文本,而是能一次性并行“吸收”所有文本内容。

Transformer模型的核心工作机制

无论是Transformer,还是大多数其他语言模型,其内部工作的第一步都是为每个单词关联一个长长的数字列表。这样做的原因是,训练过程只能处理连续数值,因此必须通过数字对语言进行编码,而每个数字列表都可能以某种方式编码了对应单词的含义。

Transformer的独特之处在于它对一种名为“注意力(Attention)”的特殊运算的依赖。这种运算能让所有数字列表之间相互“交流”,并根据上下文优化它们所编码的含义,而且所有这些过程都是并行完成的。

比如,编码“bank”这个单词的数字列表,会根据其周围的上下文被调整,从而能以某种方式编码“河岸(riverbank)”这种更具体的含义。

通常情况下,Transformer还会包含另一种运算——前馈神经网络。这种运算能为模型提供额外的“容量”,使其能够存储更多在训练过程中习得的语言模式。

所有数据会反复流经这两种基础运算的多个不同迭代过程。在这个过程中,人们期望每个数字列表都能得到优化,从而编码出预测文本下一个单词所需的全部信息。

最终,会对这个序列中的最后一个向量执行一次最终运算。此时,这个向量已经受到了输入文本中所有其他上下文信息以及模型在训练过程中学到的所有知识的影响,通过这次运算,就能生成对下一个单词的预测结果。同样,模型的预测结果会以概率的形式呈现,涵盖所有可能出现的下一个单词。

尽管研究人员设计了每个步骤的运行框架,但需要明确的是,模型的具体行为是一种“涌现现象”——它取决于训练过程中那数千亿个参数的调整方式。这也使得人们很难弄清楚,模型为何会做出那些确切的预测。

不过你能直观感受到的是,当利用大型语言模型的预测来补全提示词时,它生成的内容会异常流畅、有趣,甚至具有实用性。

相关学习资源推荐

如果你是新观众,且想了解更多关于Transformer和注意力机制的细节,这里有一些推荐内容。

一个选择是观看我制作的深度学习系列视频,在这个系列中,我们会通过可视化的方式,详细讲解注意力机制以及Transformer中所有其他步骤的原理和作用。

另外,我在第二个频道上刚刚发布了几个月前在慕尼黑的TNG公司做的一次关于这个主题的演讲。有时候,相比制作精良的视频,我其实更偏爱以轻松演讲的形式呈现内容,但具体选择哪种内容作为后续学习材料,还是由你决定。

Large Language Models explained briefly (LPZh9BOjkQs)

</markdown>

Edit:2025.09.07<markdown>

大型语言模型的工作原理:一个电影剧本的比喻

演讲者首先描绘了一个场景:想象你偶然发现一个简短的电影剧本,描述了一个人与他们的人工智能助手之间的一场戏。剧本中有人类向人工智能提出的问题,但人工智能的回答部分却被撕掉了。

假设你拥有一台强大的魔法机器,它可以接收任何文本,并对下一个出现的词做出合理的预测。这样,你就可以通过将已有剧本内容输入这台机器,看它会预测出人工智能回答的第一个词是什么,然后将这个新生成的词加入剧本,不断重复这个过程,最终补全整个对话。

当你与一个聊天机器人互动时,发生的过程与此完全相同。

核心功能:预测下一个词

大型语言模型是一个复杂的数学函数,其功能是为任何一段文本预测接下来会出现的词。不过,它并非以确定的方式预测某一个词,而是为所有可能的下一个词赋予一个概率。

聊天机器人的构建过程

要构建一个聊天机器人,你首先要设定一些描述用户与一个假设的人工智能助手之间互动的文本。然后,将用户实际输入的内容作为互动的第一部分添加进去。接下来,让模型重复地预测这个假设的人工智能助手在回应时会说的下一个词。最终呈现给用户的,就是这样生成的内容。

在这个过程中,如果允许模型在生成文本时随机选择一些概率较低的词,输出的结果往往会显得更加自然。这意味着,尽管模型本身是确定性的,但对于一个给定的提示,每次运行时通常会产生不同的答案。

模型的训练过程

海量训练数据

模型通过处理海量的文本来学习如何做出这些预测,这些文本通常来源于互联网。举例来说,一个普通人如果想要读完用于训练GPT-3的文本量,即便不间断地每天24小时、每周7天阅读,也需要花费超过2600年的时间。而此后出现的大型模型,其训练数据量要远超于此。

参数的调节

你可以将训练过程想象成在一台大型机器上调节刻度盘。语言模型的行为完全由许多不同的连续数值所决定,这些数值通常被称为参数或权重。改变这些参数,就会改变模型在给定输入下对下一个词给出的概率。“大型”语言模型之所以“大”,就是因为它们可以拥有数千亿个这样的参数。

通过反向传播算法进行参数优化

这些参数从来不是由人类刻意设定的。相反,它们在初始时是随机的,这意味着模型最初只会输出胡言乱语。之后,它们会基于许多文本范例被反复优化。

这些训练范例可能只有几个词,也可能有数千个词。无论哪种情况,其工作方式都是将范例中除了最后一个词之外的所有内容输入模型,然后将模型做出的预测与范例中真正的最后一个词进行比较。

一种名为反向传播的算法会被用来微调所有的参数,其目的是让模型选择正确最后一个词的可能性稍微增加,而选择所有其他词的可能性则稍微降低。当你对数万亿个范例重复这个过程后,模型不仅开始对训练数据给出更准确的预测,也开始对它从未见过的文本做出更合理的预测。

惊人的计算规模

鉴于庞大的参数数量和海量的训练数据,训练一个大型语言模型所涉及的计算规模是令人难以置信的。

为了说明这一点,演讲者提出了一个设想:想象你每秒可以执行十亿次加法和乘法运算。你认为完成训练最大型语言模型所涉及的所有运算需要多长时间?一年?还是一万年?答案远不止于此。实际上,所需时间远远超过一亿年。

从预训练到微调

然而,这只是故事的一部分。整个上述过程被称为预训练。自动补全一段来自互联网的随机文本片段,这个目标与成为一个优秀的人工智能助手的目标是非常不同的。

基于人类反馈的强化学习

为了解决这个问题,聊天机器人会经历另一种同样重要的训练,称为基于人类反馈的强化学习。在这个阶段,工作人员会标记出那些无用或有问题的预测,他们的修正会进一步改变模型的参数,使其更倾向于给出用户偏好的预测。

技术基石:硬件与模型架构

GPU的并行计算能力

回顾预训练阶段,如此惊人的计算量之所以能够实现,是因为使用了特殊的计算机芯片,即GPU。这种芯片经过优化,可以并行运行大量操作。

Transformer架构的革命

然而,并非所有的语言模型都能轻易地进行并行化处理。在2017年之前,大多数语言模型都是一次处理一个词。但随后,谷歌的一个研究团队推出了一种名为Transformer的新模型。Transformer不会从头到尾地阅读文本,而是在并行中一次性吸收所有内容。

词嵌入:将语言数字化

在Transformer以及大多数其他语言模型内部,第一步就是将每个词与一长串数字关联起来。这样做的原因在于,训练过程只能处理连续的数值,所以必须以某种方式用数字来编码语言。这些数字列表中的每一个,都可能以某种方式编码了其对应词语的含义。

注意力机制:理解上下文

使Transformer独一无二的是其对一种名为“注意力”的特殊操作的依赖。这个操作让所有这些数字列表有机会相互“交流”,并根据周围的上下文来完善它们所编码的含义,而这一切都是并行完成的。

例如,编码“bank”这个词的数字可能会根据其周围的语境而改变,以某种方式编码出更具体的“河岸”这一概念。

前馈神经网络:增强模式存储能力

Transformer通常还包含第二种类型的操作,称为前馈神经网络。这为模型提供了额外的能力,用以存储在训练期间学到的更多关于语言的模式。

多层迭代与信息丰富化

所有这些数据会在这两种基本操作(注意力和前馈)的多个不同迭代中反复流动。在这个过程中,我们希望每个数字列表都能被丰富,以编码做出准确预测下一个词所需的一切信息。

生成最终预测

在最后,一个最终的函数会作用于序列中的最后一个向量。此时,这个向量已经有机会受到来自输入文本的所有其他上下文以及模型在训练期间学到的所有知识的影响。它最终会产生对下一个词的预测。同样,模型的预测是以对每个可能的下一个词的概率形式呈现的。

模型的复杂性与涌现行为

尽管研究人员设计了这些步骤的工作框架,但重要的是要理解,模型的具体行为是一种涌现现象,它基于那数千亿个参数在训练过程中是如何被调整的。这使得确定模型为何会做出其确切的预测变得极其困难。

你所能看到的是,当你使用大型语言模型的预测来自动补全一个提示时,它生成的词语异常流畅、引人入胜,甚至非常有用。

</markdown>

Edit:2025.09.07

<markdown> </markdown>

讨论列表 AKP讨论 查看原帖及回帖