Skip to content

下面这两讲可以看成一条主线:Lecture 11 解释“Transformer 为什么成为基础架构”,Lecture 12 解释“Transformer 如何通过预训练变成基础模型”。也就是说,前一讲讲模型结构,后一讲讲训练范式。内容依据 lecture-11.pdf 和 lecture-12.pdf。

Lecture 11–12 总体进化树

text
传统序列模型 RNN/LSTM
        ↓  长距离依赖难、梯度传播难、并行性差
Attention / Self-Attention
        ↓  直接建立任意 token 间的信息通路
Transformer
        ↓  位置编码 + 多头注意力 + MLP + LayerNorm + Residual
可大规模训练的序列建模架构

预训练范式

BERT: Masked LM,双向理解型模型
GPT/LLaMA: Autoregressive LM,生成型模型

Pre-training → Mid-training → Post-training

基础模型 / 助手模型 / 下游任务适配

核心目标不是只记“Transformer 有哪些模块”,而是理解:为什么这些模块共同解决了大规模语言建模的三个根本问题:如何表达长距离依赖,如何稳定训练深层网络,如何用统一目标从大规模文本中学习可迁移表示。

1. Transformer 的核心问题:为什么需要它?

重要程度:★★★★★

Transformer 起点是 2017 年论文 “Attention is All You Need”。课件强调它后来扩展到 NLP、CV、robotics、data science,并成为 GPT-like 应用的基础。

RNN/LSTM 的主要问题是:序列信息必须一步步传递。如果句子是:

I grew up in France, where I spent many years surrounded by my family and friends, so I speak fluent French.

模型最后预测 “French” 时,真正关键的信息是很远处的 “France”,但最近的 “fluent” 会强烈影响预测。RNN 中远距离信息经过多次权重矩阵乘法,容易被中间词修改、稀释,导致长距离依赖难学。

Transformer 的解决思路是:不要让信息逐步传递,而是让每个 token 可以直接看见其他 token。Self-attention 把任意两个 token 之间建立直接连接,因此长距离依赖变成一次矩阵计算,而不是多步 recurrent propagation。

2. Transformer 的模块拆解

重要程度:★★★★★

课件把 Transformer 拆成五个核心组件:

模块作用解决的问题重要程度
Positional Embedding注入位置信息Self-attention 本身不区分顺序★★★★★
Multi-head Attention建立 token 间依赖解决长距离依赖★★★★★
MLP / Feed Forward引入非线性变换Attention 只是 value 的线性组合★★★★☆
Layer Normalization稳定激活尺度防止 softmax 饱和和梯度消失★★★★★
Residual Connection保留信息和梯度通路深层网络可训练★★★★★

Transformer 的表达能力主要来自 Attention + MLP;可训练性主要来自 Residual + LayerNorm。课件明确把前者归为 “More expressiveness”,后者归为 “Easier to train large models”。

3. Positional Embedding:为什么 Transformer 必须知道位置?

重要程度:★★★★★

Self-attention 本质上是集合式计算。如果没有位置编码,句子中的相同词会有相同 embedding。例如:

Trust is what builds trust

两个 “trust” 的词向量本来相同,但第一个 “trust” 在句法上是主语,第二个 “trust” 是宾语;语义上一个是“建立信任的主体”,另一个是“被建立的信任”。因此 token identity 不够,必须加入 position identity。

固定位置编码公式为:

其中:

:token 在序列中的位置。

:embedding 维度索引的一半;偶数维使用 sine,奇数维使用 cosine。

:embedding 总维度。

:位置 在第 个维度上的位置编码。

:位置 在第 个维度上的位置编码。

最终输入表示为:

其中 是 token 的词向量, 是第 个位置的位置编码。

直觉是:词向量告诉模型“这个词是什么”,位置编码告诉模型“这个词在哪里”。例如课件中 “The cat sat” 的 running example,就是把每个词的 embedding 与对应位置的 sinusoidal encoding 相加。

4. Attention:Transformer 的核心计算

重要程度:★★★★★

Self-attention 的目标是:对每个 token,计算它应该从其他 token 读取多少信息。

输入张量:

其中:

:batch size。

:sequence length / token length。

:embedding dimension,也等于

:number of heads。

:每个 head 的 hidden size。

Transformer 通过线性层生成 Query、Key、Value:

课件中的实现写法是:

其 shape 为:

生成后张量被 reshape 成多头格式:

Attention score 的核心公式是:

然后输出:

其中:

:query,表示当前位置想找什么信息。

:key,表示每个位置能提供什么索引特征。

:value,表示真正被读取的信息内容。

:计算 token 之间的匹配分数。

:缩放因子,防止内积随着维度增大而数值过大。

:attention matrix,shape 为

:attention 输出,shape 为

课件 quiz 也强调 attention matrix 的计算公式:

5. 为什么要除以

重要程度:★★★★★

如果 的维度很高,内积 的数值尺度会变大。softmax 对尺度非常敏感,过大的 logits 会导致某个位置概率接近 1,其他位置接近 0,也就是 softmax saturation。

例如课件给出:

但:

后者几乎变成 one-hot,梯度会非常小。因此使用:

控制 attention logits 的尺度。

6. Causal Attention:为什么 GPT 不能看未来?

重要程度:★★★★★

在自回归语言模型中,预测第 个 token 时只能使用 的历史,不能看未来 token。因此需要 causal mask。

原始 attention score:

加入 mask 后:

然后:

由于:

未来位置的 attention 权重会变成 0。课件用 PyTorch 示例说明,含有 的位置 softmax 后概率为 0。

7. Multi-head Attention:为什么需要多个 head?

重要程度:★★★★☆

单个 attention head 只能学习一种匹配关系。多头注意力让模型在不同子空间中学习不同关系,例如语法依赖、实体指代、局部搭配、长距离语义联系等。

每个 head 的输出:

所有 head 拼接:

最终 shape 从:

转回:

课件第 11 页特别强调这个 re-assemble all head outputs side by side 的过程。

8. MLP / Feed Forward Layer:Attention 为什么还不够?

重要程度:★★★★☆

课件指出:self-attention 只能得到 value vectors 的线性组合。如果模型需要非线性表达,仅靠 attention 不够。

MLP 的结构是:

通常先升维再降维:

其中:

:升维投影矩阵。

:降维投影矩阵。

GeLU:非线性激活函数。

输入输出维度必须相同,因为 Transformer block 要堆叠很多层。如果每层输出维度不同,就无法方便地反复堆叠。

9. Layer Normalization:为什么训练深层 Transformer 需要归一化?

重要程度:★★★★★

LayerNorm 的直觉是:同一层内所有神经元的激活尺度应该保持稳定;经过很多层后,激活尺度也不应该爆炸或消失。

公式为:

其中:

:某个 token 在某层的 hidden vector。

:该 hidden vector 各维度的均值。

:该 hidden vector 各维度的方差。

:防止除零的小常数。

:可学习缩放参数。

:可学习平移参数。

注意 LayerNorm 是对一个样本内部的 feature 维度归一化,而 BatchNorm 是跨 batch 归一化。Transformer 通常使用 LayerNorm,因为 NLP 序列长度、batch 结构更复杂,而且生成任务中 batch statistics 不稳定。

课件例子中,一个样本的 feature 为:

均值约为:

标准差约为:

归一化后第一维:

其余维度类似。这样不同 activation 之间尺度差异变小,softmax 不容易饱和,梯度更稳定。

10. Residual Connection:为什么深层 Transformer 可训练?

重要程度:★★★★★

Residual connection 的形式是:

更完整的 Pre-LN Transformer block 可以写成:

Residual 的直觉是:如果某层对某个 token 没必要做变换,就让 MHA 或 MLP 学成接近 0,直接把原始信息传到下一层。

课件给的例子是:直接学习从

映射到

较难;但学习 residual update:

更容易。课件文字中写成 residual “[-1,-1,1,1]”,但从数值差分看,如果目标减输入,应是 ;如果输入减目标,则是 。考试时重点是理解 residual 学的是“增量修正”。

11. Residual Stream 与 Mechanistic Interpretability

重要程度:★★★☆☆

课件给了 Transformer 的另一种视角:residual-centered view。Attention 和 MLP 不是彻底重写 representation,而是从 residual stream 读取信息,计算一个小更新,再写回 residual stream。

因此最终 hidden state 可以理解为:

其中:

:初始 embedding。

:第 层 attention 写入的更新。

:第 层 MLP 写入的更新。

:最终 residual stream。

这使得 mechanistic interpretability 成为可能:可以把中间层 hidden state 通过最终 unembedding layer 投影到 vocabulary logits,看模型在某一层“此刻认为下一个词是什么”。课件展示了模型预测从浅层 bigram guess 到深层复杂事实预测的演化。

12. Transformer 训练:Next Token Prediction

重要程度:★★★★★

训练流程:

text
Raw text

Tokenizer / encoder

Token indices

保存为 binary files

随机采样 batch

输入 x,目标 y

next-token prediction loss

对于长度为 的 block:

模型目标是预测下一个 token:

训练损失:

课件中 batch_size=4、block_size 为上下文长度,每次随机从总 token 序列中切片取训练样本。

13. Transformer 推理:为什么生成慢?

重要程度:★★★★☆

推理时输入:

Transformer 输出最后一个位置的 logits:

其中 是 vocabulary size。

然后可以做 top-k sampling:

text
logits → softmax → probabilities → sample next token

再把新 token 拼回序列,重复生成。

