差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

后一修订版
前一修订版
深度学习:注意力机制与transformer [2026/03/02 20:27] – 创建 张叶安深度学习:注意力机制与transformer [2026/03/02 22:33] (当前版本) – [4. 答案与解析] 张叶安
行 34: 行 34:
  
 1. **查询(Query)**:$Q \in \mathbb{R}^{d_q}$,表示当前需要关注什么 1. **查询(Query)**:$Q \in \mathbb{R}^{d_q}$,表示当前需要关注什么
 +
 2. **键(Key)**:$K \in \mathbb{R}^{n \times d_k}$,表示输入内容可供检索的索引 2. **键(Key)**:$K \in \mathbb{R}^{n \times d_k}$,表示输入内容可供检索的索引
 +
 3. **值(Value)**:$V \in \mathbb{R}^{n \times d_v}$,表示输入内容的实际表示 3. **值(Value)**:$V \in \mathbb{R}^{n \times d_v}$,表示输入内容的实际表示
  
行 42: 行 44:
  
 其中: 其中:
-- $QK^T$计算查询与所有键的相似度分数 +  - $QK^T$计算查询与所有键的相似度分数 
-- 除以$\sqrt{d_k}$进行缩放,防止softmax进入梯度饱和区 +  - 除以$\sqrt{d_k}$进行缩放,防止softmax进入梯度饱和区 
-- softmax将分数转换为概率分布(注意力权重) +  - softmax将分数转换为概率分布(注意力权重) 
-- 权重与值相乘得到加权输出+  - 权重与值相乘得到加权输出
  
 **直观理解** **直观理解**
  
 想象在图书馆查找资料: 想象在图书馆查找资料:
-- **查询(Q)**:你的问题或需求 +  - **查询(Q)**:你的问题或需求 
-- **键(K)**:书籍的目录和标签 +  - **键(K)**:书籍的目录和标签 
-- **值(V)**:书籍的实际内容 +  - **值(V)**:书籍的实际内容 
-- **注意力权重**:每本书对你问题的相关程度+  - **注意力权重**:每本书对你问题的相关程度
  
 ==== 1.3 注意力机制的主要类型 ==== ==== 1.3 注意力机制的主要类型 ====
行 66: 行 68:
  
 特点: 特点:
-- 使用可学习的参数$W_s, W_h, v_a$ +  - 使用可学习的参数$W_s, W_h, v_a$ 
-- 理论上可以学习更复杂的相似度函数 +  - 理论上可以学习更复杂的相似度函数 
-- 计算复杂度较高+  - 计算复杂度较高
  
 **1.3.2 乘性注意力(Multiplicative Attention / Dot-Product Attention)** **1.3.2 乘性注意力(Multiplicative Attention / Dot-Product Attention)**
行 77: 行 79:
  
 特点: 特点:
-- 计算简单高效,无需额外参数 +  - 计算简单高效,无需额外参数 
-- 当查询和键维度相同时可直接使用 +  - 当查询和键维度相同时可直接使用 
-- 实践中常与缩放因子结合使用+  - 实践中常与缩放因子结合使用
  
 **1.3.3 缩放点积注意力(Scaled Dot-Product Attention)** **1.3.3 缩放点积注意力(Scaled Dot-Product Attention)**
行 88: 行 90:
  
 缩放因子$\sqrt{d_k}$的作用: 缩放因子$\sqrt{d_k}$的作用:
-- 当$d_k$较大时,点积的数值可能很大 +  - 当$d_k$较大时,点积的数值可能很大 
-- 大值输入使softmax梯度极小,导致梯度消失 +  - 大值输入使softmax梯度极小,导致梯度消失 
-- 缩放使点积值保持在合理范围,保证梯度流动+  - 缩放使点积值保持在合理范围,保证梯度流动
  
 **1.3.4 自注意力(Self-Attention)** **1.3.4 自注意力(Self-Attention)**
行 112: 行 114:
  
 编码器结构: 编码器结构:
-- 输入嵌入 + 位置编码 +  - 输入嵌入 + 位置编码 
-- N个相同的编码器层(原论文N=6) +  - N个相同的编码器层(原论文N=6) 
-- 每层包含:多头自注意力 + 前馈网络 +  - 每层包含:多头自注意力 + 前馈网络 
-- 每个子层后接层归一化和残差连接+  - 每个子层后接层归一化和残差连接
  
 解码器结构: 解码器结构:
-- 输出嵌入 + 位置编码 +  - 输出嵌入 + 位置编码 
-- N个相同的解码器层 +  - N个相同的解码器层 
-- 每层包含:掩码多头自注意力 + 编码器-解码器注意力 + 前馈网络 +  - 每层包含:掩码多头自注意力 + 编码器-解码器注意力 + 前馈网络 
-- 每个子层后接层归一化和残差连接+  - 每个子层后接层归一化和残差连接
  
 **1.4.2 多头注意力机制(Multi-Head Attention)** **1.4.2 多头注意力机制(Multi-Head Attention)**
行 135: 行 137:
  
 参数说明: 参数说明:
-- $h$:注意力头数(原论文h=8) +  - $h$:注意力头数(原论文h=8) 
-- $d_{model}$:模型维度(原论文512) +  - $d_{model}$:模型维度(原论文512) 
-- $d_k = d_v = d_{model}/h = 64$ +  - $d_k = d_v = d_{model}/h = 64$ 
-- $W_i^Q, W_i^K, W_i^V$:各头的投影矩阵 +  - $W_i^Q, W_i^K, W_i^V$:各头的投影矩阵 
-- $W^O$:输出投影矩阵+  - $W^O$:输出投影矩阵
  
 多头注意力的优势: 多头注意力的优势:
-- 不同头可以学习不同的依赖模式 +  - 不同头可以学习不同的依赖模式 
-- 例如:一个头学习句法关系,另一个学习语义关系 +  - 例如:一个头学习句法关系,另一个学习语义关系 
-- 增强模型的表达能力+  - 增强模型的表达能力
  
 **1.4.3 位置编码(Positional Encoding)** **1.4.3 位置编码(Positional Encoding)**
行 155: 行 157:
  
 其中: 其中:
-- $pos$:位置索引 +  - $pos$:位置索引 
-- $i$:维度索引 +  - $i$:维度索引 
-- $d_{model}$:模型维度+  - $d_{model}$:模型维度
  
 位置编码的特性: 位置编码的特性:
-- 唯一性:每个位置有唯一的编码 +  - 唯一性:每个位置有唯一的编码 
-- 相对位置:$PE_{pos+k}$可以表示为$PE_{pos}$的线性函数 +  - 相对位置:$PE_{pos+k}$可以表示为$PE_{pos}$的线性函数 
-- 有界性:值域在[-1, 1]之间 +  - 有界性:值域在[-1, 1]之间 
-- 可学习位置编码也是可行的选择+  - 可学习位置编码也是可行的选择
  
 **1.4.4 前馈网络(Feed-Forward Network)** **1.4.4 前馈网络(Feed-Forward Network)**
行 172: 行 174:
  
 这是一个两层的线性变换,中间使用ReLU激活。特点: 这是一个两层的线性变换,中间使用ReLU激活。特点:
-- 对每个位置独立应用(位置间不交互) +  - 对每个位置独立应用(位置间不交互) 
-- 隐藏层维度通常为$4 \times d_{model}$(原论文2048) +  - 隐藏层维度通常为$4 \times d_{model}$(原论文2048) 
-- 引入非线性,增强模型表达能力+  - 引入非线性,增强模型表达能力
  
 **1.4.5 层归一化与残差连接** **1.4.5 层归一化与残差连接**
行 183: 行 185:
  
 作用: 作用:
-- 缓解梯度消失,使深层网络可训练 +  - 缓解梯度消失,使深层网络可训练 
-- 保留原始信息,帮助优化+  - 保留原始信息,帮助优化
  
 **层归一化(Layer Normalization)**: **层归一化(Layer Normalization)**:
行 197: 行 199:
  
 BERT(Bidirectional Encoder Representations from Transformers): BERT(Bidirectional Encoder Representations from Transformers):
-- 仅使用Transformer编码器 +  - 仅使用Transformer编码器 
-- 双向上下文建模 +  - 双向上下文建模 
-- 预训练任务:掩码语言模型 + 下一句预测 +  - 预训练任务:掩码语言模型 + 下一句预测 
-- 适用于:文本分类、命名实体识别、问答等理解任务+  - 适用于:文本分类、命名实体识别、问答等理解任务
  
 **1.5.2 解码器-only模型** **1.5.2 解码器-only模型**
  
 GPT(Generative Pre-trained Transformer)系列: GPT(Generative Pre-trained Transformer)系列:
-- 仅使用Transformer解码器 +  - 仅使用Transformer解码器 
-- 自回归生成,从左到右 +  - 自回归生成,从左到右 
-- 预训练任务:语言建模(预测下一个词) +  - 预训练任务:语言建模(预测下一个词) 
-- 适用于:文本生成、对话、代码生成+  - 适用于:文本生成、对话、代码生成
  
 **1.5.3 编码器-解码器模型** **1.5.3 编码器-解码器模型**
  
 T5(Text-to-Text Transfer Transformer): T5(Text-to-Text Transfer Transformer):
-- 完整的编码器-解码器结构 +  - 完整的编码器-解码器结构 
-- 所有任务统一为文本到文本的转换 +  - 所有任务统一为文本到文本的转换 
-- 适用于:机器翻译、摘要、问答等+  - 适用于:机器翻译、摘要、问答等
  
 **1.5.4 高效Transformer变体** **1.5.4 高效Transformer变体**
行 222: 行 224:
  
 **稀疏注意力**: **稀疏注意力**:
-- Longformer:结合局部窗口注意力和全局注意力 +  - Longformer:结合局部窗口注意力和全局注意力 
-- BigBird:随机注意力 + 窗口注意力 + 全局注意力 +  - BigBird:随机注意力 + 窗口注意力 + 全局注意力 
-- 理论证明:稀疏注意力可以近似全注意力+  - 理论证明:稀疏注意力可以近似全注意力
  
 **线性注意力**: **线性注意力**:
-- 通过核技巧或矩阵分解,将复杂度降至$O(n)$ +  - 通过核技巧或矩阵分解,将复杂度降至$O(n)$  
-- Performer、Linear Transformer等+  - Performer、Linear Transformer等
  
 **分层注意力**: **分层注意力**:
-- 先对token进行聚类或压缩 +  - 先对token进行聚类或压缩 
-- 在粗粒度表示上进行注意力计算+  - 在粗粒度表示上进行注意力计算
  
 ==== 1.6 注意力机制的可解释性 ==== ==== 1.6 注意力机制的可解释性 ====
行 240: 行 242:
 注意力权重天然具有可解释性。通过可视化注意力矩阵,可以观察模型关注输入的哪些部分: 注意力权重天然具有可解释性。通过可视化注意力矩阵,可以观察模型关注输入的哪些部分:
  
-- **编码器自注意力**:显示输入序列内部的关系 +  - **编码器自注意力**:显示输入序列内部的关系 
-- **解码器自注意力**:显示生成过程中的依赖 +  - **解码器自注意力**:显示生成过程中的依赖 
-- **交叉注意力**:显示输出与输入的对齐关系+  - **交叉注意力**:显示输出与输入的对齐关系
  
 **注意力作为解释工具** **注意力作为解释工具**
  
 注意力权重可以回答"模型在决策时关注了什么"。例如: 注意力权重可以回答"模型在决策时关注了什么"。例如:
-- 机器翻译中,可以看到源语言词与目标语言词的对应 +  - 机器翻译中,可以看到源语言词与目标语言词的对应 
-- 情感分析中,可以看到影响分类的关键词+  - 情感分析中,可以看到影响分类的关键词
  
 **注意力的局限性** **注意力的局限性**
  
-- 注意力权重不等于特征重要性 +  - 注意力权重不等于特征重要性 
-- 多头注意力的可解释性较复杂 +  - 多头注意力的可解释性较复杂 
-- 注意力分布可能集中在特定token(如[CLS])+  - 注意力分布可能集中在特定token(如[CLS])
  
 ==== 1.7 注意力机制的应用领域 ==== ==== 1.7 注意力机制的应用领域 ====
  
 **自然语言处理**: **自然语言处理**:
-- 机器翻译、文本摘要、问答系统 +  - 机器翻译、文本摘要、问答系统 
-- 预训练语言模型(BERT、GPT、T5) +  - 预训练语言模型(BERT、GPT、T5) 
-- 信息抽取、情感分析+  - 信息抽取、情感分析
  
 **计算机视觉**: **计算机视觉**:
-- 视觉Transformer(ViT):将图像分割为patch,应用Transformer +  - 视觉Transformer(ViT):将图像分割为patch,应用Transformer 
-- 目标检测(DETR):端到端目标检测 +  - 目标检测(DETR):端到端目标检测 
-- 图像生成(DALL-E、Stable Diffusion)+  - 图像生成(DALL-E、Stable Diffusion)
  
 **多模态学习**: **多模态学习**:
-- 图像-文本对齐(CLIP) +  - 图像-文本对齐(CLIP) 
-- 视觉问答 +  - 视觉问答 
-- 文生图、图生文+  - 文生图、图生文
  
 **其他领域**: **其他领域**:
-- 语音识别 +  - 语音识别 
-- 蛋白质结构预测(AlphaFold) +  - 蛋白质结构预测(AlphaFold) 
-- 推荐系统 +  - 推荐系统 
-- 时间序列预测+  - 时间序列预测
  
 ===== 2. 例题分析 ===== ===== 2. 例题分析 =====
行 304: 行 306:
  
 计算指数: 计算指数:
-- $\exp(1.155) \approx 3.174$ +  - $\exp(1.155) \approx 3.174$ 
-- $\exp(0.577) \approx 1.781$ +  - $\exp(0.577) \approx 1.781$ 
-- $\exp(0.577) \approx 1.781$+  - $\exp(0.577) \approx 1.781$
  
 求和:$3.174 + 1.781 + 1.781 = 6.736$ 求和:$3.174 + 1.781 + 1.781 = 6.736$
  
 注意力权重: 注意力权重:
-- $\alpha_1 = 3.174 / 6.736 \approx 0.471$ +  - $\alpha_1 = 3.174 / 6.736 \approx 0.471$ 
-- $\alpha_2 = 1.781 / 6.736 \approx 0.264$ +  - $\alpha_2 = 1.781 / 6.736 \approx 0.264$ 
-- $\alpha_3 = 1.781 / 6.736 \approx 0.264$+  - $\alpha_3 = 1.781 / 6.736 \approx 0.264$
  
 **步骤4:加权求和** **步骤4:加权求和**
行 461: 行 463:
 ==== 二、填空题 ==== ==== 二、填空题 ====
  
-6. 注意力机制的三个核心组件是________________________+6. 注意力机制的三个核心组件$\_\_\_\_$$\_\_\_\_$$\_\_\_\_$
  
-7. Transformer编码器包含________个相同的层,每层有________个子层。+7. Transformer编码器包含$\_\_\_\_$个相同的层,每层有$\_\_\_\_$个子层。
  
-8. 层归一化与批归一化的主要区别是层归一化对________进行归一化,不依赖________统计量。+8. 层归一化与批归一化的主要区别是层归一化对$\_\_\_\_$进行归一化,不依赖$\_\_\_\_$统计量。
  
 9. 残差连接的公式是$\text{LayerNorm}(x + \text{________}(x))$。 9. 残差连接的公式是$\text{LayerNorm}(x + \text{________}(x))$。
行 484: 行 486:
  
 1. **答案:B** 1. **答案:B**
-   解析:缩放因子防止点积值过大,避免softmax进入梯度极小的饱和区域。+ 
 +解析:缩放因子防止点积值过大,避免softmax进入梯度极小的饱和区域。
  
 2. **答案:B** 2. **答案:B**
-   解析:自注意力中,Q、K、V来自同一序列,通过不同的投影矩阵$W_Q, W_K, W_V$得到。+ 
 +解析:自注意力中,Q、K、V来自同一序列,通过不同的投影矩阵$W_Q, W_K, W_V$得到。
  
 3. **答案:B** 3. **答案:B**
-   解析:多头注意力允许模型在不同表示子空间中学习不同类型的依赖关系。+ 
 +解析:多头注意力允许模型在不同表示子空间中学习不同类型的依赖关系。
  
 4. **答案:C** 4. **答案:C**
-   解析:Transformer使用正弦/余弦位置编码显式注入位置信息,替代RNN的隐式位置建模。+ 
 +解析:Transformer使用正弦/余弦位置编码显式注入位置信息,替代RNN的隐式位置建模。
  
 5. **答案:B** 5. **答案:B**
-   解析:GPT仅使用Transformer解码器,BERT仅使用编码器,T5使用完整的编码器-解码器。+ 
 +解析:GPT仅使用Transformer解码器,BERT仅使用编码器,T5使用完整的编码器-解码器。
  
 **二、填空题答案:** **二、填空题答案:**
  
 6. **答案:**查询(Query);键(Key);值(Value) 6. **答案:**查询(Query);键(Key);值(Value)
