注意力机制详解系列(一):注意力机制概述

作者简介: 大数据专业硕士在读,CSDN人工智能范畴博客专家,阿里云专家博主,专心大数据与人工智能知识共享。大众号: GoAI的学习小屋,免费共享书籍、简历、导图等资料,更有沟通群共享AI和大数据,加群办法大众号回复“加群”或➡️点击链接。 专栏引荐: 现在在写一个CV方向专栏,后期会更新不限于目标检测、OCR、图画分类、图画切割等方向,现在活动仅19.9,尽管付费但会长时刻更新且价格便宜,感兴趣的小伙伴能够重视下,有拿手CV的大佬能够联络我协作一同写。➡️专栏地址 学习者福利: 强烈引荐一个优异AI学习网站,包含机器学习、深度学习等理论与实战教程,非常合适AI学习者。➡️网站链接。 技能控福利: 程序员兼职社区招募!技能规模广,CV、NLP方向均可,要求有必定基础,最好是研究生及以上或有作业经验,欢迎大佬加入!群内Python、c++、Matlab等各类编程言语单包罗万象, 资源靠谱、费用自谈,有意向➡️拜访社区。


留意力机制系列介绍:本系列首要介绍核算机视觉范畴的留意力机制办法,分为留意力机制概述、通道留意力,空间留意力,混合域留意力和时域留意力、留意力机制总结等不同分类打开介绍,后续系列会对上述各种留意力机制办法进行要点解说,要点论文会配上论文和对应代码,并扼要解说,如有错误请咱们在评论区纠正,如有侵权联络删去。

留意力机制详解系列目录:

1️⃣留意力机制详解系列(一):留意力机制概述

2️⃣留意力机制详解系列(二):通道留意力机制

3️⃣留意力机制详解系列(三):空间留意力机制

4️⃣留意力机制详解系列(四):混合留意力机制

5️⃣留意力机制详解系列(五):分支与时刻留意力机制

一、留意力机制介绍

布景:

留意力机制来历于上个世纪90年代,认知范畴的学者发现,人类在处理信息时,天然会过滤掉不太重视的信息,着重于感兴趣信息,所以将这种处理信息的机制称为留意力机制。留意力机制的灵感来历能够归结到人对环境的生理感知上来。比方说,咱们的视觉体系更倾向于去挑选印象中的部分信息进行会集剖析而忽略掉图画中的无关信息。

留意力机制概念:

留意力机制能够理解为,核算机视觉体系在模拟人类视觉体系中能够敏捷高效地重视到要点区域的特性。关于人类来说,当面对复杂场景的时分,咱们能够敏捷重视到要点区域,并处理这些区域。关于视觉体系,上述进程能够笼统成下面的式子:

其间 g(x) 表明对输入特征进行处理并产生留意力的进程,f(g(x),x) 表明结合留意力对输入特征进行处理的进程。举两个详细的比方self-attention[2]和senet[3],关于 self-attention 来说,能够将上述公式详细化为:

关于 senet 来说,能够将上述公式详细化为:

总结:留意力机制的实质是一种权重分配机制,即对不同重要程度的信息赋予不同的权重,让体系学会留意力重视要点信息,同时忽略无关信息。

留意力机制使用

核算机视觉留意力机制能够被视为一个动态挑选进程,经过依据输入的重要性自适应地加权特征来完成。自从被提出用以解决机器翻译问题以来,留意力模型(Attention Model)现在已经成为神经网络研究中的一个非常重要的研究范畴。现在留意力机制在许多视觉使命中都有好处,例如:图画分类、目标检测、语义切割、人脸辨认、人物再辨认、动作辨认、少数显现学习、医学图画处理,图画生成、姿态估量、超分辨率、三维视觉和多形式使命。

留意力机制发展历程:

视觉中的留意力机制能够粗略的分红四个部分:第一个部分是开始于 RAM,特点是都使用了RNN网络进行产生留意力。第二个部分是开始于 STN[5],特点是显式地猜测重要的区域,代表性作业还有DCNs等。第三个部分是开始于 SENet,特点是隐式地猜测重要的部分,代表性作业还有CBAM等。第四个部分是自留意力机制相关的留意力办法,代表性作业有Non-Local, ViT等。

二、留意力机制种类

按不同种类分,留意力机制首要分红软留意力机制、强留意力机制、和自留意力机制。 1.软留意力机制:依据每个区域被重视程度的高低,用0~1之间的概率值来表明;与硬留意力比较,软留意力是一个可微的进程,能够经过练习进程的前向和后向反应学习得到;因为对每部分信息都有考虑,所以相关于硬留意机制,核算量比较大。