低效点有两个:

第一,自回归生成必须 token-by-token for loop。

第二,如果没有 KV cache,每生成一个新 token,都要重新 forward 所有历史 token。课件明确指出 inference inefficiency:每个 token 需要循环生成,且所有 previous tokens 都要重新 forward。

14. Lecture 12:从训练-测试范式到 Pretrain–Adapt 范式

重要程度:★★★★★

传统机器学习常见范式是:针对某任务训练,再在测试集上评估。但 LLM 更像:

text
Pre-training

Base foundation model

Mid-training / domain continued training

Post-training / alignment

Assistant model

Downstream adaptation / prompting / fine-tuning

课件定义:

Pre-training:让模型学习语言、语法、推理、大量世界知识。

Mid-training:在特定高质量领域继续训练,加深专业能力,同时尽量不丢失通用能力。

Post-training / alignment:把 base model 转换成能遵循指令、符合人类偏好的 assistant,常见方法包括 SFT 和 RLHF。

厨师类比:

阶段类比数据结果
Pre-training学习所有烹饪基础大规模通用文本会做很多菜的基础厨师
Mid-training专精法国菜高质量领域数据某领域专家
Post-training学餐厅菜单和服务规范指令、偏好数据能服务顾客的主厨

15. 为什么 Pre-training 有用?

重要程度:★★★★★

课件给出两个核心原因。

第一,可迁移性。预训练参数可以初始化 BERT 等模型,然后 fine-tune 到多个下游任务,包括 sentence classification、NER、QA、NLI 等。

第二,性能更好。相比从零训练,预训练把参数带到更平滑、更有利的 loss landscape,使优化更容易,尤其在标注数据少时更明显。

可以形式化理解为:从随机初始化开始优化下游任务:

而预训练后 fine-tuning 是:

预训练不是直接解决所有任务,而是提供一个更好的初始点。

16. 影响 Pre-training 的四个因素

重要程度:★★★★★

因素作用课件判断重要程度
Model architecture决定表达能力和可扩展性important but fixed★★★★☆
Training objective决定模型学习方式important but fixed★★★★★
Data数量、质量、覆盖范围very important★★★★★
Hyperparameters学习率、batch size 等大数据下相对不那么关键★★★☆☆

课件特别强调:当 architecture 和 objective 基本固定后,data 变得非常关键。

17. 数据:Quantity, Quality, Coverage

重要程度:★★★★★

常见预训练数据包括:

Books、Wikipedia、Common Crawl、social media、open-source code repositories。

数据三要素:

Quantity:总 token 数。例如 LLaMA 1 使用 1.4T tokens,LLaMA 2 使用 1.8T tokens,LLaMA 3 使用 15T tokens,DeepSeek3 使用 15T tokens。

Quality:是否适合训练。包括 filtering 和 deduplication。

Coverage:是否覆盖目标领域,以及比例是否合理。

数据清洗中:

Filtering 是去掉不想要的文本。

Deduplication 是去重,避免模型反复看到重复样本,浪费容量并增加 memorization 风险。课件引用 FineWeb 的结果说明 filtering 和 deduplication 会提升 accuracy。

18. 两类核心预训练目标:MLM vs ARLM

重要程度:★★★★★

课件把预训练目标分成两类:

目标代表模型上下文方向适合任务主要缺点
Masked Language ModelingBERT双向上下文理解、分类、抽取预训练与生成不一致
Autoregressive Language ModelingGPT/LLaMA左到右生成、prompting生成慢、只能看左上下文

19. Masked Language Modeling:BERT 的目标

重要程度:★★★★★

MLM 的思想:把输入中一部分词替换为特殊 token [MASK],模型根据上下文预测被 mask 的词。

Encoder 输出:

对第 个位置预测:

其中:

:第 个 token 的上下文表示。

:从 hidden dimension 到 vocabulary size 的线性映射。

:bias。

:第 个位置的 vocabulary logits。

如果 是 masked version of ,模型学习:

但 loss 只加在被 mask 的位置上:

其中 是 masked token positions。

BERT 的细节:

随机选 15% word tokens 预测。

其中 80% 替换成 [MASK]。

10% 替换成 random token。

10% 保持原词不变,但仍然预测它。

这么做的原因是:fine-tuning 时没有 [MASK],如果预训练时总是看到 [MASK],会造成 train-test mismatch。

20. BERT 输入表示

重要程度:★★★★☆

BERT 的最终输入 embedding 是三部分相加:

其中:

:token embedding。

:segment embedding,表示属于 sentence A 还是 sentence B。

:position embedding。

BERT 还使用特殊 token:

[CLS]:放在序列开头,用于整体句子表示或分类。

[SEP]:分隔两个句子。

21. BERT 的规模与结果

重要程度:★★★☆☆

BERT Base:

12 layers,768 hidden size,12 heads,110M parameters。

BERT Large:

24 layers,1024 hidden size,16 heads,340M parameters。

课件总结:larger is better。BERT 在 QQP、QNLI、SST-2、CoLA、STS-B、MRPC、RTE 等任务上 fine-tuning 后取得强结果。

22. Autoregressive Language Modeling:GPT 的目标

重要程度:★★★★★

ARLM 的核心是从左到右生成:

其中 可以是 source context。

Transformer 输出 hidden states:

预测下一个 token:

课件给出的自回归预训练目标为:

其中:

:模型参数。

:训练数据。

:第 个 token。

:第 个 token 之前的上下文。

:模型对下一个 token 的条件概率。

这个目标和推理过程一致:训练时预测下一个词,推理时也是不断预测下一个词。

23. ARLM 的优缺点

重要程度:★★★★★

优点:

目标统一简单。

训练过程和推理过程一致。

scaling behavior 强,适合大模型、大数据。

缺点:

只能使用 left-to-right context。

自回归生成慢。

生成过程中会 error accumulation:前面生成错了,后面会基于错误上下文继续生成。

24. GPT:Generative Pretrained Transformer

重要程度:★★★★☆

GPT 是 Generative Pretrained Transformer。课件中 GPT 2018 的配置:

Transformer decoder。

12 layers。

117M parameters。

768-dimensional hidden states。

3072-dimensional feed-forward hidden layers。

BPE with 40,000 merges。

训练数据 BooksCorpus,超过 7000 本书。

GPT 下游任务做法是:把任务转成文本格式,然后在 Transformer 输出上加 linear layer。例如分类、entailment、similarity、multiple choice 都可以被包装成 sequence input,再接 Transformer + Linear。

25. LLaMA:大规模自回归预训练

重要程度:★★★★☆

课件以 LLaMA 为例:

模型规模:6.7B、13B、32B、65B。

数据量:1.4 trillion tokens。

数据来源包括 CommonCrawl、C4、Github、Wikipedia、Books、ArXiv、StackExchange。

训练 loss 图说明:更多 tokens 会降低 loss,更大模型通常有更低 loss。也就是:

text
More data + larger model → better training loss

但这不等于无限扩大一定最优,因为真实系统还受算力、数据质量、过拟合、推理成本约束。

26. BERT vs GPT:考试最容易考的对比

重要程度:★★★★★

维度BERTGPT
架构Transformer EncoderTransformer Decoder
预训练目标Masked Language ModelingAutoregressive Language Modeling
上下文双向单向,left-to-right
是否 causal mask通常不需要需要
典型用途理解、分类、抽取、匹配生成、对话、prompting
训练-推理一致性较弱,因为 [MASK] 不在 fine-tuning 出现强,训练和推理都是 next-token prediction
缺点不自然生成文本生成慢、错误累积

27. 两讲的最终核心逻辑

重要程度:★★★★★

Lecture 11 的核心:

text
RNN/LSTM 长距离依赖困难

Self-attention 直接连接 token

Transformer 获得强表达能力

Residual + LayerNorm 让深层模型可训练

MLP 提供非线性加工

Position encoding 补充顺序信息

Lecture 12 的核心:

text
Transformer 是强架构

但强架构需要大规模数据训练

Pre-training 学通用语言与知识

不同 objective 产生不同模型家族
      ├── MLM → BERT → understanding
      └── ARLM → GPT/LLaMA → generation

Pretrain → Mid-train → Post-train 构成现代 LLM pipeline

28. 期末考试重点清单

★★★★★ 必会:

Attention 公式:

Causal mask 为什么用

LayerNorm 公式和作用。

Residual connection 的作用。

MLM objective。

ARLM objective。

BERT vs GPT 区别。

Pre-training 为什么提升 transferability。

★★★★☆ 应会:

Multi-head attention shape 变化。

MLP 为什么升维再降维。

Positional encoding sine/cosine 公式。

Inference 为什么慢。

Data quality:filtering 和 deduplication。

★★★☆☆ 了解:

Mechanistic interpretability / residual stream。

Logit lens / intermediate unembedding。

LLaMA 数据组成和 scaling trend。

29. Quiz 级别答案整理

Lecture 11:

Q1: Layer normalization makes model training more stable.

答案:True。

Q2: Attention mechanism scales linearly with sequence length.

答案:False。Attention matrix 是 ,复杂度是:

Q3: Attention matrix equation:

Q4: Which is not part of Transformer architecture?

答案:C) interpretability。

Lecture 12:

Q1: Autoregressive pretraining objective:

Q2: Pretrained models can be further fine-tuned for other tasks.

答案:True。

Q3: BERT and GPT both use Transformer architecture but different pretraining objectives.

答案:True。

Static academic notes built with VitePress and KaTeX.