一个关于大型语言模型的简单介绍
从容易上手的角度解析大型语言模型

嗨,很高兴您找到了这篇有关大型语言模型或LLMs的温和介绍。既然您在这里,可以安全地假设您最近一年一直在想尽办法搞清楚这个占据新闻发布的3个字母缩写的含义。不用担心了!这正是这篇博客文章的目的。我们将沿着大型语言模型的奇妙领域走一遭,在此过程中讨论一些核心概念以及它们的工作原理和原因。我们将从神经网络开始,复习深度学习,弄清楚到底是NLP是什么鬼,最终,在这个不太痛苦的过程之后,了解一下大型语言模型的工作原理。让我们开始吧。
什么是人工智能?
简单点说,智能指的是思考、学习、理解和解决问题的能力。它使人类和某些动物能够理解周围的环境,适应情况并根据自己的经验和知识做出决策。
智能包括推理能力,从错误中学习以及有效利用信息以克服挑战的能力。
本质上,智能是我们能够在世界中航行并成功参与其中的能力。现在让我们深入探讨智能(AI)的概念。
AI可以被视为一种能够处理大量信息并根据数据做出智能选择的助手。可以将其视为在你身边有一个可以帮助你任务的大脑,例如建议你可能喜欢的电影或歌曲,帮助医生准确分析医学图像,甚至无需人类干预就能自主驾驶车辆。
使AI变得迷人的是它对算法(一步一步的指导)和数据的依赖。将其视为一台从错误中学习的计算机。通过实践逐步改进其指定的任务。这意味着那些探索其工作方式的人可以解释和理解AI。
什么是机器学习?
既然我们对AI有了一定的了解,我们自然会想知道机器如何获得知识和理解。这就是机器学习的相关性所在。

想象一下您有一台电脑。您希望它可以做一些聪明的事情,比如识别一张照片是猫还是狗。一种处理这个问题的方法是给计算机一些指令,要求它搜索毛发、耳朵、尾巴等特征。然而,这种方法会变得非常复杂。
机器学习采取了不同的方法。它类似于通过示例教导计算机。您会让它接触到猫和狗的图片,逐渐地它会开始自主理解猫和狗的区别。它通过观察图像中的模式和相似之处来学习。
从本质上讲,机器学习构成了AI的学习部分。计算机从数据中学习任务。因此,AI的能力更广泛,包括推理、问题解决和语言理解等。这些都可以通过机器学习大大增强。
什么是机器学习模型?
一旦我们掌握了AI和ML的概念,就必须了解语言模型(LLMs)的重要性。要理解LLMs,我们必须首先了解“模型”的含义(这个词占了这个术语的三分之一)。将其想象为一个从数据示例、规则和模式中学习的机器的心智或智能。例如,它可以学习区分特征,比如猫有胡须或狗腿更长。利用这些学到的经验或模式,当面对一张图片时,它可以做出明智的决策或预测。
为了更深入地理解我们的类比,将语言模型想象成具有执行涉及文本操作的能力的模型。这些模型是通过对互联网上的大量文本数据进行训练而得到的,并且具备与人类产生的文本内容相当甚至超过人类质量的能力。例如,像GPT 4这样的模型已经展示了它们在创作诗歌、智能回答问题甚至生成计算机代码方面的才华。它们在语言掌握方面真的是巫师!
什么是神经网络?
为了使模型生成预测,它需要对观察到的数据中的模式有所理解。有很多方法可以实现这一点,其中一种方法是通过利用神经网络。
神经网络在机器学习和人工智能中起着重要作用,使我们能够解决复杂的任务,如图像识别、语言理解和预测。
它们由称为神经元的单元层组成,这些神经元在处理信息方面相互合作。想象一下你的大脑就像由神经元组成的网络。例如,当你遇到一张猫的图片时,你的大脑内的神经元会根据毛发、耳朵和胡须等特征激活,从而识别出它来。神经网络通过在层之间使用神经元来类似地进行操作,以识别数据中的模式。然而,它们要简单得多,不如人脑的运作复杂。

让我们以制作蛋糕的类比来深入了解网络的世界。假设你要创建一个网络,可以根据其成分和烘焙过程准确预测蛋糕的美味程度。以下是网络中不同概念与烘焙类比的对应关系:
- 将成分和食谱视为输入数据,类似于为神经网络收集的原材料。
- 整个烘焙过程象征着网络的结构,由相互连接的层组成。
- 过程中的每一步代表一个具有激活函数的神经元发挥作用。这类似于根据温度和搅拌时间等因素调整食谱。
- 调整成分数量会影响蛋糕的味道,网络中的权重决定神经元之间的连接强度。
- 最终,你的目标是制作一款与神经网络的目标相符的蛋糕,以实现准确的预测或分类。
- 如果蛋糕达不到预期,你就会改进食谱。就像神经网络中的反向传播一样。
什么是深度学习?
在烘焙类比中,深度学习与普通神经网络的主要区别在于网络的深度,即隐藏层的数量。让我们澄清这个区别:

