自注意力机制
概述
Self-Attention(自注意力)是 Transformer 的核心计算单元,让每个 token 通过 Query-Key-Value 机制与序列中所有其他 token 计算相关性权重,从而动态聚合全局上下文信息。
关键内容
- 核心限制:Self-Attention 只感知 token 间内容相关性,天然不包含顺序概念——对它来说输入是一个无序集合。因此必须配合位置编码才能感知序列顺序。
- QKV 计算:每个 token 投影为 Query、Key、Value 三个向量,注意力权重由 Query 与所有 Key 的点积(经 softmax)确定,再对 Value 加权求和,得到上下文感知的表示。
- 与位置编码的关系:绝对位置编码在输入阶段叠加位置向量;相对位置编码则直接修改注意力分数计算,将相对距离 $i-j$ 纳入 $\text{AttentionScore}_{ij}$ 的计算函数中。
- 在推荐系统中的应用:SASRec(ICDM 2018)首次将 Self-Attention 完全应用于序列推荐任务,通过 因果掩码 实现单向自回归预测,开创了推荐系统的 Transformer 时代。其核心使用 缩放点积注意力 计算物品间的注意力权重。
来源
- raw/ChatGPT-Chat/ChatGPT-Self-Attention机制解析/02-什么是位置编码?对比绝对位置编码和相对位置编码的优缺点 — ChatGPT 对话:Self-Attention 机制解析