Transformer Decoder-Only架构梳理

一. GPT-2 Decode-Only 架构概览

GPT-2 核心特点:

GPT-2 采用纯 Decoder 架构,与 BERT 的 Encoder 架构不同。核心创新在于使用 因果掩码(Causal Masking),确保模型在生成第 t 个词时只能看到前 t-1 个词,从而实现自回归生成。

二. Masked Multi Self Attention QKV计算流程

1. 投影计算 (Q, K, V Projection)

计算步骤:

  1. 输入嵌入:输入嵌入 X(维度为 Batch × SequenceLength × EmbeddingDimension)
  2. 权重矩阵:三个可学习的权重矩阵 W^Q、W^K、W^V,维度均为 D × D
  3. 生成 Q、K、V:输入嵌入分别与三个权重矩阵相乘
ini 复制代码
Q = X · W^Q
K = X · W^K
V = X · W^V

# W^Q, W^K, W^V: 模型的可学习参数
flowchart LR A[输入 X] --> B[W^Q] A --> C[W^K] A --> D[W^V] B --> E[Q] C --> F[K] D --> G[V] style A fill:#3498db,color:#fff style B fill:#f39c12,color:#fff style C fill:#f39c12,color:#fff style D fill:#f39c12,color:#fff style E fill:#9b59b6,color:#fff style F fill:#9b59b6,color:#fff style G fill:#9b59b6,color:#fff

📊 2. 计算注意力得分 (Attention Scores)

注意力得分的作用:

Scores= Q⋅KT dk \text{Scores} = \frac{Q \cdot K^T}{\sqrt{d_k}} Scores=dk Q⋅KT

通过点积计算当前词与其他词之间的相关性,值越大表示相关性越强。

3. 因果掩码 (Causal Masking)

因果掩码的作用:

这是 GPT-2 区别于 BERT 等编码器架构的关键步骤。为了确保模型在预测第 t 个词时只能"看到"前 t-1 个词,需要应用一个 上三角掩码矩阵

掩码操作:

操作 说明
创建掩码矩阵 创建一个与 Scores 同尺寸的下三角矩阵
填充上三角 将上三角部分(对角线以上)填充为 -∞
SoftMax 执行 SoftMax 后,这些位置的概率变为 0
scss 复制代码
AttentionWeights = softmax( (Q · K^T) / sqrt(d_k) + Mask )

# Mask: 上三角掩码矩阵,对角线以上填充为 -∞

掩码可视化(N=4):

4. 输出生成

最终,利用注意力权重对 Value 进行加权求和:

ini 复制代码
Output = AttentionWeights · V

三. Attention QKV 计算流程总结

完整六步流程:

  1. 定义 Q、K、V 权重矩阵:三个矩阵是可学习的权重参数,维度是 D × D(D 等于向量维度)
  2. 输入向量 X:输入维度为 N × D(N 等于输入序列长度,D 等于向量维度)
  3. 计算 Q、K、V 矩阵:输入向量 X 分别与 Q、K、V 权重矩阵相乘,得到新的 Q、K、V 矩阵,维度均为 N × D
  4. 计算 Attention 得分矩阵:Q 与 K 的转置相乘,生成得分矩阵,维度为 N × N,表示每个位置对其他位置的关注度
  5. 归一化处理(含掩码):除以 sqrt(d_k),添加因果掩码,然后进行 SoftMax
  6. 融合上下文信息:归一化后的注意力得分矩阵与 V 矩阵相乘,输出融合了上下文信息的新矩阵,维度为 N × D

📈 矩阵维度变化表

步骤 操作 矩阵名称 维度
1 输入 X N×DN \times D N×D
2 投影 Qw、Kw、Vw D×DD \times D D×D
3 计算 Q, K, V Q, K, V N×DN \times D N×D
4 计算得分 Q×KTQ \times K^T Q×KT N×NN \times N N×N
5 注意力加权(含掩码) Softmax(Score+Mask)\text{Softmax}(\text{Score} + \text{Mask}) Softmax(Score+Mask) N×NN \times N N×N
6 融合输出 Attention×VAttention \times V Attention×V N×DN \times D N×D

四. 核心要点总结

Decode-Only 架构特点

  • 纯 Decoder:只使用解码器结构,不使用编码器
  • 因果掩码:确保自回归生成,防止信息泄露
  • 自回归生成:逐词生成,每个词依赖于之前生成的词
  • KV 缓存:优化生成效率,避免重复计算

注意力机制的核心

概念 作用
Q(Query) 当前词要"找什么"
K(Key) 其他词"有什么"
V(Value) 其他词的"具体内容"
因果掩码 只允许关注前面的词

📚 关键概念

概念 英文 作用
因果掩码 Causal Masking 防止模型看到未来的词
自回归 Autoregressive 逐词生成,依赖之前的输出
KV 缓存 KV Cache 缓存中间结果,提升生成效率
缩放因子 Scaling Factor 防止点积过大导致梯度消失
注意力头 Attention Head 并行计算不同的注意力模式
相关推荐
水如烟1 小时前
孤能子视角:摩尔定律、韬定律 vs “摩尔制造“、“韬部署”?
人工智能
jerryinwuhan1 小时前
路径规划相关论文
人工智能
断春风1 小时前
Gemini 2.5 Flash Lite 高效落地实战指南
人工智能·ai编程
hai3152475431 小时前
九章编程法 · HTTP转发代理网关【终极完美版·矩阵步进交换】
人工智能·网络协议·线性代数·http·矩阵·极限编程
gptAI_plus1 小时前
别让 AI 瞎读项目:用 Node.js 生成项目上下文
人工智能
bryant_meng1 小时前
【Reading Notes】(10.4)Favorite Articles from 2026 April
人工智能·大模型·行业资讯·vibe coding
ZFSS2 小时前
VS Code + Hailuo MCP 使用指南
人工智能·ai·copilot·ai编程·ai写作
蜀道山老天师2 小时前
OpenClaw Skills 技能开发 + 企业运维全场景实战(进阶篇)
人工智能·windows·microsoft
AndrewHZ2 小时前
【LLM技术全景】开源大模型生态:如何选择适合你的基座模型?
人工智能·深度学习·语言模型·开源·llm·transformer·基座模型