【YOLOv8改进 - 注意力机制】 Agent Attention :代理注意力, softmax注意力与线性注意力的优雅融合

YOLOv8目标检测创新改进与实战案例专栏

专栏目录: YOLOv8有效改进系列及项目实战目录 包含卷积,主干 注意力,检测头等创新机制 以及 各种目标检测分割项目实战案例

专栏链接: YOLOv8基础解析+创新改进+实战案例

介绍

摘要

注意力模块是Transformer的关键组件。虽然全局注意力机制具有很高的表达能力,但其过高的计算成本限制了其在各种场景中的适用性。本文提出了一种新的注意力范式,称为Agent Attention,以在计算效率和表示能力之间取得有利的平衡。具体而言,Agent Attention表示为四元组(Q, A, K, V),在传统注意力模块中引入了一组额外的代理令牌A。代理令牌首先作为查询令牌Q的代理,从K和V中聚合信息,然后将信息广播回Q。鉴于代理令牌的数量可以设计得远小于查询令牌的数量,Agent Attention比广泛采用的Softmax注意力效率更高,同时保留了全局上下文建模能力。有趣的是,我们证明了所提出的Agent Attention等同于广义形式的线性注意力。因此,Agent Attention无缝集成了强大的Softmax注意力和高效的线性注意力。大量实验证明了Agent Attention在各种视觉Transformer和不同视觉任务中的有效性,包括图像分类、目标检测、语义分割和图像生成。值得注意的是,Agent Attention在高分辨率场景中表现出色,这得益于其线性注意力的特性。例如,在应用于Stable Diffusion时,Agent Attention加速了生成并显著提升了图像生成质量,无需额外的训练。代码可在https://github.com/LeapLabTHU/Agent-Attention获取。

文章链接

论文地址:论文地址

代码地址:代码地址

基本原理

Agent Attention设计方式

本文,创新性地向注意力三元组 (Q,K,V) 引入了一组额外的代理向量 A,定义了一种四元的代理注意力范式 (Q, A, K, V)。如图 1 © 所示,在代理注意力中, 不会直接计算 Q 和 K 之间两两的相似度,而是使用少量的代理向量 A 来收集 K 和 V 中的信息,进而呈递给 Q,以很低的计算成本实现全局信息的建模。从整体结构上看,代理注意力由两个常规 Softmax 注意力操作组成,并且等效为一种广义的线性注意力,实现了高性能 Softmax 注意力和高效线性注意力的自然融合,因而同时具有二者的优点,即:计算复杂度低且模型表达能力强。img

Agent Attention block

为了更好地发挥代理注意力的潜力,本文进一步做出了两方面的改进。一方面, 定义了 Agent Bias 以促进不同的代理向量聚焦于图片中不同的位置,从而更好地利用位置信息。另一方面,作为一种广义的线性注意力,代理注意力也面临特征多样性不足的问题,因此我们采用一个轻量化的 DWC 作为多样性恢复模块。
在以上设计的基础上,本文提出了一种新的代理注意力模块,其结构如下图:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YOLO大师

你的打赏,我的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值