第十六章:Transformers --- 单元习题
总分:100分 | 建议用时:60分钟
范围:Attention机制、QKV、多头注意力、Transformer层、位置编码
占位图

一、单项选择题(每题2分,共20题,40分)
1. MLP处理图像时的主要问题是?
A. 计算太慢
B. 每像素独立参数→参数爆炸+固定输入大小
C. 不能做分类
D. 无法使用GPU
2. CNN相比MLP的核心优势是?
A. 参数量更大
B. 权重共享→参数高效+平移不变性
C. 不需要激活函数
D. 输入必须固定大小
3. Attention的核心思想是什么?
A. 所有token同等对待
B. 用加权平均聚合上下文(相关token权重大,不相关权重小)
C. 随机选择上下文
D. 仅使用最近的token
4. Q(Query)、K(Key)、V(Value)分别由什么得到?
A. 手工设计
B. 输入X分别乘以三个可学习的权重矩阵W(Q),W(K),W(V)W^{(Q)},W^{(K)},W^{(V)}W(Q),W(K),W(V)
C. 随机初始化后固定
D. 从标签中学习
5. 为什么Attention中Q和K需要分开?
A. 为了减少参数量
B. 相关性关系可能是非对称的(bank→river但river不一定→bank)
C. 没有特别原因
D. 为了加速计算
6. Scaled Dot-Product Attention中除以Dk\sqrt{D_k}Dk 的目的是?
A. 增大注意力权重
B. 防止内积方差过大→Softmax梯度消失→稳定训练
C. 减少计算量
D. 增加模型参数量
7. Softmax在Attention中的作用是?
A. 激活函数
B. 将内积分数转为概率分布(非负、和为1)→注意力权重
C. 减少维度
D. 正则化
8. Self-Attention层的参数量是?
A. O(N2)O(N^2)O(N2)
B. 0 (仅依赖K,Q,V,无自身参数)
C. O(D2)O(D^2)O(D2)
D. O(ND)O(ND)O(ND)
9. Multi-Head Attention的核心思想是?
A. 增加网络层数
B. 多个并行注意力头→不同头捕捉不同关系→拼接后线性变换
C. 减少参数量
D. 替代MLP
10. Transformer层中为什么需要MLP?
A. 增加参数量
B. Attention输出是线性组合→MLP引入非线性→增强表达能力
C. 替代Attention
D. 减少计算量
11. Transformer层使用的归一化是?
A. Batch Normalization
B. Layer Normalization
C. Instance Normalization
D. Group Normalization
12. 为什么Transformer使用LayerNorm而非BatchNorm?
A. BN效果更好
B. LN每token独立归一化→天然支持并行+可变序列长度
C. LN计算更快
D. 没有特别原因
13. 为什么需要位置编码(Positional Encoding)?
A. 增加参数量
B. Self-Attention是置换等变的→不感知token顺序→需要注入位置信息
C. 加速训练
D. 正则化
14. Sinusoidal位置编码的核心优势是?
A. 需要大量参数
B. 可表达相对位置(旋转矩阵特性)+支持任意序列长度
C. 只适用于短文本
D. 比Learned PE更准确
15. 位置编码通常如何加入输入?
A. x~n=xn⋅rn\tilde{\mathbf{x}}_n = \mathbf{x}_n \cdot \mathbf{r}_nx~n=xn⋅rn
B. x~n=xn+rn\tilde{\mathbf{x}}_n = \mathbf{x}_n + \mathbf{r}_nx~n=xn+rn(加法)
C. x~n=xn;rn\tilde{\mathbf{x}}_n = \\mathbf{x}_n; \\mathbf{r}_nx~n=xn;rn(拼接)
D. x~n=rn\tilde{\mathbf{x}}_n = \mathbf{r}_nx~n=rn
16. GQA(Grouped Query Attention)相比MHA的改进是?
A. 更多头数
B. 多个Q头共享同一组K和V→减少存储+计算→效率更高
C. 取消Attention
D. 增加参数量
17. Transformer中残差连接的作用是?
A. 装饰
B. 提供梯度直通路径→缓解梯度消失→稳定深层训练
C. 减少参数量
D. 替代LayerNorm
18. Attention的计算复杂度是?
A. O(N)O(N)O(N)
B. O(N2)O(N^2)O(N2)(N=token数)
C. O(D)O(D)O(D)
D. O(1)O(1)O(1)
19. CLS特殊token的作用是?
A. 增加序列长度
B. 其最终输出=整个序列的聚合语义表示→用于分类任务
C. 正则化
D. 位置编码
20. 关于Encoder Transformer,正确的是?
A. 包含Decoder
B. 标准架构用于视觉/语言嵌入→重复Transformer Block→输出用于下游任务
C. 不需要位置编码
D. 只适用于文本
二、判断题(每题2分,共15题,30分。正确打√,错误打×)
21. CNN的局部感受野意味着浅层神经元看不到全局上下文。( )
22. Attention权重αni\alpha_{ni}αni可以不是概率分布(不需要和为1)。( )
23. Self-Attention的输出是V的加权和,权重由Q和K的内积+Softmax决定。( )
24. Scaled Dot-Product中除以Dk\sqrt{D_k}Dk 是因为DkD_kDk越大内积期望方差越大。( )
25. Self-Attention层本身没有任何可学习参数。( )
26. Multi-Head Attention的总参数量与单头Attention相同(假设总维度不变)。( )
27. Transformer层中MLP对每个token独立处理(token-level)。( )
28. LayerNorm在Transformer中的统计量跨batch维度计算。( )
29. 不使用位置编码时,Transformer对输入token的顺序敏感。( )
30. Sinusoidal PE可以通过旋转矩阵查询相对位置。( )
31. Learned PE的一个局限是需要预设最大序列长度N。( )
32. 位置编码采用拼接(concatenation)而非加法加入token embedding。( )
33. Encoder Transformer中不同层共享权重参数。( )
34. Transformer中的残差连接帮助梯度更顺畅地流过深层网络。( )
35. GQA是MHA和MQA之间的折中方案。( )
三、简答题(每题5分,共3题,15分)
36. 请从QKV机制出发,完整描述Scaled Dot-Product Self-Attention的计算流程。为什么需要除以Dk\sqrt{D_k}Dk ?
37. 请说明Transformer层的完整结构(Attention→残差→LN→MLP→残差→LN),解释每个组件的作用。
38. 为什么需要位置编码?请对比Learned PE和Sinusoidal PE两种方法的优缺点。
四、计算题(每题5分,共3题,15分)
39. 某Transformer有N=5个token,Dk=64D_k=64Dk=64。计算Attention矩阵α\boldsymbol{\alpha}α的大小和计算复杂度(用大O表示)。
40. 已知两个token的Key和Query向量:q1=1,0T,k1=1,0T,k2=0,1T\mathbf{q}_1=1,0^T, \mathbf{k}_1=1,0^T, \mathbf{k}_2=0,1^Tq1=1,0T,k1=1,0T,k2=0,1T。
(1) 计算token 1对token 1和token 2的原始注意力分数(内积)。
(2) 若Dk=2D_k=2Dk=2,计算Scaled后的分数。
(3) 经过Softmax后的注意力权重(近似即可,e0.707≈2.03,e0=1e^{0.707}\approx2.03, e^0=1e0.707≈2.03,e0=1)。
41. 某MHA有H=8个头,D=512D=512D=512(模型总维度),每头的DvD_vDv和DkD_kDk分别是多少(典型设置)?
试卷结束,请认真检查。
第十六章:Transformers --- 单元习题答案
一、单项选择题答案
| 题号 | 答案 | 解析 |
|---|---|---|
| 1 | B | MLP=每像素独立参数→P2P^2P2权重→爆炸+固定输入 |
| 2 | B | CNN=权重共享+平移不变性→参数高效 |
| 3 | B | Attention=加权平均→相关token权重大 |
| 4 | B | V=XW(V),K=XW(K),Q=XW(Q)\mathbf{V}=\mathbf{X}W^{(V)},\mathbf{K}=\mathbf{X}W^{(K)},\mathbf{Q}=\mathbf{X}W^{(Q)}V=XW(V),K=XW(K),Q=XW(Q) |
| 5 | B | 相关性非对称→KQ分离允许定向查询 |
| 6 | B | DkD_kDk大→内积方差大→Softmax饱和→除以Dk\sqrt{D_k}Dk 稳定 |
| 7 | B | Softmax→非负+和为1→概率分布=注意力权重 |
| 8 | B | Attention层=αV\boldsymbol{\alpha}\mathbf{V}αV→纯运算无参数 |
| 9 | B | MHA=H个并行头→拼接→W(O)W^{(O)}W(O)线性变换 |
| 10 | B | Attention=线性组合→MLP=非线性→增强表达 |
| 11 | B | Transformer=LayerNorm(每token独立→并行友好) |
| 12 | B | LN每token独立→无需跨batch通信→天然并行+支持可变N |
| 13 | B | Attention置换等变→不感知顺序→需PE注入位置信息 |
| 14 | B | Sinusoidal=任意N+相对位置(旋转矩阵) |
| 15 | B | x~n=xn+rn\tilde{\mathbf{x}}_n=\mathbf{x}_n+\mathbf{r}_nx~n=xn+rn(加法→高维近似正交) |
| 16 | B | GQA=多Q头共享一组KV→效率+表达力折中 |
| 17 | B | 残差连接→梯度直通→缓解消失→深层稳定训练 |
| 18 | B | QKT\mathbf{Q}\mathbf{K}^TQKT=N×NN\times NN×N→O(N2)O(N^2)O(N2) |
| 19 | B | CLS经所有层后=整句语义→分类 |
| 20 | B | Encoder=token embed+PE+堆叠Blocks→下游任务 |
二、判断题答案
| 题号 | 答案 | 解析 |
|---|---|---|
| 21 | √ | CNN浅层感受野小→高层才有全局视野 |
| 22 | × | Softmax保证∑α=1\sum\alpha=1∑α=1且非负=概率分布 |
| 23 | √ | Attention=Softmax(QKT/Dk)V\text{Attention}=\text{Softmax}(\mathbf{Q}\mathbf{K}^T/\sqrt{D_k})\mathbf{V}Attention=Softmax(QKT/Dk )V |
| 24 | √ | Var(qTk)∝Dk\text{Var}(\mathbf{q}^T\mathbf{k})\propto D_kVar(qTk)∝Dk→缩放稳定 |
| 25 | √ | Attention层无参数→参数在W(Q/K/V)W^{(Q/K/V)}W(Q/K/V)中 |
| 26 | √ | 每头维度D/HD/HD/H→总参数(D×D/H×H)=D2(D\times D/H\times H)=D^2(D×D/H×H)=D2相同 |
| 27 | √ | MLP对每个token独立应用→token-level |
| 28 | × | LN统计量跨特征维度(同样本内),非batch维度 |
| 29 | × | 无PE→Attention置换等变→对顺序不敏感 |
| 30 | √ | Sinusoidal存在RΔ\mathbf{R}\DeltaRΔ:rn−Δ=RΔrn\mathbf{r}{n-\Delta}=\mathbf{R}_\Delta\mathbf{r}_nrn−Δ=RΔrn |
| 31 | √ | Learned PE需预设NmaxN_{max}Nmax→超长序列问题 |
| 32 | × | PE=加法 x+r\mathbf{x}+\mathbf{r}x+r(非拼接) |
| 33 | × | 不同层有独立权重 |
| 34 | √ | 残差=+x+\mathbf{x}+x→梯度绕过层→直接回传 |
| 35 | √ | GQA=MHA(全独立)和MQA(全共享)之间→多Q头+共享KV组 |
三、简答题参考答案
36. Scaled Dot-Product Attention
参考答案:
流程:
- Q=XW(Q),K=XW(K),V=XW(V)\mathbf{Q}=\mathbf{X}W^{(Q)},\mathbf{K}=\mathbf{X}W^{(K)},\mathbf{V}=\mathbf{X}W^{(V)}Q=XW(Q),K=XW(K),V=XW(V)
- 内积:Z=QKT\mathbf{Z}=\mathbf{Q}\mathbf{K}^TZ=QKT(N×NN\times NN×N)
- 缩放:Z/Dk\mathbf{Z}/\sqrt{D_k}Z/Dk
- Softmax(逐行):α=SoftMax(Z/Dk)\boldsymbol{\alpha}=\text{SoftMax}(\mathbf{Z}/\sqrt{D_k})α=SoftMax(Z/Dk )
- 加权:Output=αV\text{Output}=\boldsymbol{\alpha}\mathbf{V}Output=αV
缩放原因 :Var(qTk)∝Dk\text{Var}(\mathbf{q}^T\mathbf{k})\propto D_kVar(qTk)∝Dk→DkD_kDk大时内积值很大→Softmax饱和(梯度接近0)→除Dk\sqrt{D_k}Dk 使方差≈1。
37. Transformer层结构
参考答案:
X → Multi-Head Attention → +X(残差) → LayerNorm →
MLP(2层) → +残差 → LayerNorm → Output
| 组件 | 作用 |
|---|---|
| Multi-Head Attention | 聚合全局上下文(加权平均) |
| 残差连接(+X) | 梯度直通→缓解消失 |
| LayerNorm | 归一化→稳定训练+并行友好 |
| MLP | 引入非线性→增强每token表达 |
38. 位置编码对比
参考答案:
| Learned PE | Sinusoidal PE | |
|---|---|---|
| 方式 | 每位置学一个向量 | sin/cos\sin/\cossin/cos固定公式 |
| 优点 | 表达力强,易实现 | 任意长度,可表达相对位置 |
| 缺点 | 需预设NmaxN_{max}Nmax,相对位置需学习 | 固定模式,表达能力有限 |
四、计算题参考答案
39. Attention矩阵
- α\boldsymbol{\alpha}α大小:N×N=5×5N\times N = \mathbf{5\times 5}N×N=5×5
- 复杂度:O(N2Dk)=O(25×64)\mathbf{O(N^2 D_k) = O(25\times 64)}O(N2Dk)=O(25×64)(主要是QKT\mathbf{Q}\mathbf{K}^TQKT)
40. 注意力权重计算
(1) 原始分数
z11=q1Tk1=1,z12=q1Tk2=0z_{11} = \mathbf{q}_1^T\mathbf{k}1 = 1, \quad z{12} = \mathbf{q}_1^T\mathbf{k}_2 = 0z11=q1Tk1=1,z12=q1Tk2=0
(2) Scaled分数 (Dk=2D_k=2Dk=2)
z^11=1/2≈0.707,z^12=0\hat{z}{11} = 1/\sqrt{2} \approx 0.707, \quad \hat{z}{12} = 0z^11=1/2 ≈0.707,z^12=0
(3) Softmax
α11=e0.707e0.707+e0=2.032.03+1≈0.67\alpha_{11} = \frac{e^{0.707}}{e^{0.707}+e^0} = \frac{2.03}{2.03+1} \approx \mathbf{0.67}α11=e0.707+e0e0.707=2.03+12.03≈0.67
α12=13.03≈0.33\alpha_{12} = \frac{1}{3.03} \approx \mathbf{0.33}α12=3.031≈0.33
41. MHA维度
Dv=Dk=DH=5128=64D_v = D_k = \frac{D}{H} = \frac{512}{8} = \mathbf{64}Dv=Dk=HD=8512=64
每头维度64→8头拼接=512→与输入维度一致。
答案编制完成时间:2026年6月30日