YOLOv5改进有效涨点系列->适合多种检测场景的BiFormer注意力机制(Bi-level Routing Attention)

简介: YOLOv5改进有效涨点系列->适合多种检测场景的BiFormer注意力机制(Bi-level Routing Attention)

一、本文介绍

BiFormer是一种结合了Bi-level Routing Attention的视觉Transformer模型,BiFormer模型的核心思想是引入了双层路由注意力机制。在BiFormer中,每个图像块都与一个位置路由器相关联。这些位置路由器根据特定的规则将图像块分配给上层和下层路由器。上层路由器负责捕捉全局上下文信息,而下层路由器则负责捕捉局部区域的细节。

具体来说,上层路由器通过全局自注意力机制对所有图像块进行交互,并生成全局图像表示。下层路由器则使用局部自注意力机制对每个图像块与其邻近的图像块进行交互,并生成局部图像表示。通过这种双层路由注意力机制,BiFormer能够同时捕捉全局和局部的特征信息,从而提高了模型在视觉任务中的性能。

本文主要通过对YOLOv5模型添加Biformer机制为例,让大家对于YOLOv5模型添加注意力机制有一个深入的理解,通过本文你不只能够学会添加Biformer注意力机制,同时可以举一反三学会其它的注意力机制的添加。

Biformer适用检测目标->适合处理大尺度目标、小尺度目标、密集目标和遮挡目标的检测

专栏回顾:YOLOv5改进专栏——持续复现各种顶会内容——内含100+创新

二、Biformer的作用机制

image.png

在开始介绍作用机制之前,我们先来看一下不同注意力机制的效果

image.png

从a-f分别是->

(a) 原始注意力:全局操作,会产生高计算复杂度和大内存占用。 (b)-(d) 稀疏注意力:为了减少注意力的复杂度,一些方法引入了稀疏模式,如局部窗口、轴向条纹和扩张窗口。这些模式将注意力限制在特定区域,减少了考虑的键-值对数量。 (e) 可变形注意力:可变形注意力通过改变规则网格来实现图像自适应的稀疏性。这使得注意力机制可以集中关注输入图像的不同区域。 (f) 双层路由注意力:所提出的方法通过双层路由实现了动态的、查询感知的稀疏性。首先确定了前k个(本例中k=3)相关区域,然后关注它们的并集。这使得注意力机制能够根据每个查询自适应地关注最有语义相关的键-值对,从而实现高效的计算。

下面来介绍作用机制->Biformer是一种结合了Bi-level Routing Attention的视觉Transformer模型,所以它具有Transformer模型的特性,其与本质上是局部操作的卷积(Conv)不同,注意力的一个关键特性是全局感受野,使得视觉Transformer能够捕捉长距离依赖关系。然而,这种特性是有代价的:由于注意力在所有空间位置上计算令牌之间的关联性,它具有较高的计算复杂度并且需要大量的内存,所以效率并不高。

为了以高效的方式全局定位有价值的键-值对进行关注,提出了一种区域到区域的路由方法。核心思想是在粗粒度的区域级别上过滤掉最不相关的键-值对,而不是直接在细粒度的标记级别上进行过滤。首先,通过构建一个区域级别的亲和度图,然后对其进行修剪,保留每个节点的前k个连接,从而实现这一点。因此,每个区域只需要关注前k个路由的区域。确定了关注的区域后,下一步是应用标记到标记的注意力,这是一个非常重要的步骤,因为现在假设键-值对在空间上是分散的。对于这种情况,虽然稀疏矩阵乘法是适用的,但在现代GPU上效率较低,因为现代GPU依赖于连续内存操作,即一次访问几十个连续字节的块。相反,我们提出了一种简单的解决方案,通过收集键/值标记来处理,其中只涉及到对于硬件友好的稠密矩阵乘法。我们将这种方法称为双层路由注意力(Bi-level Routing Attention,简称BRA),因为它包含了一个区域级别的路由步骤和一个标记级别的注意力步骤。

