什么是Transformers?详解“Attention is All You Need” — Transformer 架构

LLMs 和 Transformers:彻底改变 AI 领域 

尽管围绕 ChatGPT、Gemini、DALL-E2、AlphaCode 生成式 AI 工具使用大型语言模型 (LLM)(如 GPT、BERT、Cohere、LLAMA、Mistral 等)的所有嗡嗡声,看看影响这一切的工作至关重要。

💡 LLM 是巨大的 transformer 模型(具有数十亿个参数),它们在大量数据上进行了预训练,通过理解底层模式来生成类似人类的文本。

让我们深入了解变形金刚的世界——不,不是来自外太空的变形机器人(撇开这个愚蠢的笑话不谈)——而是自然语言处理 (NLP) 领域的底层模型,它改变了机器理解和生成类似人类文本的方式。

让我们从了解 Transformer 的需求开始。

准备了一份人工智能入门到进阶的学习攻略包,还有一份论文攻略包。需要哪个可以看下图获取

背景:The Pre-Transformer Era

在 Transformer 之前,NLP 模型严重依赖递归神经网络 (RNN) 及其更复杂的兄弟姐妹,例如长短期记忆 (LSTM) 和门控递归单元 (GRU) 网络。

这些模型能够处理具有一定程度上下文感知能力的序列数据(这意味着它们可以一次处理一个单词的文本)。需要标记的重要一点! 

虽然 RNN 和 LSTM 有各自的辉煌时刻,但这些模型有其自身的局限性:

1、长期依赖性:RNN 通常会忘记序列中较早的信息。

2、顺序计算:他们一次处理一个单词,使它们变慢。

3、无并行化:它们的顺序性质使得难以执行并行计算。


从 LSTM 到 LLMs,我们见证了 Sequence to Sequence Learning 领域的巨大进步。 

Brief History Sequence to Sequence Learning

在深入研究 transformer 之前,重要的是要注意 Transformer 的起源是由 Ilya Sutskever 和他的团队在他们的论文“Sequence to Sequence Learning with Neural Networks”(2014-2015 年)中提出的编码器-解码器架构改进所播下的种子。

什么是“Attention is All You Need”?

LLMs是 Vaswani 等人和 Google Brain 的一组研究人员于 2017 年发表的关键论文“Attention Is All You Need”。尽管其标题看似简单明了,但本文已经完全改变了用于涉及顺序数据的机器学习任务的方法。 

什么是变压器?

transformer 是一组神经网络层,由一个编码器和一个具有自注意力功能的解码器组成,它抛开了 RNN 及其变体的限制。

transformer 不是按顺序处理单词(每个时间戳一个一个),而是可以通过并行处理来一次处理整个句子或文档。这种方法不仅使它们更快,而且在句子中捕获单词的上下文时也更准确 

分解 Transformer 架构 

Transformer 架构

1. 输入嵌入Input Embedding 

首先,将文本的输入序列转换为固定大小的向量或输入嵌入,从而捕获文本的词汇和句法特征。

嗯,这个层将每个标记映射到一个高维嵌入空间,其中语义相似的标记更接近

考虑这句话:“Transformers enhance LLM capabilities”,这里的标记 “Transformers”、“enhance”、“LLM” 和 “capabilities 被转化为嵌入”,其中 “Transformers” 和 “LLM” 将更接近。

2. 位置编码 Positional Encoding

由于 transformer 一次处理整个句子,因此他们需要一种方法来记住单词的顺序。位置编码将添加到标记嵌入中,以提供有关序列中每个标记的位置的信息。

注意:模型区分具有相同嵌入但位于不同位置的标记也很有用。

如图所示,逐点位置编码被添加到相应的标记嵌入中,以帮助模型更好地理解序列顺序。

位置编码被添加到相应的嵌入中

3. 编码器-解码器结构Encoder-Decoder Structure

Transformer 模型遵循编码器-解码器架构:

编码器:如图所示,左侧部分处理输入序列并生成表示。

译码器:这个右半部分将编码器生成的隐藏状态作为输入,将之前生成的输出标记用于生成输出句子。

 4. 注意层 Attention Layers

transformer 的核心是一个 Attention Mechanism,它使模型能够动态地关注 input 序列的不同部分,从而增强了编码器-解码器架构的能力。

transformers 模型中有三种类型的注意力机制:

Self-Attention:句子中的每个单词都会注意所有其他单词,包括它自己,以找到理解上下文的相对重要性,从而生成特定于文本的上下文嵌入。

在我们的例子中,“Transformers”关注“enhance”、“LLM”和“capabilities”,以理解其上下文重要性(即,它与这些词的关系)。

多头注意Multi-Head Attention: 并行应用两个或多个自我注意,以从句子中捕捉广泛的上下文视角。

在预测 “能力” 时,解码器可能会关注编码器的 “Transformers”、“enhance” 和 “LLM,从而关注输入序列的相关部分。

蒙面自我注意Masked Self-Attention:用于解码器,确保每个单词只能关注序列中的前一个单词,防止前瞻作弊。