2.强留意力机制:即哪些区域是被重视的,哪些区域是不被重视的,是一个是或不是的问题,会直接放弃掉一些不相关项,如在图画范畴的图画裁剪,裁剪后留下的部分即被重视的区域;优势在于会节约必定的时刻和核算成本,但是有可能会丢失一部分信息。值得留意的是,因其是一个不行微的进程,所以在cv范畴,一般用在强化学习中;如在视频范畴中,因为有时序性联络,每张图片即为某个时刻点下的采样,强留意力机制则能够看成是否对该时刻点的采样重视,能够经过强化学习来练习。

3.自留意力机制:自留意力是对每个输入赋予的权重取决于输入数据之间的联络,即经过输入项内部之间的相互博弈决议每个输入项的权重。与前两项机制比较,自留意力在核算时,具有并行核算的优势。

总结: 硬留意力机制是从当前储存的信息中只挑选一个,例如在卷积神经网络中,只挑选N个特征图(通道)中的其间1个(通道留意力),或者是从图画中裁切下其间的一小部分区域(空间留意力)。软留意力机制则不丢弃任何信息,仅仅给他们赋予不同的权重,给予不同的影响力。因为硬留意力机制一般不行微分,很难经过反向传播参加练习,神经网络中一般使用软留意力机制。

在CV范畴留意力机制办法还能够分类为通道留意力,空间留意力,混合域留意力和时域、分支留意力机制等。 下面经过网上的一张总述图介绍卷积神经网络中常见的几种留意力机制模块:

不同留意力机制结构比照:

不难发现,关于不同的留意力机制,他们有着不同的含义,比方关于通道留意力,它重视于挑选重要的通道,而在深度特征图中,不同的通道往往表明不同的物体,所以它的含义是重视什么(物体),即what to attend。同理,空间留意力对应 where to attend, 时刻留意力对应 when to attend,分支留意力对应 which to attend。详细的留意力机制请参见论文。

留意力机制分类总结:

留意力机制分类 描绘 翻译
Channel attention(what to pay attention to) Generate attention mask across the channel domain and use it to select important channels 在通道域中生成留意力掩码,并使用它挑选重要通道
Spatial attention(where to pay attention to) Generate attention mask across spatial domains and use it to select important spatial regions or predict the most relevant spatial position directly 生成跨空间域的留意力掩码,并使用它来挑选重要的空间区域或直接猜测最相关的空间方位
Temporal attention(when to pay attention to) Generate attention mask in time and use it to select key frames 及时生成留意力掩码,并使用它挑选关键帧
Branch attention(which to pay attention to) Generate attention mask across the different branches and use it to select important branches 在不同的分支上生成留意力掩码,并使用它来挑选重要的分支
Channel & spatial attention Predict channel and spatial attention masks separately or generate a joint 3-D channel, height, width attention mask directly and use it to select important features 别离猜测通道和空间留意力掩码,或直接生成一个联合的三维通道、高度、宽度留意力掩码,并使用它挑选重要特征
Spatial & temporal attention Compute temporal and spatial attention masks separately, or produce a joint spatiotemporal attention mask, to focus on informative regions 别离核算时刻和空间留意力掩码,或生成联合时空留意力掩码,以重视信息区域

三、留意力机制介绍:

核算机范畴存在各式各样的留意力机制,经过赋予空间中的不同通道或者区域以不同的权重。下图总结了现在常用的cv中的留意力机制,以及相互联络。(图片摘自文献网络,侵权联络删去!)

通道留意力(Channel Attention)

在深度神经网络中,不同特征图的不同通道常代表不同目标。而通道留意力作为一个目标挑选进程,能够自适应地重新校准每个通道的权重,然后决议重视什么。 因而,按照类别和出版日期将代表性通道重视机制进行分类,使用规模有分类(Cls)、语义切割(SSeg)、实例切割(ISeg)、风格转化(ST)、动作辨认(Action)。

空间留意力(Spatial Attention)

空间留意力能够被看作是一种自适应的空间区域挑选机制。其使用规模比通道留意力多出了精密分类(FGCls)和图画字幕(ICap)。

时刻留意力(Temporal Attention)

时刻留意力能够被看作是一种动态的时刻挑选机制,决议了何时进行留意,因而一般用于视频处理。

分支留意力(Branch Attention) 分支留意能够被看作是一种动态的分支挑选机制,经过多分支结构决议去留意什么。

通道空间留意力(Channel & Spatial Attention)

通道和空间结合的留意力机制能够自适应地挑选重要的目标和区域,由残差留意力(Residual Attention)网络开创了这一内容。在残差留意力之后,为了有用使用大局信息,后来的作业又相继引进大局平均池化(Global Average Pooling),引进自留意力机制等内容。

时空留意力(Spatial & Temporal Attention) 时空留意力机制能够自适应地挑选重要区域和关键帧。

总结:本章就各种不同域的留意力机制进行介绍,首要进行分类汇总介绍,后续系列会对上述各种留意力机制进行要点解说,要点论文会配上论文和对应代码,并扼要解说,敬请期待。

本文参阅:arxiv.org/abs/2111.07…