Scaled Dot-Product Attention 是Transformer模型中核心的注意力机制之一,它的基本思想是通过计算query(查询)向量与一组key(键)向量之间的点积相似度,并通过softmax函数转换为概率分布,然后用这个概率分布加权value(值)向量,从而聚焦在最重要(相似度最高)的信息上。
Scaled Dot-Product Attention 最本质最重要的步骤包括三个核心计算部分:
-
点积计算(Dot Product): 首先,将查询(Query)矩阵
Q
和键(Key)矩阵K
进行点积运算
。这一步骤计算了查询向量和所有键向量之间的相似度得分,即衡量查询向量与每一个位置上的键向量有多匹配。 -
缩放(Scaling): 由于随着维度
d_k
的增加,点积的结果也会迅速增大,可能导致softmax函数梯度变得极小,影响训练效果。因此,对点积结果除以√d_k
进行缩放,这样可以保持各个位置上的注意力得分在softmax之前具有相近的尺度,确保模型收敛性能更好。 -
Softmax归一化(Softmax Normalization): 对缩放后的点积结果应用