60 秒回答模板

我会从输入、核心层和输出三部分讲。输入先做 token embedding,再加入位置编码,让模型知道顺序;每一层核心结构包括 Multi-Head Self-Attention、残差连接、LayerNorm 和前馈网络,Attention 负责让每个 token 聚合上下文信息,FFN 负责非线性变换。Encoder 适合理解整段输入,Decoder 会加 causal mask 做自回归生成。整体流程就是嵌入、位置、注意力交互、前馈变换、多层堆叠和任务头输出。

考点 Embedding 加位置
难度 真实面经题
回答目标 讲清方法、取舍和追问

深入解析

01

输入先变成向量

文本会被切成 token,再映射为 embedding。由于注意力本身不携带顺序信息,还要加入位置编码或相对位置机制,否则模型无法区分相同 token 在不同位置的意义。

02

注意力负责上下文交互

Self-Attention 会为每个位置生成 Q、K、V,通过 QK 相似度得到注意力权重,再对 V 做加权聚合。多头注意力让不同子空间关注不同关系,例如语义、语法、长距离依赖或局部模式。

03

前馈网络增强表达

Attention 之后通常接前馈网络,对每个位置独立做非线性变换。残差连接和 LayerNorm 保持梯度稳定,使模型可以堆叠很多层而不容易训练崩掉。

04

Encoder 和 Decoder 分工

Encoder 的 self-attention 通常能看到完整输入,适合理解和表征;Decoder 的 self-attention 使用 causal mask,只能看当前位置之前的 token,适合逐步生成。

05

输出接任务目标

分类任务会在上下文表示上接分类头,生成任务会把每个位置映射到词表概率。训练时用目标函数约束输出,推理时再结合解码策略生成最终结果。

易错点

  • 不要只背 Encoder、Decoder 名字而不讲 token、位置、注意力和前馈网络的流动关系。
  • 不要把 Attention 说成固定权重,它是随输入动态计算的上下文聚合。
  • 不要漏掉残差连接和 LayerNorm,它们是深层 Transformer 稳定训练的关键。

面试官追问

为什么 Transformer 需要位置编码?

Attention 本身对输入顺序不敏感,不加入位置信息就无法区分 token 的相对或绝对顺序。

Multi-Head Attention 的意义是什么?

多头把表示拆到多个子空间,让模型同时学习不同类型的依赖关系,再拼接融合。

Decoder 为什么要用 mask?

自回归生成不能提前看到未来 token,causal mask 会屏蔽后续位置,保证训练和推理目标一致。