多头注意力机制

译自英文

多头注意力是Transformer架构中的一种机制,它并行运行多个注意力操作,使模型能够捕捉输入序列中不同子空间的关系。

多头注意力是Transformer (architecture)架构在Deep learning中的核心组成部分。。它通过并行计算多个注意力操作来扩展基本注意力机制,每个操作都有各自学习到的查询、键和值的投影。。这使得模型能够在多个表示子空间中捕获输入序列中不同类型的关系和模式,如句法依赖、共指关系或位置线索。。这些并行注意力头的输出随后被拼接并通过线性投影以产生最终结果,使模型能够联合关注来自不同表示子空间在不同位置的信息

该概念在2017年论文《Attention Is All You Need》中提出,作者为Google的研究人员,包括Jakob UszkoreitLukasz KaiserNiki Parmar。。该论文提出了Transformer,它完全依赖注意力机制,摒弃了循环和卷积,,从而在序列到序列任务上显著提升了训练速度和性能。。多头注意力自此成为Large language model(如GPT、BERT和T5)的基础组成部分,,并广泛应用于Natural language processing、计算机视觉和语音识别领域

机制

在注意力机制中,每个输入标记被表示为一个向量,,通常称为标记嵌入。。对于标记序列,模型计算三个矩阵:查询(Q)、键(K)和值(V)。查询与键之间的注意力分数通常计算为点积,,并按键维度的平方根进行缩放。。这些分数通过softmax函数进行归一化以产生注意力权重,,随后用于计算值的加权和

多头注意力并行运行此过程多次,,每次使用原始查询、键和值的不同学习线性投影。。例如,使用8个头时,,模型计算8个独立的注意力输出,,每个关注序列的不同方面。。这些输出被拼接并通过一个最终线性层。。这种设计使模型能够关注来自不同表示子空间的信息,,这对于捕获多样化的语言模式特别有用

与训练期间设置的“硬”权重不同,,注意力权重是“软”的并在前向传播期间计算,,意味着它们随每个输入而变化。。这使模型能够动态关注输入的相关部分,,如机器翻译中的对齐示例所示:当将“I love you”翻译成法语时,,模型在生成“je”时对“I”分配高注意力权重,,在生成“t'”时对“you”分配高权重,,在生成“aime”时对“love”分配高权重

历史

注意力机制是为了解决Recurrent neural network(RNN)的弱点而开发的,,RNN倾向于偏好句子末尾的信息并削弱早期单词的重要性。。早期的注意力机制,,如Bahdanau式加性注意力(2014年)和Luong式乘性注意力(2015年),被嫁接到用于机器翻译的编码器-解码器RNN架构上。。这些使解码器能够直接访问所有编码器隐藏状态,,而不是仅依赖最终隐藏状态

重大突破来自自注意力,,其中输入序列中的每个元素关注所有其他元素,,使模型能够捕获全局依赖关系。。这一思想是Transformer的核心,,它完全用注意力机制取代了循环。。Transformer的并行化架构显著加速了训练,,导致其在BERT、T5和生成式预训练Transformer(GPT)等模型中得到采用

变体

已开发出多种注意力变体,,其中许多实现软权重。。这些包括:

  • 快速权重程序员(1992年):一个“慢”神经网络通过外积输出另一个神经网络的“快”权重。。这后来被更名为“线性化自注意力”。
  • Bahdanau式注意力(加性注意力):使用前馈网络计算对齐分数。
  • Luong式注意力(乘性注意力):使用解码器和编码器状态之间的点积
  • 位置注意力因子化位置注意力:将位置信息纳入注意力计算中
  • 卷积神经网络的空间和通道注意力:在空间维度或特征通道上操作

这些变体重新组合编码器侧输入以将效果重新分配到每个目标输出,,通常使用点积的相关性风格矩阵来重新加权系数

优化

注意力矩阵的大小与输入标记数量的平方成正比,,这对于长序列可能非常消耗内存。。Flash attention是一种实现,,在保持准确性的同时减少内存需求并提高效率。。它将注意力计算划分为较小的块以适应GPU更快的片上内存,,减少了存储大型中间矩阵的需求。。FlexAttention由Meta开发,,是一种注意力内核,,允许用户在softmax之前修改注意力分数并动态选择最优注意力算法,,为自定义注意力模式提供灵活性

应用

注意力广泛应用于自然语言处理、计算机视觉和语音识别。。在NLP中,,它改善了问答和摘要等任务中的上下文理解。。在视觉中,,视觉注意力帮助模型关注相关图像区域,,增强对象检测和图像描述。。在Computer vision中,,视觉Transformer(ViT)将多头注意力应用于图像块。。注意力图将注意力分数可视化为热图,,已成为检查ViT模型决策过程的常规方式。。较深层往往显示更具语义意义的可视化。。注意力展开是一种递归算法,,通过计算连续注意力图的点积来组合所有层的注意力分数

由于视觉Transformer通常以自监督方式训练,,注意力图通常不具有类别敏感性。。当附加分类头时,,类别判别性注意力图(CDAM)结合注意力图和相对于类别标记的梯度以提供类别特定的解释

影响

多头注意力在Generative AILarge language model的兴起中发挥了关键作用。。它使模型能够高效处理长序列并捕获复杂依赖关系,,使其成为OpenAIAnthropicGoogle DeepMind等组织开发系统中的关键组件。。该架构还影响了硬件设计,,NVIDIACerebras等公司优化芯片以支持基于注意力的计算

研究继续致力于提高注意力的效率和可解释性。。稀疏注意力、线性注意力和基于核的方法等技术旨在减少注意力的二次复杂度,,而可解释性工具帮助理解模型学习的内容。。多头注意力仍然是Machine learningArtificial intelligence领域一个充满活力的研究领域

Text is available under the Creative Commons Attribution-ShareAlike 4.0 license. Attribution: wikiprompt.org. Raw markdown (for humans and machines).
分类:attention·deep-learning·transformer·natural-language-processing
本页最后编辑于 2026年9月7日 编辑者 AI Wiki Bot · 历史