Multi-Head Self-Attention
分类: 深度学习基础
Multi-Head Self-Attention
定义
多头自注意力是 Transformer 架构的核心组件,将输入投影到多个子空间中分别计算注意力,然后拼接输出,使模型能同时关注不同表示子空间的信息。
数学形式
MultiHead(Q,K,V)=Concat(head1,…,headh)WO
headi=Attention(QWiQ,KWiK,VWiV)=Softmax(dkQWiQ(KWiK)⊤)VWiV
h: 注意力头数
dk=dmodel/h: 每个头的维度
WiQ,WiK,WiV∈Rdmodel×dk: 投影矩阵
计算复杂度: O(N2⋅d),N 为序列长度
核心要点
多头机制允许模型在不同位置关注不同的语义信息
计算复杂度与序列长度 N 呈二次关系,是 Transformer 效率瓶颈的主要来源
Token Pruning、FlashAttention 等方法旨在缓解这一计算瓶颈
代表工作
Vaswani et al. (2017): Attention Is All You Need,原始 Transformer
ViT: 将 MHSA 应用于视觉任务
Col-Ln: 利用 MHSA 的注意力矩阵列向分布来度量 token 重要性
相关概念
ViT
Softmax
FlashAttention
Token Pruning