Transformer 与注意力

返回大模型

Transformer 是当前绝大多数 LLM 的主干:用 自注意力(Self-Attention) 在整段 token 上建模依赖,配合 前馈层(FFN)残差 + LayerNorm 堆叠成深层网络。与 RNN 相比,并行度高、长程依赖更直接,但计算与显存随序列长度平方增长(标准注意力)。


缩略结构(编码器式)

输入 token → Embedding + 位置编码
         → [ 多头自注意力 → Add&Norm → FFN → Add&Norm ] × L
         → 线性层 / LM Head → 下一词 logits

解码器(如 GPT)在自注意力上使用 因果掩码:位置 i 只能看见 ≤ i 的 token。许多开源权重是 仅解码器 堆栈。


缩放点积注意力(概念公式)

对查询 (Q)、键 (K)、值 (V):

[ \mathrm{Attention}(Q,K,V) = \mathrm{softmax}\left(\frac{QK^\top}{\sqrt{d_k}}\right)V ]

多头(Multi-Head):把 (d) 维拆成 (h) 个头并行算,再拼接投影;等价于在不同子空间捕获不同依赖模式。


位置信息

方式说明
绝对位置编码(早期)正弦或可学习向量加到 embedding
RoPE旋转位置嵌入,相对关系在注意力中自然体现,主流 LLM 常用
ALiBI 等外推/长上下文相关技巧族

复杂度与工程直觉

  • 自注意力:时间/显存 (\sim O(n^2))(序列长度 (n));超长上下文会成瓶颈。
  • KV Cache:解码时缓存已生成 token 的 K/V,避免重复计算;显存与上下文长度线性相关。
  • FlashAttention 等:通过分块与 IO 优化在 GPU 上降低实际耗时。

更偏 训练与算子 的细节可对照站内 LLM 基础深度学习


相关文档