例如:该模型掩盖了 “capabilities”,即未来 token,用于预测序列中的 “LLM”,确保下一个 token 预测应完全基于已经存在的上下文,即 “Transformers enhance”。

这个模型也被普遍称为自回归模型,其中后面的单词 regressive 只是表示试图理解两个词之间的关系(类似于我们的原始回归模型所做的)。例如,已输入的单词和应输出的单词。而 Auto 只是表示“自我”。

自回归模型是一种自我预测模型。它预测一个单词,然后该单词用于预测下一个单词,该单词用于预测下一个单词,一直持续到上述令牌数量到期。

 5. 前馈网络Feed-Forward Networks

在注意力机制之后,模型通过位置前馈网络传递信息,将全连接层独立应用于序列中的每个位置,使模型能够捕获标记之间复杂的非线性关系。

6. 层归一化和残差连接

Transformer中的“Add & Norm”操作涉及将输入添加到前馈网络的输出中,然后将组合结果标准化。此过程有助于稳定训练并促进通过网络和残差连接的有效信息(梯度)流。

最后,在 Transformer 架构中,decoder 块的输出按以下方式处理:

从 Decoder 堆栈到 Transformer 的预测令牌的输出流

7. 线性层Linear Layer

来自最后一个解码器层的标准化向量序列,捕获通过线性层传递的输入序列中每个位置的标记的上下文化表示。

从架构上讲,线性层是一个全连接 NN 层,它使用权重矩阵和偏置向量对输入应用线性变换。

8. Softmax 功能Softmax Function

线性变换后,对输出应用 softmax 函数,以在序列中每个位置的词汇表上生成概率分布。

softmax 函数是一种常见的激活函数,可将 logits 转换为概率。它确保输出值的总和为 1,从中选择最可能的标记作为输出。

此概率分布表示模型对给定位置(输出序列中的下一个单词)的每个可能标记的置信度。

9. 输出预测:Output Prediction

在训练过程中,该模型使用教师强制方法,其中真正的前一个标记在每个步骤中被输入到解码器中。

然而,在推理过程中,模型可以从概率分布中选择最可能的标记(使用贪婪搜索)或样本(通过选择最高概率的标记),或者您也可以使用更高级的技术(如光束搜索)以自回归方式生成序列中的下一个标记。

预测的输出 token 作为下一个时间步的 input 反馈给解码器,以及之前生成的 token 和 encoder 的隐藏状态。

此过程迭代重复,直到生成序列结束标记(例如,<eos>)或达到预定的最大长度。

为什么要创建 Transformers?

Transformer 是许多最先进的 NLP 模型的支柱,包括 BERT、GPT、T5 等,因为它们提供:

1、处理长期依赖关系: 由于注意力机制,他们不会遇到记忆丧失问题

2、并行: 它可以使用并行处理一次处理整个语料库,这使得它们比 RNN 快得多。

3、速度和效率:Transformer 专为并行处理而设计,使它们能够更有效地利用 GPU 和 TPU 等现代硬件。

4、多面性: 如今,它们是不同领域的 Gen-AI 应用的支柱,包括图像处理、音乐生成,甚至强化学习。

变压器的实际应用

Transformer 已经进入了众多机器和深度学习应用程序,改变了我们现在与技术交互的方式。

1、NLP 领域的革命:Transformer 是 BERT (Bidirectional Encoder Representations from Transformers)  GPT (Generative Pre-trained Transformer) 模型等模型背后的大脑,为情感分析、机器翻译、命名实体识别和问答系统等任务设定了新的基准。

2、Gen-AI 的加速ChatGPT、 Gemini、CodeX 等使用变压器生成类似人类的文本。这些模型能够写论文、诗歌、总结文本,甚至生成代码。

3、语音识别: Siri  Alexa 等语音助手在语音识别中使用 Transformers,从而实现更准确的响应。

4、深度学习的统一:此外,Transformers 在计算机视觉和强化学习领域显示出前景,突破了不同领域的可能性界限。

挑战和未来方向

虽然 Transformers 取得了巨大的成功,但他们并非没有挑战。

1. 训练 Transformer 所需的高计算成本(时间和资源)。

2.这些“黑匣子”模型的可解释性低,使得很难理解他们是如何做出决策的。

3. 确保 Transformer 模型中的公平性和减少偏差(过拟合)是正在进行的研究的一个关键领域。

4. 随着参数的增加,可扩展性变得越来越具有挑战性。正在探索模型修剪、量化和知识蒸馏等技术来解决这个问题。

结论

简而言之,这些变压器标志着 NLP 领域的一个转折点。它完全基于 Attention Mechanism,提供了以前无法想象的速度、准确性和多功能性。它们已成为许多尖端 Gen-AI 应用程序的基础,从语言理解到图像处理等等。

总而言之,今天我们只是触及了 Transformer 架构的皮毛。随着不断的研究和创新,未来将蕴藏着更多令人兴奋的可能性。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值