一个普通的神经网络通常由一个或几个隐藏层组成,位于输入层和输出层之间。在神经网络的情况下,每个隐藏层可以被看作是表示烘焙过程的各个阶段或因素。例如,隐藏层可能考虑混合时间、温度和成分数量等因素。通过结合这些特征,网络能够对蛋糕的质量进行预测。
一个深度学习神经网络具有多个堆叠在一起的隐藏层。这些深度神经网络每增加一个隐藏层,就能够捕获更复杂和抽象的特征。例如,第一个隐藏层可能关注混合时间和温度等特征,而随后的层可以深入到更复杂的因素,如成分之间的相互作用。这种分层表示能力使网络能够掌握数据中的模式和关系。
什么是语言模型?
想象一下,你正在玩一个填空句子的文字游戏。你遇到了这样一句话:“太阳正照耀,鸟儿在歌唱”。你需要猜下一个词。
一个根据句子中的词汇知识进行猜测的语言模型可能会作出一个有根据的猜测,例如“明亮”或“美丽”,因为这些词经常在有关宜人天气的短语后使用。
语言模型不仅如此。语言模型还会为每个可能出现的下一个词分配概率。例如,它可能会给“明亮”赋予更高的概率,而对“大象”赋予较低的概率,因为在讨论天气之后通常不会使用“大象”。因此,语言模型尽力根据这些概率进行预测。语言模型可以被看作是依靠过去实例中的模式来确定句子中最可能出现的下一个词的“单词巫师”。它们并不完美,但在提供手机上的自动补全建议或在你打字时预测下一个单词等任务中非常擅长。
编码器和解码器是什么?

编码器在语言模型中可以被看作是认真听取你说话的倾听者。它们会仔细分析一个句子中前面的单词,比如“太阳正在照耀,鸟儿正在”,认真考虑它们的意义和关系,以建立上下文理解。这个总结的上下文随后会传递给“解码器”。

解码器充当词语建议者。它们从编码器那里接收信息,这些信息可能指示该句子与鸟类有关,并生成一系列可能的下一个词语。例如,它们可能会建议“唱歌”或“鸟叫”,因为这些词语通常与鸟类和宜人的天气相关。解码器提供的每个建议都被分配一个概率,概率最高的词语最有可能成为下一个词。
在我们的词语游戏类比中,编码器从单词中获取上下文信息,而解码器利用这个上下文根据各种选项的概率做出有根据的猜测,相当于进行对话,其中一个伙伴(编码器)仔细倾听,另一个专家顾问(解码器)根据他们听到的内容提供最佳的词语选择。他们共同努力帮助你构建有意义的句子。
编码器-解码器设置中的上下文是什么?
在有编码器和解码器的设置中,术语“上下文”指的是输入序列的详细信息(通常是一系列单词或标记),这些信息存储并被解码器利用来生成输出序列。
编码器的作用是从输入中获取并编码这个上下文,而解码器的任务则是利用这个上下文生成输出。

