注意力机制详解系列(五):分支与时间注意力机制

👨💻作者简介: 大数据专业硕士在读,CSDN人工智能领域博客专家,阿里云专家博主,专注大数据与人工智能知识分享,公众号:GoAI的学习小屋,免费分享书籍、简历、导图等资料,更有学习交流群分享AI和大数据资料,加群方式加公众号回复“加群”即可。
🎉专栏推荐: 目前在写CV方向专栏,更新不限于目标检测、OCR、图像分类、图像分割等方向,目前活动仅19.9,虽然付费但会长期更新,感兴趣的小伙伴可以关注下➡️专栏地址
🎉学习者福利: 强烈推荐一个优秀AI学习网站,包括机器学习、深度学习等理论与实战教程,非常适合AI学习者。➡️网站链接。
🎉技术控福利: 程序员兼职社区招募!技术范围广,CV、NLP方向均可,要求有一定基础,最好是研究生及以上或有工作经验,欢迎大佬加入!群内Python、c++、Matlab等各类编程语言单应有尽有, 资源靠谱、费用自谈,有意向➡️访问。
📝导读:本篇为注意力机制系列第三篇,主要介绍注意力机制中的空间注意力机制,对空间注意力机制方法进行详细讲解,会对重点论文会进行标注 * ,并配上论文地址和对应代码。
🆙注意力机制详解系列目录:
1️⃣注意力机制详解系列(一):注意力机制概述
2️⃣注意力机制详解系列(二):通道注意力机制
3️⃣注意力机制详解系列(三):空间注意力机制
4️⃣注意力机制详解系列(四):混合注意力机制
5️⃣注意力机制详解系列(五):分支与时间注意力机制📝导读:本篇为注意力机制系列第五篇,主要介绍注意力机制中的分支与时间注意力机制,对分支与时间注意力机制方法进行详细讲解,会对重点论文会进行标注 * ,并配上论文地址和对应代码。
Branch注意力机制

branch注意力机制主要是关注哪个图片的意思,如一个branch中对不同图片以不同的权重,如CondConv,Dynamic Conv 等;或者在多个branch中,对不同的branch不同的权重,如Highway Network,SKNet, ResNeSt等。
Highway Network
论文:https://arxiv.org/abs/1507.06228
github: https://github.com/jzilly/RecurrentHighwayNetworks
Highway Network基于门机制引入了transform gate T 和carry gate C ,输出output是由tranform input和carry input组成,和resnet的思想有点相似。

SKNet
论文:https://arxiv.org/pdf/1903.06586.pdf
github: https://github.com/implus/SKNet
SKNet 对不同输入使用的卷积核感受野不同,参数权重也不同,可以自适应的对输出进行处理,与SENet有相同的地位:

sknet模块主要由 Split、Fuse、Select 三部分组成。
这里的Split是指对输入特征进行不同卷积核大小的完整卷积操作(包括efficient grouped/depthwise convolutions,Batch Normalization,ReLU function)。如结构图所示,对特征图进行Kernel3×3和Kernel5×5的卷积操作,得到两个输出,这里为了进一步减少计算量,会将5x5的卷积由两个3x3的卷积实现。在得到两个特征图后,第二步为Fuse部分,和SE模块相似,先将两个特征图逐像素相加后,使用全局平均池化(GAP),压缩成11c的特征图后,先降维再升维经过两次全连接,输出两个矩阵a和b,a和b各位置逐值相加和为1,即a=1-b。第三步为select部分,区别SENet,这里使用a和b的权重矩阵分别对第一步输出的两个特征图加权,最后求和得到最后的输出。
SKNet也是可直接嵌入网络的轻量级模块,SKNet使用时涉及到了卷积核数量和大小的选择问题。直观来说SKNet相当于给网络融入了soft attention机制,使网络可以获取不同感受野的信息,这或许可以成为一种泛化能力更好的网络结构。至于为何将SKNet放在branch attention 下面,可能是因为在第一步时使用了分组卷积吧。
ResNeSt
论文:https://hangzhang.org/files/resnest.pdf
github: https://github.com/zhanghang1989/ResNeSt
ResNeSt是基于SENet,SKNet和ResNext ,把attention 做到group level。

