YOLO改进系列之注意力机制(GAM Attention模型介绍)

模型结构

为了提高计算机视觉任务的性能,人们研究了各种注意力机制。然而以往的方法忽略了保留通道和空间方面的信息以增强跨维度交互的重要性。因此,liu提出了一种通过减少信息弥散和放大全局交互表示来提高深度神经网络性能的全局注意力机制。作者的目标是设计一种注意力机制能够在减少信息弥散的情况下也能放大全局维交互特征,采用序贯的通道-空间注意力机制并重新设计了CBAM子模块,GAM Attention的整体结构如下图所示。
在这里插入图片描述

GAM Attention整体包含通道注意力模块和空间注意力这两个模块。通道注意子模块使用三维排列来在三个维度上保留信息。然后,它用一个两层的MLP放大跨维通道-空间依赖性。(MLP是一种编码-解码器结构,与BAM相同,其压缩比为r),通道注意子模块如下图所示。
在这里插入图片描述

在空间注意力子模块中,为了关注空间信息,使用两个卷积层进行空间信息融合,还从通道注意力子模块中使用了与BAM相同的缩减比r。与此同时,由于最大池化操作减少了信息的使用,产生了消极的影响。这里删除了池化操作以进一步保留特性映射。空间注意力子模块如下图所示。
在这里插入图片描述

实现代码

GAM Attention的实现代码如下所示:
在这里插入图片描述

YOLOv5_14">YOLOv5模型改进

本文在YOLOv5目标检测算法的Backbone和Head部分分别加入GAM Attention来增强目标提取能力,以下分别是在Backbone以及Head中改进的模型结构和参数(以YOLOv5s为例)。
在Backbone部分
在这里插入图片描述
在这里插入图片描述

在Head部分
在这里插入图片描述
在这里插入图片描述

总结

GAM Attention提出一种通过减少信息弥散和放大全局交互表示来提高深度神经网络性能的全局注意力机制。此外,CloAttentionGAM Attention可进一步应用于YOLOv7、YOLOv8等模型中,欢迎大家关注本博主的微信公众号 BestSongC,后续更多的资源如模型改进、可视化界面等都会在此发布。另外,本博主最近也在MS COCO数据集上跑了一些YOLOv5的改进模型,实验表明改进后的模型能在MS COCO 2017验证集上分别涨点1-3%,感兴趣的朋友关注后回复YOLOv5改进。


http://www.niftyadmin.cn/n/5198312.html

相关文章

【Python】给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1<=n<=200

2、问题描述 给定一个长度为n的数列&#xff0c;将这个数列按从小到大的顺序排列。1<n<200 样例输入 5 8 3 6 4 9 样例输出 3 4 6 8 9 n int(input()) a list(map(int,input().split())) a.sort() for i in a:print(i,end ) 运行结果&#xff1a;

杭电oj 2050 折线分割平面 C语言

#include<stdio.h>void main() {int c, n, i;long long sum;while (~scanf_s("%d", &c)){while (c--){scanf_s("%d", &n); sum 0;sum 2 * n * n - n 1;printf("%lld\n", sum);}} }

MATLAB 嵌套switch语句||MATLAB while循环

MATLAB 嵌套switch语句 在 MATLAB 中嵌套 switch 语句是可能的&#xff0c;可以在 switch 一部分外嵌套 switch 语句序列。即使 case 常量的内部和外部的 switch 含有共同的值&#xff0c;也不算冲突出现。 MATLAB嵌套switch语句语法 嵌套switch语句的语法如下&#xff1a; s…

SpringBoot中日志的使用log4j2

SpringBoot中日志的使用log4j2 1、log4j2介绍 Apache Log4j2 是对 Log4j 的升级&#xff0c;它比其前身 Log4j 1.x 提供了重大改进&#xff0c;并提供了 Logback 中可用的许多改 进&#xff0c;同时修复了 Logback 架构中的一些问题&#xff0c;主要有&#xff1a; 异常处理…

【活动通知】2023 Elastic Meetup 北京站将于12月2日下午1点30在北京召开

《2023 Elastic Meetup 北京站》活动将于 12 月 2 日下午 1 点 30 在北京市海淀区西北旺东路10号腾讯北京总部大楼213会议室举办&#xff0c;届时将有行业专家及知名企业分享他们在 Elasticsearch 应用中的经验与观点&#xff0c;带来最前沿的技术分享与思想碰撞。 请使用电脑浏…

代码随想录算法训练营第23期day54|392.判断子序列、115.不同的子序列

一、392.判断子序列 力扣题目链接 和最长公共子序列相似&#xff0c;不同之处在于这一道题只有母序列&#xff08;较长的序列&#xff09;可以进行删除操作&#xff0c;体现在遍历中就是除了左上方之外&#xff0c;上方和下方只有一个可以转移过来。 class Solution { publi…

Google的检索工具栏如何使用?

Google是目前全球最大的搜索引擎之一&#xff0c;它提供了一个强大的搜索工具栏&#xff0c;让用户可以更加方便地搜索您想要找到的信息。今天我们将重点介绍如何使用Google的检索工具栏来帮助您更快速、准确地获取正确的信息。 1、找到Google的检索工具栏 首先&#xff0c;在…

golang学习笔记——多态

接口体现多态的两种形式 多态参数 在前面的Usb接口案例&#xff0c;Usb usb&#xff0c;即可以接收手机变量&#xff0c;又可以接收相机变量&#xff0c;就体现了Usb接口多态 多态数组 演示一个案例&#xff1a;给Usb数组中&#xff0c;存放Phone结构体和Camera结构体变量&…