摘要: Transformer 比较卷积神经网络(CNN)、循环神经网络(RNN)和自注意力(self-attention)。值得注意的是,自注意力同时具有并行计算和最短的最大路径长度这两个优势。因此,使用自注意力来设计深度架构是很有吸引力的。 对比之前仍然依赖循环神经网络实现输入表示的自注意力模型(Che 阅读全文
posted @ 2025-05-23 15:51 玉米面手雷王 阅读(59) 评论(0) 推荐(0)
摘要: 🔍 一、多头注意力的核心思想 多头注意力的目的是: 让模型从不同的表示子空间中学习到输入序列的不同行为,并将这些行为组合起来,从而捕获更丰富的依赖关系(如短距离、长距离依赖等)。 换句话说,就是 “从多个角度看问题”,然后把各个视角的结果融合起来,形成更全面的理解。 🧱 二、多头注意力的工作流程 阅读全文
posted @ 2025-05-23 14:06 玉米面手雷王 阅读(38) 评论(0) 推荐(0)
摘要: 定义注意力解码器 下面看看如何定义Bahdanau注意力,实现循环神经网络编码器-解码器。 其实,我们只需重新定义解码器即可。 为了更方便地显示学习的注意力权重, 以下AttentionDecoder类定义了[带有注意力机制解码器的基本接口]。 class AttentionDecoder(d2l. 阅读全文
posted @ 2025-05-23 12:46 玉米面手雷王 阅读(28) 评论(0) 推荐(0)
摘要: 注意力评分函数(Attention Scoring Function) 注意力机制的核心在于根据查询(query)和键(key)之间的关系,计算出每个值(value)对应的注意力权重,然后使用这些权重对值进行加权求和,得到最终的输出。 关键概念: 注意力权重: 通过注意力评分函数 $ a(\math 阅读全文
posted @ 2025-05-23 10:29 玉米面手雷王 阅读(49) 评论(0) 推荐(0)
摘要: 在 PyTorch 中,处理张量维度的操作是非常常见的。这里简要介绍如何增加和减少维度,以及 cat, stack, squeeze, 和 unsqueeze 的使用方法。 增加维度 unsqueeze: 在指定位置增加一个维度(即,将一维变为二维,二维变为三维等)。例如,有一个形状为 (2, 3) 阅读全文
posted @ 2025-05-23 09:44 玉米面手雷王 阅读(121) 评论(0) 推荐(0)