注意力的直觉理解

注意力机制模仿了人类的注意力——当我们看一幅画时,不会平均地关注每个像素,而是聚焦在某些关键区域。

缩放点积注意力

Attention(Q,K,V)=softmax(QKTdk)V\text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V

为什么要除以 dk\sqrt{d_k}?因为当 dkd_k 很大时,点积的值会变得很大,导致 softmax 的梯度变得非常小。

计算复杂度

标准的 Self-Attention 时间复杂度为 O(n2)O(n^2),这也是长序列处理的瓶颈。本文参考了 Transformer 架构详解 中的完整实现。