




















能理解“句子顺序”和“上下文”的神经网络架构
一眼扫全篇,直接抓重点
注意力机制,抓重点,全局观察。
Transformer 是自 2017 年提出以来,取代 RNN 和 CNN 的主流 NLP 模型架构,广泛应用于文本理解与生成任务。

| 类别 | 架构 | 代表模型 | 适用任务 |
|---|---|---|---|
| 纯 Encoder | Auto-Encoding | BERT、RoBERTa、ALBERT、ELECTRA | 文本理解、分类、NER、抽取式问答 |
| 纯 Decoder | Auto-Regressive | GPT 系列、CTRL、GPT-Neo | 文本生成、续写、代码生成 |
| Encoder-Decoder | Seq2Seq | T5、BART、M2M-100、BigBird | 翻译、摘要、生成式问答 |

Transformer 作为现代自然语言处理等领域的核心模型架构,其各个关键组件分工明确,共同支撑了模型对序列数据的高效处理能力:
自注意力机制(Self-Attention):允许模型在处理序列中每个元素时,动态关注序列中其他相关元素的信息。例如在翻译任务中,处理某个词时能自动关联上下文的关键词汇,从而捕捉长距离依赖关系,解决了传统 RNN 类模型在长序列处理上的局限。
前馈神经网络(Feed-Forward Neural Network):每个 Transformer 层中包含一个两层的线性网络,中间通过激活函数(如 ReLU)引入非线性变换。它对自注意力机制输出的每个位置特征进行独立的非线性转换,进一步增强模型的特征提取能力。
位置编码(Positional Encoding):由于 Transformer 不依赖循环结构,无法像 RNN 那样自然捕捉序列的顺序信息。位置编码通过给序列中不同位置的元素添加特定的编码向量(通常基于正弦和余弦函数),让模型感知到元素的位置关系。
层归一化(Layer Normalization):用于稳定训练过程,加速模型收敛。它对每一层的输入进行归一化处理(使均值为 0、方差为 1),再通过可学习的参数调整,避免了数据分布偏移对模型训练的影响,通常应用于自注意力层和前馈网络层的输入或输出。
编码器 - 解码器(Encoder-Decoder)结构:
这些组件的协同作用,使得 Transformer 在并行计算效率、长距离依赖捕捉等方面表现优异,成为 BERT、GPT 等众多经典模型的基础架构。
前文预测下一个词,自回归语言建模,用于 GPT预训练模型:从头开始训练,需要海量的训练数据,而且时间和经济成本都非常高。
迁移学习:在预训练模型基础 上使用少量标注数据微调下游任务(将别人预训练好的模型权重通过迁移学习应用到自己的模型中,即使用自己的任务语料对模型进行“二次训练”,通过微调参数使模型适用于新任务。)
避免从头训练,节省时间、数据和计算成本
核心思想
模型像“专注力”,自动判断哪些词最重要并重点关注。
基本概念
简单理解:“我想知道当前词最应该关注哪些词,然后把它们的信息加权合成输出。”
多头注意力(Multi-Head Attention)
作用

词向量表示词语含义,位置编码表示词语顺序 → 让模型既知道“词是什么”,也知道“词在哪”。
每层 Encoder 主要包含两个子层:多头自注意力层 + 前馈网络。

QK^T → 衡量每个 Query 和所有 Key 的相关性
Softmax (常用的归一化函数,用于将一个向量转换成概率分布(0~1,总和 = 1))
→ 把相关性归一化,得到注意力权重
权重矩阵 × V → 得到融合上下文的最终 Token 表示
直观理解:模型问“这个词应该关注哪些词?”,再把关注的词信息加权合并。
Token embeddingx
│
▼
LinearW1 + b1 (扩维)
│
激活函数 ReLU/GELU
│
LinearW2 + b2 (降维)
│
残差连接: x + FFN(x)
│
LayerNorm
│
输出表示 → 下一个 Encoder 层
每层 Encoder 的输入 → 自注意力捕捉上下文 → 前馈网络增强表示 → 输出给下一层。
输入序列
│
Embedding + Positional Encoding
│
┌───────────────────────────┐
│ Encoder Layer 1 │
│ ┌───────────────┐ │
│ │ Multi-Head │ │
│ │ Self-Attn │ │
│ └───────────────┘ │
│ ┌───────────────┐ │
│ │ Feed Forward │ │
│ └───────────────┘ │
└───────────────────────────┘
│
▼
──> Encoder Layer 2 → … → Encoder Layer N
│
▼
输出语义表示
GPT,或生成式预训练Transformer,是最早和最广为人知的LLM之一。
GPT诞生于OpenAI的研究,在Google引入Transformer架构一年后,即2018年。
它的继任者ChatGPT是当今最受欢迎的LLM之一。