总结->引入了一种新颖的双层路由机制来改进传统的注意力机制,以适应查询并实现内容感知的稀疏模式。利用双层路由注意力作为基本构建模块,提出了一个通用的视觉Transformer模型,名为BiFormer。在包括图像分类、目标检测和语义分割在内的各种计算机视觉任务上的实验结果表明,所提出的BiFormer在相似的模型大小下显著优于基准模型的性能。

三、Biformer的优劣势

BiFormer注意力机制的优势和劣势如下:

优势: 1. 高效的计算性能:BiFormer利用双层路由注意力机制,在查询感知的情况下,可以以内容感知的方式关注最相关的键-值对,从而实现稀疏性。这种稀疏性减少了计算和内存开销,使得BiFormer在相同计算预算下能够实现更高的计算性能,下面我通过图片来辅助大家理解这一优势!

image.png

上图展示了通过收集前k个相关窗口中的键-值对,利用稀疏性跳过最不相关区域的计算过程,只进行适用于GPU的密集矩阵乘法运算。 在传统的注意力机制中,会对所有的键-值对进行全局的计算,导致计算复杂度较高。而在BiFormer中,通过双层路由注意力机制,只关注与查询相关的前k个窗口,并且仅进行适用于GPU的密集矩阵乘法运算。 这种做法利用了稀疏性,避免了在最不相关的区域进行冗余计算,从而提高了计算效率。只有与查询相关的键-值对参与到密集矩阵乘法运算中,减少了计算量和内存占用。

2. 查询感知的自适应性:BiFormer的双层路由注意力机制允许模型根据每个查询自适应地关注最相关的键-值对。这种自适应性使得模型能够更好地捕捉输入数据的语义关联,提高了模型的表达能力和性能。

劣势: 1. 可能存在信息损失:由于BiFormer采用了稀疏注意力机制,只关注最相关的键-值对,可能会导致一些次要的或较远的关联信息被忽略。这可能会在某些情况下导致模型性能的下降。

2. 参数调整的挑战:BiFormer的双层路由注意力机制引入了额外的参数和超参数,需要进行适当的调整和优化。这可能需要更多的实验和调试工作,以找到最佳的参数配置。

总体而言,BiFormer的注意力机制具有高效的计算性能和查询感知的自适应性,使其成为一个强大的视觉模型。然而,需要在具体任务和数据集上进行适当的实验和调整,以发挥其最佳性能。

四、Biformer的结构

我们通过下图来看一下Biformer的网络结构

image.png

上图展示了BiFormer的整体架构和一个BiFormer块的详细信息。

左侧:BiFormer的整体架构。该架构包括多个BiFormer块的堆叠,并且根据具体任务和需求可以进行不同的配置。BiFormer通过引入双层路由注意力机制,在每个块中实现内容感知的稀疏性,从而提高了计算性能和任务表现。

右侧:BiFormer块的详细信息。BiFormer块是BiFormer的基本构建单元,由多个子层组成。其中包括自注意力子层(self-attention)和前馈神经网络子层(feed-forward neural network)。自注意力子层使用双层路由注意力机制,根据查询自适应地关注最相关的键-值对。前馈神经网络子层通过多层感知机对注意力输出进行非线性变换和特征提取。这样的组合使得BiFormer具备了适应性和表达能力,能够在不同的计算机视觉任务中发挥优异的性能。

通过整体架构和BiFormer块的设计,BiFormer能够有效地利用双层路由注意力机制,实现内容感知的稀疏性,并提供灵活性和强大的表达能力,适用于各种计算机视觉任务。

到此Biformer注意力机制的理论层面以及讲解完毕,下面我们开始来在YOLOv8中添加该机制,用实战的方式帮助大家理解。

