当前位置: 首页 > news >正文

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

在这里插入图片描述

👨‍💻作者简介: 大数据专业硕士在读,CSDN人工智能领域博客专家,阿里云专家博主,专注大数据与人工智能知识分享。
🎉专栏推荐: 目前在写CV方向专栏,更新不限于目标检测、OCR、图像分类、图像分割等方向,目前活动仅19.9,虽然付费但会长期更新,感兴趣的小伙伴可以关注下➡️专栏地址
🎉学习者福利: 强烈推荐一个优秀AI学习网站,包括机器学习、深度学习等理论与实战教程,非常适合AI学习者。➡️网站链接。
🎉技术控福利程序员兼职社区招募,靠谱!覆盖技术范围广,深度学习CV、NLP均可,Pyhton、matlab各类编程语言, 有意向的同学➡️访问地址。


📝注意力机制系列介绍:本系列主要介绍计算机视觉领域的注意力机制方法,分为注意力机制概述、通道注意力,空间注意力,混合域注意力和时域注意力、注意力机制总结等不同分类展开介绍,后续系列会对上述各种注意力机制方法进行重点讲解,重点论文会配上论文和对应代码,并简要解释,如有错误请大家在评论区指正,如有侵权联系删除。

一、注意力机制介绍

注意力机制来源于上个世纪90年代,认知领域的学者发现,人类在处理信息时,天然会过滤掉不太关注的信息,着重于感兴趣信息,于是将这种处理信息的机制称为注意力机制。注意力机制的灵感来源可以归结到人对环境的生理感知上来。比方说,我们的视觉系统更倾向于去挑选影像中的部分信息进行集中分析而忽略掉图像中的无关信息。
在这里插入图片描述

计算机视觉注意力机制可以被视为一个动态选择过程,通过根据输入的重要性自适应地加权特征来实现。自从被提出用以解决机器翻译问题以来,注意力模型(Attention Model)现在已经成为神经网络研究中的一个非常重要的研究领域。目前注意力机制在很多视觉任务中都有好处,例如:图像分类、目标检测、语义分割、人脸识别、人物再识别、动作识别、少量显示学习、医学图像处理,图像生成、姿势估计、超分辨率、三维视觉和多模式任务。

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

注意力机制发展历程:
在这里插入图片描述

二、注意力机制种类

在这里插入图片描述

按不同种类分,注意力机制主要分成软注意力机制、强注意力机制、和自注意力机制。
1.软注意力机制:根据每个区域被关注程度的高低,用0~1之间的概率值来表示;与硬注意力相比,软注意力是一个可微的过程,可以通过训练过程的前向和后向反馈学习得到;因为对每部分信息都有考虑,所以相对于硬注意机制,计算量比较大。

2.强注意力机制:即哪些区域是被关注的,哪些区域是不被关注的,是一个是或不是的问题,会直接舍弃掉一些不相关项,如在图像领域的图像裁剪,裁剪后留下的部分即被关注的区域;优势在于会节省一定的时间和计算成本,但是有可能会丢失一部分信息。值得注意的是,因其是一个不可微的过程,所以在cv领域,一般用在强化学习中;如在视频领域中,因为有时序性关系,每张图片即为某个时间点下的采样,强注意力机制则可以看成是否对该时间点的采样关注,可以通过强化学习来训练。

3.自注意力机制:自注意力是对每个输入赋予的权重取决于输入数据之间的关系,即通过输入项内部之间的相互博弈决定每个输入项的权重。与前两项机制相比,自注意力在计算时,具有并行计算的优势。

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

**在CV领域注意力机制方式还可以分类为通道注意力,空间注意力,混合域注意力和时域注意力等。**下面通过网上的一张综述图介绍卷积神经网络中常见的几种注意力机制模块:
img
不同注意力机制结构对比:
在这里插入图片描述

三、注意力机制介绍:

计算机领域存在各式各样的注意力机制,通过赋予空间中的不同通道或者区域以不同的权重。下图总结了目前常用的cv中的注意力机制,以及相互关系。(图片摘自文献网络,侵权联系删除!)
在这里插入图片描述
总结:本章就各种不同域的注意力机制进行介绍,主要进行分类汇总介绍,后续系列会对上述各种注意力机制进行重点讲解,重点论文会配上论文和对应代码,并简要解释,敬请期待。

http://www.lryc.cn/news/18835.html

相关文章:

  • 搜索引擎 Elasticsearch 的三大坑
  • 运营级手机直播平台源码 短视频直播带货APP源码
  • http/HTTPS相关的一些知识
  • MySQL高可用 集群(MHA)
  • 【JavaScript速成之路】JavaScript运算符
  • 计网个人作业05
  • 码匠 × OpenAI :快速生成 SQL 语句,提升开发效率!
  • 电脑显示屏不亮但是主机已开机?5种原因以及解决方案
  • 公司项目vue cli2升级到vue cli3
  • 流程图培训
  • 编写使用多buffer的应用程序
  • 【java 8】强大的 Stream API
  • 自动驾驶仿真:ECU TEST自动化测试常用API调用
  • notepad++中使用正则表达式
  • 什么蓝牙耳机打游戏好?打游戏好用的无线蓝牙耳机
  • 基于appium的app自动化测试框架
  • 【拿好了!Linux 运维必备的 13 款实用工具!】
  • 软考中级--嵌入式系统设计师考试培训教程开始了
  • JDBC学习(复习)-面试总结详细
  • 前端:你不知道的async await
  • c#前端实现对pcl点云颜色根据强度特征动态变化突出指定对象
  • 如何制定达人营销策略
  • 100种思维模型之三层解释思维模型-020
  • RK系列(RK3568) i2s 音频输入 麦克风驱动
  • Python|Pymol的安装
  • Mysql中关于查询日志的配置详解
  • 外包整整干了一年,废了。。。
  • 内网渗透(五十六)之域控安全和跨域攻击-非约束委派攻击
  • 初阶C语言——指针【详解】
  • MySQL tinyint(1) 、int(32) 与 varchar(255) 长度含义不同