GPT通过根据提示预测下一个单词/标记来生成文本。
这个过程称为自回归,意味着每个单词都是基于之前的单词生成的。

你会在描述GPT的图像中看到,它接受输入嵌入和位置编码作为输入。
这看起来有些奇怪,因为应该是单词/句子进入GPT才能产生下一个单词。
事实是,LLM不理解英语(或任何其他人类语言)。
任何英语单词/句子都必须首先被分解成称为标记的小片段,这个过程称为标记化。
在ChatGPT等LLM中,这是使用称为字节对编码的标记化算法完成的。

获得的标记然后被编码成称为嵌入的数学形式。
嵌入是高维向量表示,捕获不同单词/句子之间的语义含义和关系。
具有相似含义的单词在更高维空间中具有更接近的嵌入。
如下所示,“Apple”的嵌入比“Pen”更接近“Orange”。

我们之前讨论过LLM中的Transformer架构如何让它们并行处理所有单词/标记。
这可能会导致问题,因为在像英语这样的语言中,单词的位置对于传达含义很重要。
这就是为什么使用位置编码将句子中不同单词/标记的位置信息与这些单词/标记的输入嵌入相结合。

现在我们已经了解了LLM的内部机制,让我们讨论它们是如何训练的。
从零开始训练文本生成LLM的第一步是预训练。
在这个阶段,LLM通过处理大量未标记的文本数据集来学习。
在每一步中,它都被给予上下文(即之前的单词/标记),并被要求预测接下来的单词/标记。
这使它逐渐学习语法、事实和常识推理。

一旦我们获得了预训练的LLM,就可以通过在特定于这些任务的标记示例上训练它来适应特定任务。
这些任务可能包括模型回答问题、总结文档或更可靠地遵循指令。
这一步称为监督微调(SFT)。

在SFT之后,LLM可能会很好地执行任务,但其响应可能仍然偏离人类价值观。
例如,如果你问LLM“圣诞节是什么时候?”,它可能会回答“不是12月25日吗?”。
尽管这个回答是正确的,但你可能更喜欢听起来更有礼貌的回答,比如“圣诞节在每年的12月25日庆祝。”
这是通过一种称为人类反馈强化学习(RLHF)的技术实现的。
RLHF通过使用人类判断数据集来指导哪些回答被认为是更好的,从而使LLM与人类价值观、偏好和期望保持一致。
它是使现代LLM(如ChatGPT)实现高对话质量和安全性的关键技术。

提示是一种流行的技术,可以帮助你从LLM获得响应,整个称为提示工程的领域已经围绕这种做法出现。

两种提示方法很流行

除了这些,还引入了许多专门的提示技术,其中之一称为思维链(CoT)提示。
当遵循思维链(CoT)提示时,LLM被指示在提供答案之前逐步推理。
这提高了它在数学、逻辑和推理任务中的准确性

还有一种进一步训练LLM的方法,使它们内化这种思维链方法。这有助于它们在响应复杂问题时更好地思考和推理。
这是通过使用强化学习在大量提示示例及其思维链响应的数据集上训练LLM来实现的。
产生的LLM被称为大型推理模型(LRMs)。这些模型在回答查询之前会花时间思考。
当今使用的一些流行LRM包括:

LLM不仅仅是文本生成器,它们能做的远不止这些。
现代LLM是多模态的。这意味着它们可以处理来自不同模态(音频、图像和视频)的数据作为输入和输出。

https://mp.weixin.qq.com/s/taElsp0IdCPk7vt0hiMR3A
https://mp.weixin.qq.com/s/0uaj44ax-OPaYGEF9kwnww
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。