下面是关于上下文在编码器-解码器设置中的工作方式的解释:
编码上下文(编码器)
编码器接收输入序列,并逐步处理它,通常将每个元素(如句子中的单词)转换为固定长度的表示。
这个表示称为上下文向量,总结了整个输入序列中的所有信息。它捕捉了输入元素之间的关系和依赖。
利用上下文(解码器)
解码器从编码器那里接收上下文向量作为其状态。这种信息的简洁表达包含了输入序列中存在的详细信息。
使用这个上下文,解码器逐个生成输出序列的每个部分。它还可以考虑之前在输出序列内生成的元素。
通过利用这个上下文,解码器可以做出明智的决策,确定下一个词语,以产生一个在给定上下文中连贯和相关的输出。
生成模型
生成模型是指“掩码”语言模型。那么,“掩码”语言模型到底指的是什么呢?
掩码语言模型(MLMs)在猜词游戏中非常娴熟。让我用一些例子来解释它们的工作原理。
想象一下,你有一个句子,其中有一个词,比如“The [MASK] is chasing the ball.”挑战是找出适合填入空白处的合适词语。MLMs擅长解决这些词语谜题。
与其他模型不同的是,它们不依赖猜测。相反,它们仔细分析句子中空格前后的所有单词。
这些模型通过大量的互联网文本进行了训练。他们观察了单词如何在句子结构中组合。因此,在基于所学内容的情况下,他们具备了在句子中使用适当的单词来完成句子的能力。
我们使用了不同的掩码模型,如BERT和GPT,这两个模型都是生成模型,以预测句子中下一个单词而闻名。GPT代表生成预训练变压器。我们先前讨论了生成和预训练的方面,现在让我们深入探讨一下“Transformer”是什么意思。
什么是Transformer?
Transformer是一种深度学习模型,由Vaswani等人在2017年的论文“注意力机制是你所需要的一切”中引入。由于其高效捕捉长程依赖的能力,它在处理顺序数据(如文本)方面尤为有效。
Transformer架构由两个组件构成:编码器和解码器。这两个部分都有层。
- 编码器:编码器接收输入序列,如句子。按标记进行处理。每个标记最初被转换为一个在维度空间中的向量。然后在编码器的每个层中使用自注意机制,让模型了解每个标记相对于输入序列中的所有其他标记的重要性。通过组合这些加权表示,模型有效地捕捉信息。此外,编码器的每个层中都使用前馈神经网络来优化这些表示。
- 解码器:与编码器类似,解码器也由多个层组成,但包含一个额外的注意机制,关注来自编码器的输出。在解码过程中,该模型逐步生成输出序列。在每个步骤中,它利用自注意力来考虑先前生成的标记,并关注来自包含输入序列信息的编码器的输出。这种双向关注使解码器能够根据其输出中的上下文生成标记。
自注意力
自注意力在Transformer模型中起着重要作用,使其能够非常强大地理解序列中单词之间的联系。
它使模型能够理解文本序列中的单词或元素之间的关系,从而根据其与序列中其他单词的相关性分配重要性。这个过程生成的表示非常有意义。
自注意力在Transformer模型中的重要性可以归功于以下关键因素:
- 理解上下文:自注意力使Transformer能够捕捉上下文并了解单词在序列中的相互关系。自注意力不仅考虑相邻的单词,而是考虑整个序列,这对于理解自然语言上下文至关重要。
- 学习长程依赖:自注意力在帮助Transformer学习跨越数据中的距离的依赖关系方面起到重要作用。这种能力对于语言翻译或文本生成等任务非常关键,其中有意义的短语或单词可能在句子中间。
我建议查阅@JayAlammar撰写的这篇博客。它提供了关于Transformer和自注意力的深入了解,这些都对各种自然语言处理任务非常有用。
ChatGPT在做什么?
ChatGPT结合了来自Transformer、掩码模型、编码器解码器等领域的概念。ChatGPT之所以强大,是因为它结合了基于Transformer的架构、大规模数据的广泛预训练、针对特定任务的微调,以及能够生成连贯、适应上下文的回应的能力。
以下是ChatGPT如此有效的几个原因:
- Transformer架构:ChatGPT构建在Transformer架构上,优于处理数据,并特别适合理解和生成人类语言。
- 广泛预训练:在用于聊天机器人交互等任务之前,ChatGPT经过了大量从互联网获取的文本数据的训练。这个预训练阶段使模型具备了语言语法规则和通识知识的理解。
- 双向自注意力:ChatGPT利用自注意机制,使标记(单词或单词的部分)能够考虑句子中前面和后面的单词。这种双向理解帮助模型捕捉上下文和单词之间的依赖关系,以便更加有上下文的意识。
- 微调:在初始预训练阶段之后,ChatGPT经过微调,以针对聊天机器人等特定任务进行能力的优化。
另外,还有一种叫做“强化学习人类反馈”(RLHF)的技术,为ChatGPT的独特性做出了贡献。
强化学习人类反馈(RLHF)
强化学习人类反馈(RLHF)是通过结合人类生成的数据和强化学习来提高ChatGPT的性能的一种技术。以下是RLHF在ChatGPT中的工作原理概述:
正如之前提到的,ChatGPT经历了预训练阶段,从大量的文本数据中学习。
接下来,ChatGPT经历了一个称为调优的过程。在这个阶段,AI训练员与模型进行对话,并根据指南提供响应。这些训练员模拟用户互动。生成的对话数据集与训练员对模型响应进行排序的比较数据一起,构成了一种奖励系统。
然后,模型根据这个奖励系统进行训练,以最大化奖励(称为强化学习)。它学会生成更符合人类偏好并适应给定上下文的响应。
通过多轮的微调和强化学习,模型随着时间的推移逐渐提高其性能。每一次迭代都有助于它生成准确且用户友好的响应。
结论
在本文中,我们深入探讨了人工智能领域,特别关注了机器学习及其先进的子领域——深度学习。我们专注于语言模型,它们作为基于上下文线索来确定句子中后续单词的预测算法。我们介绍了Transformer和自注意力机制,同时简要介绍了RLHF。
希望我能为您提供一份易于理解的指南,帮助您在LLMs的世界中进行导航。