AI 模型与平台

解码器基于的大型语言模型:完整指南

mm
将 Unite.AI 添加到您在 Google 上的首选来源

大型语言模型 (LLMs) 已经彻底改变了自然语言处理 (NLP) 领域,展示了在生成类似人类的文本、回答问题和帮助各种语言相关任务方面的卓越能力。在这些强大的模型的核心是 解码器仅 transformer 架构,这是原始 transformer 架构的变体,该架构由 Vaswani 等人在题为 “注意力就是一切” 的论文中提出。

在这份综合指南中,我们将探索解码器基于 LLMs 的内部工作原理,深入研究基本构建块、架构创新和实现细节,这些因素推动了这些模型在 NLP 研究和应用中的发展。

Transformer 架构:回顾

在深入研究解码器基于 LLMs 之前,回顾 transformer 架构是非常重要的,这是这些模型的基础。Transformer 引入了一种新的序列建模方法,仅依赖于注意力机制来捕获数据中的长距离依赖,而无需循环或卷积层。

Transformers 架构

Transformers 架构

原始 transformer 架构由两个主要组件组成:编码器和解码器。编码器处理输入序列并生成上下文表示,然后由解码器消费以生成输出序列。该架构最初是为机器翻译任务设计的,其中编码器处理源语言的输入句子,解码器生成目标语言的对应句子。

自注意力:Transformer 成功的关键

Transformer 的核心是自注意力机制,这是一种强大的技术,允许模型从输入序列的不同位置加权和聚合信息。与传统的序列模型不同,自注意力使模型能够捕获任何两个令牌之间的依赖关系,无论它们在序列中的位置如何。

多查询注意力

多查询注意力

自注意力操作可以分解为三个主要步骤:

  1. 查询、键和值投影:输入序列被投影到三个单独的表示中:查询 (Q)、 (K) 和 (V)。这些投影是通过将输入与学习的权重矩阵相乘获得的。
  2. 注意力评分计算:对于输入序列中的每个位置,通过计算对应的查询向量和所有键向量之间的点积来计算注意力评分。这些评分表示每个位置与当前位置的相关性。
  3. 加权和值:注意力评分被 softmax 函数归一化,得到的注意力权重用于计算值向量的加权和,生成当前位置的输出表示。

多头注意力是一种自注意力机制的变体,允许模型通过并行计算多个“头”上的注意力评分来捕获不同类型的关系,每个头都有自己的查询、键和值投影。

架构变体和配置

虽然解码器基于 LLMs 的核心原理保持一致,但研究人员已经探索了各种架构变体和配置,以提高性能、效率和泛化能力。在本节中,我们将深入研究不同的架构选择及其影响。

架构类型

解码器基于 LLMs 可以大致分为三种类型:编码器-解码器、因果解码器和前缀解码器。每种架构类型都具有不同的注意力模式。

编码器-解码器架构

基于原始 Transformer 模型,编码器-解码器架构由两个堆栈组成:编码器和解码器。编码器使用堆叠的多头自注意力层来编码输入序列并生成潜在表示。解码器然后对这些表示执行交叉注意力以生成目标序列。虽然这种架构在各种 NLP 任务中有效,但很少有 LLMs,如 Flan-T5,采用这种架构。

因果解码器架构

因果解码器架构包含一个单向注意力掩码,允许每个输入令牌仅关注过去的令牌和自身。输入和输出令牌都在同一个解码器中处理。著名的模型,如 GPT-1、GPT-2 和 GPT-3,是基于这种架构构建的,GPT-3展示了显著的上下文学习能力。许多 LLMs,包括 OPT、BLOOM 和 Gopher,都广泛采用了因果解码器。

前缀解码器架构

也称为非因果解码器,前缀解码器架构修改了因果解码器的掩码机制,以启用对前缀令牌的双向注意力和对生成令牌的单向注意力。与编码器-解码器架构类似,前缀解码器可以使用共享参数对前缀序列进行双向编码,并自回归地预测输出令牌。基于前缀解码器的 LLMs 包括 GLM130B 和 U-PaLM。

所有三种架构类型都可以使用 专家混合 (MoE) 缩放技术扩展,该技术稀疏地激活输入的子集神经网络权重。这种方法已被应用于 Switch Transformer 和 GLaM 模型,增加专家数量或总参数大小显示出显著的性能改进。

解码器仅Transformer:拥抱自回归性质

虽然原始 transformer 架构是为序列到序列任务(如机器翻译)而设计的,但许多 NLP 任务(如语言建模和文本生成)可以被视为自回归问题,其中模型一次生成一个令牌,条件为之前生成的令牌。

