Skip to content
0

大模型底层原理:从Transformer到GPT ​

1. 一句话定义大模型 ​

大语言模型(LLM)的本质是:一个经过海量文本训练的神经网络,核心能力是根据已输入的上下文,预测下一个最合理的词(Token)。

它不是"理解"语言,而是通过统计规律学会了语言的模式和结构。当你问它问题时,它只是在不断"接话"——基于前文生成最可能的下文。


2. 核心架构:Transformer ​

现代大模型几乎全部采用 Transformer 架构(2017年 Google 提出)。它取代了过去依赖循环的 RNN,成为 NLP 的基石。

2.1 整体结构 ​

Transformer 由两部分组成:

  • Encoder(编码器):读取输入,提取语义表示。BERT 只用 Encoder。
  • Decoder(解码器):基于前文生成后续内容。GPT 系列只用 Decoder。

大语言模型(如 GPT、Qwen、Llama)几乎都是 Decoder-only 架构。

2.2 三大核心机制 ​

(1)自注意力机制(Self-Attention) ​

这是 Transformer 的灵魂。

核心思想:让每个词都能"看到"句子中所有其他词,并动态决定该关注谁、关注多少。

例如句子:

"猫坐在垫子上,因为它累了。"

"它"应该关注"猫"而不是"垫子"。自注意力机制通过计算词与词之间的相关性权重,自动完成这种关联。

计算过程:

  1. 每个词被编码成三个向量:Query(查询)、Key(键)、Value(值)
  2. 用 Query 去"问"所有 Key,计算相似度(点积)
  3. 相似度经过 Softmax 变成注意力权重
  4. 用权重加权聚合所有 Value,得到当前词的上下文表示

公式:

textAttention(Q,K,V)=textsoftmaxleft(fracQKTsqrtdkright)Vtext{Attention}(Q, K, V) = text{softmax}left(frac{QK^T}{sqrt{d_k}}right)V

除以 sqrtdksqrt{d_k} 是为了防止点积值过大导致梯度消失。

(2)多头注意力(Multi-Head Attention) ​

不只做一次注意力,而是并行做多次,每次关注不同的语义维度:

  • 一个头关注语法关系(主谓宾)
  • 一个头关注语义关联(同义词)
  • 一个头关注长距离依赖

最后把所有头的结果拼接起来,形成更丰富的表示。

(3)位置编码(Positional Encoding) ​

Transformer 没有循环结构,不知道词的先后顺序。因此需要显式注入位置信息:

  • 绝对位置编码:给每个位置分配一个固定向量(如正弦/余弦函数)
  • 旋转位置编码(RoPE):现代主流方案,通过旋转矩阵将位置信息融入注意力计算,支持更长的上下文

Llama、Qwen 等现代模型都使用 RoPE。

2.3 前馈网络与残差连接 ​

每个 Transformer Block 还包含:

  • Feed-Forward Network(FFN):对每个位置独立做非线性变换,增加模型表达能力
  • LayerNorm + 残差连接:稳定训练,防止梯度消失,让深层网络可训练

GPT-3 有 96 层这样的 Block,堆叠越深,模型能力越强。


3. 训练三阶段 ​

大模型的训练不是一步到位,而是分阶段完成的。

3.1 预训练(Pre-training) ​

目标:让模型学会语言的通用规律和世界知识。

  • 数据:互联网公开文本(网页、书籍、论文、代码),通常达数万亿 Token
  • 任务:自监督学习——遮住后面的词,让模型预测下一个词
  • 计算量:极大,GPT-3 用了数千张 GPU 训练数周,消耗数百万美元
  • 输出:得到一个基座模型(Base Model),具备通用的语言理解和生成能力

预训练本质上是在做无损压缩:模型学会了用更短的参数表示海量文本中的规律。

3.2 有监督微调(SFT) ​

基座模型能生成文本,但不会"好好回答问题"。SFT 让模型学会对话格式和遵循指令。

  • 数据:人工编写的"问题-答案"对话对,通常数十万条
  • 任务:给定问题,生成标准答案
  • 效果:模型从"接话机器"变成"能听话、会回答的助手"

3.3 强化学习对齐(RLHF / DPO) ​

让模型的输出符合人类偏好——有用、无害、诚实。

RLHF 三步骤:

  1. 训练奖励模型(RM):人工对同一问题的多个回答打分,训练一个模型来评价回答好坏
  2. PPO 强化学习:用奖励模型指导基座模型优化,生成更高分的回答
  3. 迭代优化:多次循环,不断提升

DPO(Direct Preference Optimization):近年更流行的简化方案,直接用偏好数据优化,无需单独训练奖励模型,训练更稳定高效。


4. 推理过程:模型如何生成回答 ​

训练好的模型在运行时,每一步只做一件事:预测下一个 Token。

4.1 自回归生成 ​