相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
目录
相关文章
|
1月前
|
BI
Quick BI V5.3 发布 | 面向场景“真需求”,解锁用户“新体验” !
V5.3 版本功能速递:面向场景“真需求”,解锁用户“新体验”。
91 7
|
3月前
|
存储 监控 算法
Hologres 在 BI 场景中的应用
【9月更文第1天】随着企业对实时数据分析的需求不断增加,传统的批处理方式已经无法满足现代业务决策的速度要求。Hologres,作为一款专为在线分析处理(OLAP)设计的实时数仓解决方案,提供了高性能的查询能力,能够支持大规模数据集的实时分析需求。本文将探讨 Hologres 在商业智能(BI)场景中的应用,包括如何集成 BI 工具以提供实时数据洞察,并加速决策过程。
81 3
|
6月前
|
机器学习/深度学习 存储 计算机视觉
【YOLOv8改进】BRA(bi-level routing attention ):双层路由注意力(论文笔记+引入代码)
**BiFormer和HCANet摘要** BiFormer是CVPR2023提出的一种新型视觉Transformer,采用双层路由注意力机制实现动态稀疏注意力,优化计算效率和内存使用,适用于图像分类、目标检测和语义分割任务。代码可在GitHub获取。另一方面,HCANet是针对高光谱图像去噪的深度学习模型,融合CNN和Transformer,强化全局和局部特征建模,通过多尺度前馈网络提升去噪效果。HCANet在HSI数据集上表现优秀,其代码同样开放源代码。
|
7月前
|
机器学习/深度学习 网络架构 计算机视觉
YOLOv8改进有效涨点系列->适合多种检测场景的BiFormer注意力机制(Bi-level Routing Attention)
YOLOv8改进有效涨点系列->适合多种检测场景的BiFormer注意力机制(Bi-level Routing Attention)
387 0
|
7月前
|
数据可视化 数据挖掘 BI
Quick BI助力山东高速集团成功举办数字化应用场景创新大赛
Quick BI助力山东高速集团成功举办数字化应用场景创新大赛
289 0
|
移动开发 运维 监控
低代码开发云平台源码,支持多种企业应用场景,快速构建CRM、ERP、OA、BI、IoT、大数据应用程序
基于 moleculer 微服务架构开发,提供微服务的应用开发、配置管理、服务注册与发现、服务认证与授权、服务网关、服务监控、统一日志分析等,提供微服务应用的开发、部署、监控、运维等应用生命周期管理。
159 0
低代码开发云平台源码,支持多种企业应用场景,快速构建CRM、ERP、OA、BI、IoT、大数据应用程序
|
供应链 监控 Cloud Native
瓴羊Quick BI助力子不语实现全场景数据分析与决策
在中国跨境电商时尚服装类垂直领域,SHEIN与Temu 缠斗得“难解难分”,备受关注的SHEIN何时上市也是众人津津乐道的话题,但当“低调”的子不语集团(2420.hk)于2022年双十一在港交所主板上市以后,市场才意识到中国跨境电商又一巨头的出现。
307 0
瓴羊Quick BI助力子不语实现全场景数据分析与决策
|
监控 搜索推荐 数据可视化
Quick BI产品核心功能大图(五)移动端:让数据在更多业务场景中流通
将数据更好的融入日常工作中,一个重要的前提条件就是多端多渠道的数据触达和办公协同能力。 Quick BI凭借移动端交互体验,帮助用户随时随地便捷查看报表,并通过在线协同方式,追踪策略的执行落地。让数据在企业中流动起来,真正将数据贯穿在业务决策的过程中。
392 0
Quick BI产品核心功能大图(五)移动端:让数据在更多业务场景中流通
|
新零售 监控 BI
应用Quick BI实现首购用户和用户首购的三种运营场景监控
首购用户和用户首购是互联网公司运营中最简单、最常遇到、也最容易混淆的两个概念。运营人员与BI经常在首购用户和用户首购上沟通不畅,信息不对称造成理解偏差,导致数据仓库模型或者BI仪表板一改再改。本文归纳总结了三种常见运营场景来解释首购用户与用户首购的区别,并讲述如何应用Quick BI制作满足三种场景的监控仪表板,希望能对运营和数据分析同行有所启发。
3009 0

热门文章

最新文章