-   解析:注意力机制的核心三元组,查询与键计算相似度,值提供实际内容。+ 
 +解析:注意力机制的核心三元组,查询与键计算相似度,值提供实际内容。
  
 7. **答案:**6(或N);2 7. **答案:**6(或N);2
-   解析:原论文使用6层编码器,每层包含多头自注意力和前馈网络两个子层。+ 
 +解析:原论文使用6层编码器,每层包含多头自注意力和前馈网络两个子层。
  
 8. **答案:**每个样本的所有特征;批次 8. **答案:**每个样本的所有特征;批次
-   解析:层归一化沿特征维度归一化,批归一化沿批次维度归一化。+ 
 +解析:层归一化沿特征维度归一化,批归一化沿批次维度归一化。
  
 9. **答案:**Sublayer 9. **答案:**Sublayer
-   解析:残差连接将子层输出与输入相加,再经过层归一化。+ 
 +解析:残差连接将子层输出与输入相加,再经过层归一化。
  
 10. **答案:**2 10. **答案:**2
-    解析:自注意力需要计算$n \times n$的注意力矩阵,复杂度为$O(n^2)$。+ 
 +解析:自注意力需要计算$n \times n$的注意力矩阵,复杂度为$O(n^2)$。
  
 **三、计算题答案:** **三、计算题答案:**
行 519: 行 531:
 11. **解答:** 11. **解答:**
          
-    $QK^T = [2, 1] \begin{bmatrix} 1 & 2 \\ 2 & 1 \end{bmatrix} = [2\times1 + 1\times2,\; 2\times2 + 1\times1] = [4, 5]$+$QK^T = [2, 1] \begin{bmatrix} 1 & 2 \\ 2 & 1 \end{bmatrix} = [2\times1 + 1\times2,\; 2\times2 + 1\times1] = [4, 5]$
          
-    缩放:$[4, 5] / \sqrt{2} \approx [2.828, 3.536]$+缩放:$[4, 5] / \sqrt{2} \approx [2.828, 3.536]$
          
-    Softmax: +Softmax: 
-    - $\exp(2.828) \approx 16.92$ +  - $\exp(2.828) \approx 16.92$ 
-    - $\exp(3.536) \approx 34.31$ +  - $\exp(3.536) \approx 34.31$ 
-    - 和 $\approx 51.23$ +  - 和 $\approx 51.23$ 
-    - $\alpha_1 = 16.92 / 51.23 \approx 0.330$ +  - $\alpha_1 = 16.92 / 51.23 \approx 0.330$ 
-    - $\alpha_2 = 34.31 / 51.23 \approx 0.670$+  - $\alpha_2 = 34.31 / 51.23 \approx 0.670$
          
-    输出:$0.330 \times [3, 1] + 0.670 \times [2, 4] = [0.990, 0.330] + [1.340, 2.680] = [2.330, 3.010]$+输出:$0.330 \times [3, 1] + 0.670 \times [2, 4] = [0.990, 0.330] + [1.340, 2.680] = [2.330, 3.010]$
  
 12. **解答:** 12. **解答:**
          
-    对于$i = 0$:$10000^{0/4} = 1$+对于$i = 0$:$10000^{0/4} = 1$
          
-    $PE_{(1,0)} = \sin(1/1) = \sin(1) \approx 0.841$+$PE_{(1,0)} = \sin(1/1) = \sin(1) \approx 0.841$
          
-    $PE_{(1,1)} = \cos(1/1) = \cos(1) \approx 0.540$+$PE_{(1,1)} = \cos(1/1) = \cos(1) \approx 0.540$
  
 13. **解答:** 13. **解答:**
          
-    $\text{Output} = 0.5 \times [1, 2] + 0.3 \times [3, 4] + 0.2 \times [5, 6]$+$\text{Output} = 0.5 \times [1, 2] + 0.3 \times [3, 4] + 0.2 \times [5, 6]$
          
-    $= [0.5, 1.0] + [0.9, 1.2] + [1.0, 1.2]$+$= [0.5, 1.0] + [0.9, 1.2] + [1.0, 1.2]$
          
-    $= [2.4, 3.4]$+$= [2.4, 3.4]$

该主题尚不存在

您访问的页面并不存在。如果允许,您可以使用创建该页面按钮来创建它。

  • 深度学习/注意力机制与transformer.1772454470.txt.gz
  • 最后更改: 2026/03/02 20:27
  • 张叶安