解码器仅 transformer 是 transformer 架构的简化变体,仅保留解码器组件。这种架构特别适合自回归任务,因为它一次生成一个输出令牌,利用之前生成的令牌作为输入上下文。

解码器仅 transformer 和原始 transformer 解码器之间的关键区别在于自注意力机制。在解码器仅设置中,自注意力操作被修改为防止模型关注未来令牌,这被称为因果性。这种因果性是通过一种称为“掩码自注意力”的技术实现的,其中对应于未来位置的注意力评分在 softmax 归一化步骤中设置为负无穷大,有效地将它们从归一化步骤中排除。

解码器基于 LLMs 的架构组件

虽然自注意力和掩码自注意力的核心原理保持不变,但现代解码器基于 LLMs 已经引入了几种架构创新,以提高性能、效率和泛化能力。让我们探索一些关键组件和技术,这些组件和技术被用于最先进的 LLMs 中。

输入表示

在处理输入序列之前,解码器基于 LLMs 使用标记化和嵌入技术将原始文本转换为模型可以处理的数值表示。

向量嵌入

向量嵌入

标记化:标记化过程将输入文本转换为令牌序列,可以是单词、子单词,甚至是单个字符,具体取决于使用的标记化策略。LLMs 中流行的标记化技术包括字节对编码 (BPE)、句子分割和单词分割。这些方法旨在在词汇表大小和表示粒度之间取得平衡,使模型能够有效地处理罕见或词汇表外的单词。

令牌嵌入:标记化后,每个令牌被映射到一个密集的向量表示,称为令牌嵌入。这些嵌入是在训练过程中学习的,并捕获令牌之间的语义和句法关系。

位置嵌入:由于 Transformer 模型同时处理整个输入序列,因此缺乏循环模型中令牌位置的固有概念。为了纳入位置信息,位置嵌入被添加到令牌嵌入中,使模型能够根据令牌在序列中的位置区分它们。早期的 LLMs 使用基于正弦函数的固定位置嵌入,而最近的模型已经探索了可学习的位置嵌入或其他位置编码技术,如旋转位置嵌入。

多头注意力块

解码器基于 LLMs 的核心构建块是多头注意力层,它们执行前面描述的掩码自注意力操作。这些层被堆叠多次,每个层都关注前一层的输出,使模型能够捕获越来越复杂的依赖关系和表示。

注意力头:每个多头注意力层由多个“注意力头”组成,每个头都有自己的查询、键和值投影。这使模型能够同时关注输入的不同方面,捕获多种关系和模式。

残差连接和层归一化:为了促进深度网络的训练并减轻梯度消失问题,解码器基于 LLMs 采用了残差连接和层归一化技术。残差连接将层的输入添加到其输出,使梯度在反向传播过程中更容易流动。层归一化有助于稳定激活和梯度,从而进一步提高训练稳定性和性能。

前馈层

除了多头注意力层外,解码器基于 LLMs 还包含前馈层,它们对序列中的每个位置应用一个简单的前馈神经网络。这些层引入非线性,使模型能够学习更复杂的表示。

激活函数:前馈层中激活函数的选择会显著影响模型的性能。虽然早期的 LLMs 依赖于广泛使用的 ReLU 激活,但最近的模型已经采用了更复杂的激活函数,如高斯误差线性单元 (GELU) 或 SwiGLU 激活,这些激活函数已经显示出更好的性能。

稀疏注意力和高效 Transformer

虽然自注意力机制很强大,但它具有与序列长度成二次的计算复杂度,使其对于长序列来说计算成本很高。为了解决这个挑战,已经提出了几种技术来减少自注意力的计算和内存要求,使长序列的处理更加高效。

稀疏注意力:稀疏注意力技术,例如 GPT-3 模型中使用的技术,选择性地关注输入序列中的一个子集位置,而不是为所有位置计算注意力评分。这可以在保持合理性能的同时显著减少计算复杂度。

滑动窗口注意力:滑动窗口注意力 (SWA) 是一种简单而有效的技术,限制了每个令牌的注意力范围为一个固定窗口大小。这种方法利用了 Transformer 层传递信息的能力,有效地增加了注意力范围而不需要全注意力的二次复杂度。

滚动缓冲区缓存:为了进一步减少内存要求,特别是对于长序列,Mistral 7B 模型采用了滚动缓冲区缓存技术。这种技术存储和重用计算的键和值向量,避免了冗余计算并最小化内存使用。

