attention 标签归档

共 18 篇文章 · 返回首页

【Transformer 与注意力机制】42|FlashAttention:注意力计算的硬件级重写

FlashAttention 的关键不是近似注意力,也不是把公式改掉,而是重新安排标准 attention 在 GPU 内存层级里的计算路径。本文解释为什么标准 attention 的瓶颈常常是 HBM 读写,FlashAttention 如何用 tiling 和 online softmax 避免物化完整注意力矩阵,以及它为什么省显存、提吞吐,却没有消除 O(n²) 的根本复杂度。

【Transformer 与注意力机制】49|KV Cache:推理为什么是 O(n) 不是 O(n²)

自回归推理和训练不是同一种程序。本文解释 KV Cache 为什么成立:历史 token 的 Key/Value 一旦算出,在后续 decode 中不会改变;缓存它们可以避免反复重算前缀。文章同时讲清 prefill 与 decode 的差异、cache 显存公式、长上下文为什么受限,以及 PagedAttention、MQA/GQA、cache 量化等方向各自在解决什么。

【Transformer 与注意力机制】52|可解释性入门:注意力权重真的是“解释”吗

Transformer 的 attention weight 很容易被画成热力图,但“看起来关注哪里”不等于“模型为什么这样回答”。本文区分用户解释、行为解释和机制解释,解释 attention is not explanation 的争议,以及梯度、遮挡实验、探针和因果干预各自能说明什么。

【Transformer 与注意力机制】21|位置编码:为什么需要它,为什么用正弦

从「self-attention 是排列等变的」这件几乎被忽视的事实出发,推导出位置编码不是装饰、不是工程小技巧,而是结构性必需。原论文为什么选正弦、那个奇怪的 10000 是怎么来的、PE 与 embedding 是相加还是拼接、可学习位置和 sinusoidal 的本质差别在哪、为什么训练 512 推理 2048 会让可学习位置难以直接外推——这一篇把这些问题一次讲完,并把读者交到现代位置编码(RoPE、ALiBi)的门口。

【Transformer 与注意力机制】17|Causal Mask:让模型只看过去不看未来

自回归语言模型的核心约束是:预测 t 时刻只能用 t 之前的信息。Causal Mask 用一个上三角的 -∞ 矩阵让 softmax 之后未来位置的权重恒为零,使得模型在训练时能并行计算所有时间步、推理时严格自回归。本文从 teacher forcing 到 attention sink,把 causal mask 在训练、推理、长上下文中的所有面相讲清楚。

【Transformer 与注意力机制】14|Self-Attention:让序列自己看自己

从 cross-attention 到 self-attention 的退化路径 → 为什么 self-attention 是 O(1) 跳数 → 为什么它对位置完全无知(permutation-equivariant) → 「The cat sat on the mat. It was tired.」中 it→cat 的共指消解 → 为什么需要位置编码 → attention 不等于解释(向第 52 篇预告)。

【Transformer 与注意力机制】12|Bahdanau Attention:注意力的早期形态

把 Bahdanau, Cho, Bengio 2014 那篇「Neural Machine Translation by Jointly Learning to Align and Translate」逐项拆开。固定 context vector 的瓶颈、双向 RNN 编码、additive attention 公式 vᵀtanh(W₁s + W₂h)、与 Luong 2015 multiplicative attention 的取舍,以及为什么这是 Q/K/V 的雏形。

【Transformer 与注意力机制】01|为什么要从这里开始

这是【Transformer 与注意力机制】系列的第一篇,承担两件事:一是把这套五十多篇文章为谁写、解决什么问题、彼此之间是什么关系交代清楚;二是为完全没基础的读者画出一条从向量、点积、矩阵乘法走到自注意力、再走到大语言模型的爬升路径,让你在投入时间之前先知道终点在哪、路上要经过哪些坎、读完之后你会、还不会做什么事。