CondConv
论文:https://arxiv.org/abs/1904.04971
github: https://github.com/tensorflow/tpu/tree/master/models/official/efficientnet/condconv
作者提出一种条件参数卷积,它可以为每个样例学习一个特定的卷积核参数,通过替换标准卷积,CondConv可以提升模型的尺寸与容量,同时保持高效推理。

CondConv提出的方法与**混合专家方法(Mixture of Experts)**类似,需要在执行卷积计算之前通过多个专家对输入样本计算加权卷积核。主要需要计算几个较为昂贵的依赖样本的routing函数,Routing函数对应的模块与注意力模块类似,包括平均池化,全连接层和Sigmoid激活层。关键的是,每个卷积核只需计算一次并作用于不同位置即可。这意味着:通过提升专家数据量可达到提升网络容量的目的,而代码仅仅是很小的推理耗时:每个额外参数仅需一次乘加。如上图所示。
Dynamic Conv
论文:https://arxiv.org/pdf/1912.03458.pdf
github: https://github.com/kaijieshi7/Dynamic-convolution-Pytorch
文章提出的动态卷积能够根据输入,动态地集成多个并行的卷据核为一个动态核,可以提升模型表达能力而无需提升网络深度与宽度。通过简单替换成动态卷积。

动态卷积有K个kernel,共享相同的kernel size和输入输出维度,通过attention weight结合起来,与SENet对卷积的通道加权不同,动态卷积对卷积核加权。
时域注意力机制
时域注意力机制在cv领域主要考虑有时序信息的领域,如视频领域中的动作识别方向,其注意力机制主要是在时序列中,关注某一时序即某一帧的信息。

TAM
paper: https://arxiv.org/abs/2005.06803v1
github: https://github.com/liu-zhy/temporal-adaptive-module
由于存在拍摄视角变化和摄像机运动等多个因素,视频数据通常表现出较为复杂的时序动态特性,不同视频在时序维度上呈出不同的运动模式。为了解决这个问题,时序自适应模块(TAM)为每个视频生成特定的时序建模核。该算法针对不同视频片段,灵活高效地生成动态时序核,自适应地进行时序信息聚合。整体结构入下图所示:

TAM将时序自适应核的学习过程分解为局部分支和全局分支。全局分支( G )基于全局时序信息生成视频自适应的动态卷积核以聚合时序信息,这种方式的特点是对时序位置不敏感,忽略了局部间的差异性。而局部分支(L )使用带有局部时序视野的 1D 卷积学习视频的局部结构信息,生成对时序位置敏感的重要性权重,以弥补全局分支存在的不足。
GLTR
paper: https://arxiv.org/abs/1908.10049
github: https://github.com/ljn114514/GLTR
这是一篇用于行人ReID领域的一篇论文,作者提出在短期建模,基于当前帧的相邻几帧,能加强当前帧人物在该时间段的外观和运动情况,当任务发生遮挡时,则需要使用长期建模,增加时间跨度。所以论文在融合帧的特征时,短期建模和长期建模一起用上:

在短期建模时,使用了空洞卷积,增加感受野,在这里则是增加对当前帧的相邻几帧一起进行卷积处理,也就是综合相邻几帧的信息来增强当前帧的信息。在长期建模中,则使用的是transformer中的self-attention 机制。transformer的attention计算是通过所有信息与当前信息的关系计算的,也就是相当于基于当前帧与全部帧的关系,将全部帧的信息选择性的给予到当前帧,是一个长期建模的过程。也是变相的将注意力机制用在建模中。
分支注意力机制论文总结
- Training very deep networks (NeurIPS 2015) pdf 🔥
- Selective kernel networks (CVPR 2019) pdf 🔥
- CondConv: Conditionally Parameterized Convolutions for Efficient Inference (NeurIPS 2019) pdf
- Dynamic convolution: Attention over convolution kernels (CVPR 2020) pdf
- ResNest: Split-attention networks (arXiv 2020) pdf 🔥
时间注意力机制论文总结
- Jointly attentive spatial-temporal pooling networks for video-based person re-identification (ICCV 2017) pdf 🔥
- Video person reidentification with competitive snippet-similarity aggregation and co-attentive snippet embedding (CVPR 2018) pdf
- Scan: Self-and-collaborative attention network for video person re-identification (TIP 2019) [pdf](
相关文章:
注意力机制详解系列(五):分支与时间注意力机制
👨💻作者简介: 大数据专业硕士在读,CSDN人工智能领域博客专家,阿里云专家博主,专注大数据与人工智能知识分享,公众号:GoAI的学习小屋,免费分享书籍、简历、导图等资料&…...
创宇盾重保经验分享,看政府、央企如何防护?
三月重保已经迫近,留给我们的准备时间越来越少,综合近两年三月重保经验及数据总结,知道创宇用实际案例的防护效果说话,深入解析为何创宇盾可以在历次重保中保持“零事故”成绩,受到众多部委、政府、央企/国企客户的青睐…...
软件测试面试汇总
在浏览器中输入 URL,回车后发生了什么? 在浏览器中输入URL并按下回车键后,大致流程如下: 1、浏览器解析 URL,提取出协议(例如HTTP、HTTPS)、主机名和路径等信息。 2、浏览器查找该URL的缓存记录࿰…...
空指针,野指针
空指针在C/C中,空指针(null pointer)是指向内存地址0的指针变量。NULL在C/C中的定义为:#ifndef NULL#ifdef __cplusplus#define NULL 0#else#define NULL ((void *)0)#endif #endif从上面的代码定义中,我们可以发现在C…...
Mysql Nested-Loop Join算法和MRR
MySQL8之前仅支持一种join 算法—— nested loop,在 MySQL8 中推出了一种新的算法 hash join,比 nested loop 更加高效。(后面有时间介绍这种join算法) 1、mysql驱动表与被驱动表及join优化 先了解在join连接时哪个表是驱动表&a…...
Spark 广播/累加
Spark 广播/累加广播变量普通变量广播分布式数据集广播克制 Shuffle强制广播配置项Join Hintsbroadcast累加器Spark 提供了两类共享变量:广播变量(Broadcast variables)/累加器(Accumulators) 广播变量 创建广播变量…...
飞天云动,站在下一个商业时代的门口
ChatGPT的爆火让AIGC再度成为热词,随之而来的是对其商业化的畅想——不是ChatGPT自身如何盈利,而是它乃至整个AIGC能给现在的商业环境带来多大改变。 这不由得令人想起另一个同样旨在改变世界的概念,元宇宙。不同的是,元宇宙更侧…...
上海分时电价机制调整对储能项目的影响分析
安科瑞 耿敏花 2022年12月16日,上海市发改委发布《关于进一步完善我市分时电价机制有关事项的通知》(沪发改价管〔2022〕50号)。通知明确上海分时电价机制,一般工商业及其他两部制、大工业两部制用电夏季(7、8、9月)和冬季&#x…...
产品新人如何快速上手工作
三百六十行,行行出产品经理:上至封神的乔布斯,下至卖鸡蛋罐饼的阿姨,他们对如何打造自己的产品都会有一套完整的产品思路,这也是为什么说“人人都是产品经理”。这个看似光鲜的“经理”有时也会被戏称产品汪࿰…...
Linux: ARM GIC仅中断CPU 0问题分析
文章目录1. 前言2. 分析背景3. 问题4. 分析4.1 ARM GIC 中断芯片简介4.1.1 中断类型和分布4.1.2 拓扑结构4.2 问题根因4.2.1 设置GIC SPI中断的CPU亲和性4.2.2 GIC初始化:缺省的CPU亲和性4.2.2.1 boot CPU亲和性初始化流程4.2.2.1 其它非 boot CPU亲和性初始化流程5…...
第20篇:Java运算符全面总结(系列二)
目录 4、逻辑运算符 4.1 逻辑运算符 4.2 代码示例 5、赋值运算符 5.1 赋值运算符...
OpenCV4.x图像处理实例-OpenCV两小时快速入门(基于Python)
OpenCV两小时快速入门(基于Python) 文章目录 OpenCV两小时快速入门(基于Python)1、OpenCV环境安装2、图像读取与显示3、图像像素访问、操作与ROI4、图像缩放5、几何变换5.1 平移5.2 旋转6、基本绘图6.1 绘制直线6.2 绘制圆6.3 绘制矩形6.4 绘制文本7、剪裁图像8、图像平滑与…...
【Git】Mac忽略.DS_Store文件
我们在github上经常看到某些仓库里面包含了.DS_Store文件,或者某些sdk的压缩包里面可以看到,这都是由于随着git的提交把这类文件也提交到仓库,压缩也是一样,压缩这个先留着后面处理。 Mac上的.DS_Store文件 .DS_Store 文件&#…...
12.2 基于Django的服务器信息查看应用(CPU信息)
文章目录CPU信息展示图表展示-视图函数设计图表展示-前端界面设计折线图和饼图展示饼图测试折线图celery和Django配合实现定时任务Windows安装redis根据数据库中的数据绘制CPU折线图CPU信息展示 图表展示-视图函数设计 host/views.py def cpu(request):logical_core_num ps…...
【软件测试】接口测试总结
本文主要分为两个部分: 第一部分:主要从问题出发,引入接口测试的相关内容并与前端测试进行简单对比,总结两者之前的区别与联系。但该部分只交代了怎么做和如何做?并没有解释为什么要做? 第二部分࿱…...
代码随想录算法训练营第52天 || 300.最长递增子序列 || 674. 最长连续递增序列 || 718. 最长重复子数组
代码随想录算法训练营第52天 || 300.最长递增子序列 || 674. 最长连续递增序列 || 718. 最长重复子数组 300.最长递增子序列 题目介绍 给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。 子序列 是由数组派生而来的序列,删除(或…...
gitblit 安装使用
1 安装服务端 简而言之:需要安装 java,gitblit, git 三个软件 Windows 10环境使用Gitblit搭建局域网Git服务器 前言 安装Java并配置环境安装gitblit并配置启动gitblit为windows服务使用gitblit创建repository并管理用户 1.1 安装Java并配…...
使用 TensorFlow、Keras-OCR 和 OpenCV 从技术图纸中获取信息
简单介绍输入是技术绘图图像。对象检测模型获取图像后对其进行分类,找到边界框,分配维度,计算属性。示例图像(输入)分类后,找到“IPN”部分。之后,它计算属性,例如惯性矩。它适用于不…...
ESP32设备驱动-GUVA-S12SD紫外线检测传感器驱动
GUVA-S12SD紫外线检测传感器驱动 文章目录 GUVA-S12SD紫外线检测传感器驱动1、GUVA-S12SD介绍2、硬件准备3、软件准备4、驱动实现1、GUVA-S12SD介绍 GUVA-S12SD 紫外线传感器芯片适用于检测太阳光中的紫外线辐射。 它可用于任何需要监控紫外线量的应用,并且可以简单地连接到任…...
WIN7下 program file 权限不足?咋整?!!
在WIN7下对Program Files目录的权限问题 [问题点数:40分,结帖人mysunck] 大部分人说要使用manifest,但是其中一个人说: “安装程序要求管理员很正常,你的程序可以在programfiles,但用户数据不能放那里,因…...
UnityFigmaBridge:革新性设计开发衔接工具,无缝连接Figma与Unity生态
UnityFigmaBridge:革新性设计开发衔接工具,无缝连接Figma与Unity生态 【免费下载链接】UnityFigmaBridge Easily bring your Figma Documents, Components, Assets and Prototypes to Unity 项目地址: https://gitcode.com/gh_mirrors/un/UnityFigmaBr…...
实战指南:深入Terraria源码的5个核心模块与架构解析
实战指南:深入Terraria源码的5个核心模块与架构解析 【免费下载链接】Terraria-Source-Code 项目地址: https://gitcode.com/gh_mirrors/te/Terraria-Source-Code 你是否曾好奇一款2D沙盒游戏如何实现复杂的物理系统、网络同步和游戏逻辑?Terrar…...
Fasd终极路线图:2025年项目发展方向与社区规划完全指南
Fasd终极路线图:2025年项目发展方向与社区规划完全指南 【免费下载链接】fasd Command-line productivity booster, offers quick access to files and directories, inspired by autojump, z and v. 项目地址: https://gitcode.com/gh_mirrors/fa/fasd Fasd…...
Phi-4-Reasoning-Vision效果展示:红外图像+可见光图像跨模态推理
Phi-4-Reasoning-Vision效果展示:红外图像可见光图像跨模态推理 1. 多模态推理工具概览 Phi-4-Reasoning-Vision是基于微软Phi-4-reasoning-vision-15B多模态大模型开发的高性能推理工具,专为双卡RTX 4090环境优化。这个工具最令人印象深刻的是它能够处…...
EB Tresos里XDM文件详解:不只是配置界面,更是你定制MCAL模块的‘源代码’
EB Tresos中XDM文件的深度解析:从配置界面到MCAL模块定制化开发 在AUTOSAR开发领域,EB Tresos Studio作为行业标准的MCAL配置工具,其核心机制往往隐藏在那些看似普通的配置文件中。XDM文件就是这样一个关键角色——它远不止是配置界面的数据源…...
Windows右键菜单管理效率提升指南:用ContextMenuManager打造个性化定制体验
Windows右键菜单管理效率提升指南:用ContextMenuManager打造个性化定制体验 【免费下载链接】ContextMenuManager 🖱️ 纯粹的Windows右键菜单管理程序 项目地址: https://gitcode.com/gh_mirrors/co/ContextMenuManager 你是否曾遇到这样的场景&…...
别再死记硬背了!用一次完整的网页访问,帮你彻底搞懂HCIA/HCIP里的TCP/IP和OSI模型
从输入网址到页面加载:用真实场景拆解TCP/IP与OSI模型 想象一下这个场景:你在浏览器地址栏输入"www.baidu.com",按下回车键,不到一秒就看到了熟悉的搜索页面。这看似简单的操作背后,隐藏着一场精密的网络协议…...
像素幻梦·创意工坊效果展示:从文本描述到可编辑PSD分层像素图的生成能力
像素幻梦创意工坊效果展示:从文本描述到可编辑PSD分层像素图的生成能力 1. 像素艺术的新纪元 在数字艺术创作领域,像素艺术一直保持着独特的魅力。传统的像素画创作需要艺术家逐格绘制,耗时耗力。而如今,像素幻梦创意工坊&#…...
终极指南:Jellyfin豆瓣插件完整配置手册,30分钟打造中文媒体库
终极指南:Jellyfin豆瓣插件完整配置手册,30分钟打造中文媒体库 【免费下载链接】jellyfin-plugin-douban Douban metadata provider for Jellyfin 项目地址: https://gitcode.com/gh_mirrors/je/jellyfin-plugin-douban 还在为Jellyfin媒体库缺少…...
DataGrip安装使用全攻略 (DataGrip更改新建查询存储默认位置)
一、DataGrip安装 下载 DataGrip 安装包 访问 DataGrip 官网:https://www.jetbrains.com/datagrip/download ,下载 DataGrip 2025.3.5 版本的安装包: 我这里也有安装包 链接: https://pan.baidu.com/s/1g5aiHWsv9VyIhFD-7TBdEg?pwd=0908 提取码: 0908 --来自百度网盘超…...