分组查询注意力:分组查询注意力 (GQA) 是一种多查询注意力机制的变体,分组查询注意力将注意力头分为组,每个组共享一个共同的键和值矩阵。这种方法在多查询注意力和标准自注意力的效率之间取得平衡,提供了更好的推理时间同时保持高质量的结果。

分组查询注意力

分组查询注意力

模型大小和缩放

现代 LLMs 的一个关键特征是其庞大的规模,参数数量从数十亿到数百亿不等。增加模型大小是实现最先进性能的关键因素,因为更大的模型可以捕获数据中更复杂的模式和关系。

参数计数:解码器基于 LLMs 中的参数数量主要由嵌入维度 (d_model)、注意力头数 (n_heads)、层数 (n_layers) 和词汇表大小 (vocab_size) 确定。例如,GPT-3 模型有 175 亿参数,其中 d_model = 12288n_heads = 96n_layers = 96vocab_size = 50257

模型并行性:训练和部署如此大型的模型需要大量的计算资源和专用硬件。为了克服这个挑战,采用了模型并行性技术,即将模型分割到多个 GPU 或 TPU 上,每个设备负责计算的一部分。

混合专家:另一种扩展 LLMs 的方法是混合专家 (MoE) 架构,该架构结合了多个专家模型,每个模型专门处理数据或任务的一个特定子集。Mixtral 8x7B 模型是使用 Mistral 7B 作为其基础模型的 MoE 模型的例子,实现了更好的性能同时保持计算效率。

推理和文本生成

解码器基于 LLMs 的主要用途之一是文本生成,即根据给定的提示或上下文生成连贯且听起来自然的文本。

自回归解码:在推理过程中,解码器基于 LLMs 以自回归的方式生成文本,一次预测一个令牌,基于之前生成的令牌和输入提示。这个过程继续直到达到预定的停止标准,例如达到最大序列长度或生成序列结束令牌。

采样策略:为了生成多样和真实的文本,可以采用各种采样策略,例如 top-k 采样、top-p 采样(也称为核采样)或温度缩放。这些技术通过调整词汇表上的概率分布来控制生成文本的多样性和连贯性之间的权衡。

提示工程:输入提示的质量和具体性会显著影响生成的文本。提示工程,即制作有效提示的艺术,已经成为利用 LLMs 的关键方面,使用户能够指导模型的生成过程并实现所需的输出。

人机交互解码:为了进一步提高生成文本的质量和连贯性,采用了强化学习从人工反馈 (RLHF) 的技术,即人工评估员对模型生成的文本提供反馈,然后使用这些反馈来微调模型,有效地使模型与人工偏好和输出保持一致。

进展和未来方向

解码器基于 LLMs 的领域正在迅速发展,新的研究和突破不断推动这些模型可以实现的界限。以下是一些值得注意的进展和潜在的未来方向:

高效 Transformer 变体:虽然稀疏注意力和滑动窗口注意力已经在提高解码器基于 LLMs 的效率方面取得了显著进展,但研究人员正在积极探索替代的 Transformer 架构和注意力机制,以进一步降低计算要求同时保持或提高性能。

多模态 LLMs:将 LLMs 的能力扩展到文本以外,多模态模型旨在将多个模态(如图像、音频或视频)整合到一个统一的框架中。这为图像字幕、视觉问答和多媒体内容生成等应用打开了令人兴奋的可能性。

可控生成:使生成的文本具有细粒度的可控性是 LLMs 的一个具有挑战性但重要的方向。控制文本生成和提示调优等技术旨在为用户提供对生成文本的各种属性(如风格、语气或特定内容要求)更大的控制权。

结论

解码器基于 LLMs 已经成为自然语言处理领域的一种变革力量,推动了语言生成和理解的界限。从它们作为 transformer 架构的简化变体的谦逊起点开始,这些模型已经发展成为高度复杂和强大的系统,利用了最先进的技术和架构创新。

随着我们继续探索和推进解码器基于 LLMs 的发展,我们可以期待在语言相关任务中看到甚至更令人惊叹的成就,以及这些模型被整合到广泛的应用和领域中。然而,解决这些强大模型的广泛部署可能带来的伦理问题、可解释性挑战和潜在偏见至关重要。

通过保持在研究前沿、促进开放合作以及致力于负责任的 AI 开发,我们可以解锁解码器基于 LLMs 的全部潜力,同时确保它们的开发和使用是安全、道德和有益于社会的。

我已经沉浸在了令人着迷的机器学习和深度学习世界中五年了。我的热情和专业知识让我为超过50个不同的软件工程项目做出了贡献,特别关注AI/ML。我的持续的好奇心也让我对自然语言处理产生了兴趣,这是一个我渴望进一步探索的领域。