用户输入:"请介绍Transformer"

Step 1: 输入 "请介绍Transformer" → 模型预测下一个词 → "是"
Step 2: 输入 "请介绍Transformer是" → 模型预测下一个词 → "一种"
Step 3: 输入 "请介绍Transformer是一种" → 模型预测下一个词 → "神经网络"
... 直到生成结束标记或达到最大长度

这就是**自回归(Auto-regressive)**生成:每次生成的输出,又会作为下一步的输入。

4.2 从分数到文本 ​

模型输出的是每个候选词的Logits(原始分数),需要经过以下步骤才能变成实际文本:

  1. Softmax 转概率:将分数变成 0~1 之间的概率分布
  2. 采样策略:
    • Greedy(贪心):永远选概率最高的词,结果确定但单调
    • Temperature 采样:用温度参数调整概率分布的"陡峭程度"
      • 温度低(0.1~0.5):保守、精准、重复性高
      • 温度高(1.0~2.0):创意、多样、可能胡言乱语
    • Top-K / Top-P(Nucleus)采样:只在概率最高的前 K 个或累积概率达 P 的词中采样,平衡多样性和质量

4.3 关键超参数 ​

参数作用推荐取值
Temperature控制生成随机性0.3(精准)~ 1.0(平衡)
Top-P核采样阈值0.9(常用)
Max Tokens最大生成长度根据任务设定
Repetition Penalty重复惩罚1.0~1.2

5. 模型规模与能力的关系 ​

5.1 参数规模 ​

大模型的"大"主要体现在参数量:

模型参数量特点
GPT-3175B开启了超大规模模型时代
LLaMA 27B / 13B / 70B开源标杆,70B 逼近 GPT-3.5
GPT-4~1.8T(MoE)混合专家架构,推理时激活约 10%
Qwen2.50.5B ~ 72B国产开源,小尺寸也能用

5.2 缩放定律(Scaling Laws) ​

OpenAI 2020年的研究发现:

模型性能随计算量、参数量、数据量三者同时提升而可预测地增长。

公式化表达:

L(N)∝N−αL(N) \propto N^{-\alpha}

其中 LL 是损失(越小越好),NN 是参数量。这意味着:只要扩大规模,模型就会变强——这是大模型浪潮的理论基础。

5.3 涌现能力(Emergent Abilities) ​

当模型大到一定程度(通常数十亿参数以上),会突然展现出小模型没有的能力:

  • 上下文学习(In-Context Learning):给几个示例就能学会新任务
  • 思维链(Chain-of-Thought):分步推理复杂问题
  • 指令遵循:理解并执行复杂指令

这些能力不是显式训练的,而是规模达到阈值后自然出现的。


6. 现代大模型的关键技术 ​

6.1 上下文窗口(Context Window) ​

模型一次能处理的 Token 数量。早期 GPT-3 只有 2K,现在主流模型支持 128K 甚至 1M+:

  • RoPE 基频调整:通过修改位置编码的基频,外推更长上下文
  • LongRoPE / YaRN:更高级的外推技术,让模型"记住"更远的内容
  • Ring Attention / 稀疏注意力:降低长序列的计算复杂度

6.2 量化(Quantization) ​

大模型占用显存巨大,量化通过降低参数精度来减少体积:

精度每参数占用70B 模型显存
FP324 字节~280 GB
FP16 / BF162 字节~140 GB
INT81 字节~70 GB
INT4 / NF40.5 字节~35 GB

量化后性能损失通常很小(<2%),但显存减半甚至减到 1/4,让消费级显卡也能跑大模型。

6.3 KV Cache ​

自回归生成时,每次都要重新计算所有前文。KV Cache 把已经算好的 Key 和 Value 存起来,下次直接复用:

  • 生成第 N 个词时,只需计算 1 个新位置的注意力
  • 时间复杂度从 O(N2)O(N^2) 降到 O(N)O(N)
  • 代价是额外显存占用(与序列长度成正比)

这是大模型推理加速的核心技术之一。


7. 总结 ​

维度核心要点
本质基于前文预测下一个 Token 的概率模型
架构Transformer Decoder,核心是 Self-Attention
训练预训练 → SFT → RLHF/DPO,三阶段递进
推理自回归生成,Temperature/Top-P 控制风格
规模参数越多、数据越多、计算越多,能力越强
部署量化 + KV Cache,降低资源消耗

理解这些底层原理,能帮助你:

  1. 更好地使用模型:知道为什么 Temperature 0.3 适合代码、1.0 适合创意写作
  2. 排查问题:明白"幻觉"源于概率采样的随机性和训练数据的局限
  3. 评估模型:不被营销参数迷惑,关注架构、训练数据和对齐质量

大模型不是魔法,它是统计学、线性代数、优化理论和工程实践的结晶。理解原理,才能真正驾驭它。

最近更新