深圳Yolo 视觉
深圳
立即加入
词汇表

自注意力机制

探索深度学习中自注意力机制的基础知识。了解查询(Query)、键(Key)和值(Value)向量如何驱动Transformer和Ultralytics YOLO26,实现卓越的AI性能。

自注意力是深度学习中的一种基础机制,它使模型能够衡量输入序列中不同元素之间的相对重要性。与传统上按顺序处理数据或仅关注局部邻域的架构不同,自注意力允许神经网络同时检查整个上下文。这种能力有助于系统识别数据远距离部分之间的复杂关系,例如句子中的单词或图像中不同的区域。它作为Transformer架构的核心构建块,推动了生成式 AI 和现代感知系统的巨大进步。

自注意力机制的工作原理

该机制通过为每个输入特征分配一个权重(通常称为“注意力分数”)来模拟认知焦点。为了计算这些分数,模型将输入数据(通常表示为嵌入)转换为三个不同的向量:查询

  • 查询(Q):代表当前项,用于从序列的其余部分中寻找相关上下文。
  • 键 (K):作为序列中每个项目的标签或标识符,查询将与之匹配。
  • 值(V):包含将被聚合的项的实际信息内容。

模型将一个元素的查询(Query)与所有其他元素的键(Keys)进行比较,以确定兼容性。这些兼容性分数使用softmax函数进行归一化,以创建类似概率的权重。然后将这些权重应用于值(Values),生成一个上下文丰富的表示。这个过程使大型语言模型(LLMs)和视觉系统能够优先处理重要信息,同时过滤掉噪声。

实际应用

自注意力机制的多功能性促使其在 人工智能 (AI) 的各个领域得到广泛采用。

  • 自然语言处理 (NLP):机器翻译等任务中,自注意力通过将代词与其指代对象关联来解决歧义。例如,在句子“动物没有过马路,因为它太累了”中,模型使用自注意力将“它”与“动物”而不是“街道”强关联起来。这种上下文感知能力为Google Translate等工具提供了支持。
  • 全局图像上下文:计算机视觉(CV)领域,像Vision Transformer (ViT)这样的架构将图像分割成块,并应用自注意力机制以全局理解场景。这对于在复杂环境中进行目标检测至关重要,因为在这些环境中,识别物体依赖于对其周围环境的理解。

区分相关术语

虽然这些术语经常与类似概念一起讨论,但它们具有不同的技术定义:

  • 注意力机制: 这种广泛的技术类别允许模型关注数据的特定部分。它包括交叉注意力,即模型使用一个序列(如解码器输出)来查询另一个序列(如编码器输入)。
  • 自注意力机制:一种特殊的注意力机制,其中查询(Query)、键(Key)和值(Value)都源自同一个输入序列。它旨在学习单个数据集内部的依赖关系。
  • Flash Attention:斯坦福大学研究人员开发的一种优化算法,它在GPU上显著加快了自注意力计算的速度并提高了内存效率,同时不改变数学输出结果。

代码示例

以下python代码片段演示了如何使用 RTDETR,一个包含在其中的基于Transformer的object detector ultralytics 包。与标准卷积网络不同,该模型严重依赖自注意力机制来处理视觉特征。

from ultralytics import RTDETR

# Load the RT-DETR model which utilizes self-attention for detection
model = RTDETR("rtdetr-l.pt")

# Perform inference on an image to detect objects with global context
# Self-attention helps the model understand relationships between distant objects
results = model("https://ultralytics.com/images/bus.jpg")

# Print the number of objects detected
print(f"Detected {len(results[0].boxes)} objects using Transformer attention.")

演进与未来影响

自注意力机制有效地解决了阻碍早期循环神经网络 (RNN)梯度消失问题,从而实现了大规模基础模型的训练。尽管非常有效,但标准自注意力的计算成本随序列长度呈二次方增长。为了解决这个问题,当前研究侧重于高效的线性注意力机制。

Ultralytics 将这些进步整合到 YOLO26 等最先进的模型中,YOLO26 结合了 CNN 的速度和注意力的上下文能力,实现了卓越的 实时推理。这些优化模型可以通过 Ultralytics 平台 轻松训练和部署,从而为开发人员构建下一代智能应用程序简化了工作流程。

让我们一起共建AI的未来!

开启您的机器学习未来之旅