计算机视觉中的自注意力

来源:机器学习研究组订阅

自从引入网络以来,深度学习中的注意力机制在机器翻译和 社区中广受欢迎。然而,在计算机视觉中,卷积神经网络 (CNN) 仍然是常态,自注意力才刚刚开始慢慢渗透到研究的主体中,要么补充现有的架构,要么完全取代它们。

在这篇文章中,我将尝试阐明视觉自注意力的最新发展,并强调其可能带来的好处。对于这项任务,我将展示三篇不同的论文,在我看来,它们很好地说明了计算机视觉中自我注意的最新技术。

我将介绍的第一篇论文是Guan等人来自医学影像分析社区,这让我有宾至如归的感觉。与自然图像(照片)不同,医学图像的外观通常非常相似。它们是使用来自标准化位置的类似采集参数获得的。对于放射科医生来说,阅读图像的经验主要来自于知道确切的位置以找到某种病理。因此,即使在其他研究领域之前,注意力在医学图像分析中也发挥了重要作用也就不足为奇了。

有问题的论文试图提高胸部射线图像自动胸部疾病分类的性能。以前,已经提出了仅通过查看全局图像来检测和分类胸部 X 射线病理的网络。因此,多标签分类是通过使用二进制交叉熵作为损失函数或其他一些标记机制(例如,使用作为解码器来捕获标签之间的相互依赖关系的编码器-解码器框架来执行的。

使用整个射线图像进行分类的问题在于,在医学图像中,病变区域与整个图像相比可能非常小,甚至可能位于边界某处,这会给分类器和分类器带来大量噪声。降低检测精度。此外,胸部射线图像经常出现错位(例如图1,第二行中的示例)。这种错位会导致图像周围的边界不规则,也可能对分类产生负面影响。

在论文中,作者使用递归硬注意力(即硬自注意力)通过裁剪出图像的判别部分并将全局图像和裁剪部分一起分类来提高检测精度(见图1)左侧的整个图像和右侧的裁剪部分)。

图1:来自[1]的两个训练图像,包括从网络中特定卷积层提取的热图以及由此产生的裁剪图像。全局图像和裁剪图像都用于分类。

该网络由三个分支组成:

  • 全局分支处理整个图像并确定裁剪ROI;

  • 局部分支展示注意力机制并处理裁剪后的图像;

  • 分支连接全局和局部分支的池化输出,并使用密集层执行最终分类。

所有分支都是分类网络,在最后执行多类分类(如图2所示)以预测病理的存在。除了分类之外,全局分支还用于生成确定裁剪区域的热图。热图是通过计算某个高级层沿通道的最大值来生成的。然后生成与热图大小相同的掩码。如果某个位置的每通道最大化热图的值大于某个阈值,则在该位置为掩码分配1。否则,掩码的值为0。之后裁剪区域被确定,以便所有掩码值为1的点都在裁剪范围内。然后图像的裁剪部分通过本地分支运行。此外,两个分支的输出在融合分支中融合以执行额外的分类。

网络训练分三步:

  • ImageNet 预训练的全局分支的微调;

  • 掩码推理以获得裁剪图像并执行局部分支的微调。因此,全局分支中的权重是固定的;

  • 连接全局和局部分支输出并微调融合分支,同时冻结其他分支的权重。

融合分支用于产生模型的最终分类结果,正如预期的那样,它比其他两个分支表现得更好。

图2:[1]中介绍的 AG-CNN 架构,以 ResNet 骨干网为例。局部病变补丁是使用热图(注意力)层从全局图像中裁剪出来的。BCE表示二元交叉熵损失。

为了从注意力的角度理解模型在做什么,我们必须首先了解软注意力和硬注意力之间的区别。本质上,注意力根据一些外部或内部(自注意力)提供的权重重新权衡网络的某些特征。因此,软注意力允许这些权重是连续的,而硬注意力要求它们是二进制的,即0或1。这个模型是硬注意力的一个例子,因为它裁剪了图像的某个部分,因此本质上是对原始图像重新加权,以便裁剪部分的权重为1,其余为0。

硬注意力的主要缺点是它不可微,不能进行端到端的训练。相反,作者使用某个层的激活来确定并在复杂的多阶段过程中训练网络。为了训练注意力门,我们必须使用软注意力(例如使用)。接下来我们将看看一些软注意力模型。

Squeeze-And-Excitation-Networks

Hu等人没有使用严格的注意力并在特征图的裁剪方面重新校准权重。通过使用软自注意力对卷积特征通道之间的相互依赖性进行建模,研究了在CNN的某个层中重新加权通道响应。为此,作者介绍了构建块(见图3)。

模块的工作原理如下:对于特征从X到U的任何变换(例如卷积),有一个变换聚合跨空间范围的全局特征响应。这就是挤压操作。挤压操作之后是激励操作,这是一个(自控门)操作,它构建了一个通道方式的权重响应。的输出随后与激励结果逐通道相乘(这在图3中被描绘为)。

挤压操作的数学描述是:

因此 是操作 的输出。挤压操作通过使用全局平均池化来创建全局嵌入。也可以使用全局最大池化,尽管作者指出平均池化会略微提高整体性能。

另一方面,激励块由下式描述:

因此,激励将挤压块的输出乘以学习的权重W1,将输出传递给ReLU函数 δ,将输出乘以另一组权重W2,并在最后使用函数以确保产生的通道权重为正。因此,W1将维度减少了因子(可以视为超参数),而W2再次将其增加到原始通道数。最后,的通道特征响应乘以从激励块获得的权重。这可以被视为使用全局信息的通道上的自我注意功能。

模块背后的主要思想是在网络的决策过程中包含全局信息;卷积仅查看特定半径内的局部空间信息,而模块聚合来自整个感受野的信息。

作者的一个有趣观察是,在网络的早期阶段,不同类别的激励权重相对相似,并在后期变得更加具体。这与通常的假设相关,即较低层学习输入的更多一般特征,而较高层则越来越具有辨别力。此外,模块在网络的最后阶段没有多大意义,其中大多数激励变为 1。

这可以解释为,网络的最后阶段已经包含大部分全局信息和 操作没有带来新的信息内容。

方法的主要优势在于它非常灵活:作者提到了在广泛使用的架构中的集成,例如(见图 4)、  。实际上,该块可以添加到网络的每个阶段,也可以仅添加到特定阶段。此外,它在可学习参数的数量方面只引入了轻微的开销。例如,与已包含2500万个参数的原始 ResNet 相比,使用模块的仅使用了约250万个额外参数。因此,这仅使复杂性增加了10%。

图4:原始ResNet块(左)和Squeez—And—Excitation块(右)[3]中所示。

在论文中,作者展示了大量由模块增强的训练架构示例。特别是,他们能够在2017挑战中实现最先进的分类性能,前5名错误率仅为2.251%。

Stand-Alone Self-Attention

我将介绍的最后一篇文章 2019通过使用独立的自注意力块,而不是仅通过自注意力来增强卷积层,进一步阐述了中自注意力的想法。事实上,作者提出了一个自注意力层,可以用来代替卷积,同时减少参数的数量。

让我们回顾一下卷积操作来激发替换。卷积操作包括将特定大小(例如3x3)的权重矩阵与位置处的每个邻域相乘,并对结果进行空间求和。这实现了不同空间位置之间的权重共享。此外,权重的数量与输入大小无关。

与卷积类似,论文提出的自注意力层也适用于周围的一个小邻域,称为记忆块。对于每个内存块,单头注意力计算如下:

因此,是查询, 是键,是根据位置  及其邻域处的特征计算为线性变换的值。矩阵是学习到的变换。

从公式中可以看出,转换后的中心像素用作查询,键和值在邻域内求和。 函数也应用于以获得权重,然后将其与值相乘。

作者在本文中使用了多头注意力,这只是意味着将像素特征深度拆分为个相同大小的组,使用不同的矩阵 分别对每个组计算注意力,并将结果连接起来。图6提供了视觉自注意块的图形描述。

图6:[4]中空间范围k=3的局部注意层

使用上述方法的一个问题是注意力块中没有编码位置信息,因此该公式对于单个像素的排列是不变的。位置信息对于视觉任务很重要:例如,如果您想检测人脸,您将需要知道在哪里寻找嘴巴、鼻子、耳朵等。

在原始论文中,作者使用位置的正弦嵌入作为附加输入。然而,在中,使用了相对位置嵌入,因为它们在计算机视觉任务中具有更好的准确性。这些相对嵌入是通过计算位置到每个邻域像素的相对距离来获得的。这些距离分为行距离和列距离。这些嵌入被连接到一个矩阵形式并乘以查询  如下:

这确保了由函数计算的权重由键和查询的距离和内容调制。

从上面的描述我们可以看出,视觉自注意力是局部注意力的一种形式。注意层只关注内存块而不是整个特征图。这种方法的优点是参数的数量大大减少,不同空间位置之间的权重是共享的。作者提到他们的自注意力网络在训练和推理方面仍然比他们的对手慢,但是他们将这归因于高度优化的卷积核以及注意力层缺乏优化的硬件。

作者还展示了他们在上通过用自注意力块替换  中的 3x3 卷积获得的一些结果。请注意,它们保留了1x1卷积(基本上是按像素计算的全连接层)和卷积茎(网络中的前几个卷积层保持不变。有了这些变化,它们在以下方面的表现优于基线(标准)所有经过测试的架构()同时使用的减少了12%,参数减少了29%。

参考论文

[1] Guan, Qingji, et al. “Diagnose like a radiologist: Attention guided convolutional neural network for thorax disease classification.” arXiv preprint arXiv:1801.09927 (2018).

[2] Yao, Li, et al. “Learning to diagnose from scratch by exploiting dependencies among labels.” arXiv preprint arXiv:1710.10501 (2017).

[3] Hu, Jie, Li Shen, and Gang Sun. “Squeeze-and-excitation networks.” Proceedings of the IEEE conference on computer vision and pattern recognition. 2018.

[4] Ramachandran, Prajit, et al. “Stand-Alone Self-Attention in Vision Models.” arXiv preprint arXiv:1906.05909 (2019).

[5] Vaswani, Ashish, et al. “Attention is all you need.” Advances in neural information processing systems. 2017.

原文链接:https://towardsdatascience.com/self-attention-in-computer-vision-2782727021f6

未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)大脑研究计划,构建互联网(城市)大脑技术和企业图谱,为提升企业,行业与城市的智能水平服务。每日推荐范围未来科技发展趋势的学习型文章。目前线上平台已收藏上千篇精华前沿科技文章和报告。

  如果您对实验室的研究感兴趣,欢迎加入未来智能实验室线上平台。扫描以下二维码或点击本文左下角“阅读原文”

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/484057.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

QT信号与槽-启动系统程序以及相关控件介绍

1.1 创建一个继承至QWidget的项目。 1.2 设计界面,分析界面采用的布局方式。 首先,每行控件采用水平布局方式,第三行为了使控件靠右,前面添加一个占位控件。三行采用垂直平局;选中控件,通过右键可以控件的布局方式&a…

科技部向全社会征集颠覆性技术研发方向

来源:人民网据科技部网站消息,为提升我国重大科技创新方向前瞻布局能力,加快推动颠覆性技术创新,科技部办公厅拟面向各有关单位和广大科研人员,开展颠覆性技术研发方向建议征集工作,对于符合条件的建议&…

springboot前后端分离项目MultipartFile获取前端传的file为null问题

【问题描述】 springbootvue 前后端分离项目,在对接上传文件功能时,一直显示文件为空。 【分析】 查找了很多博客,解决方法五花八门,但原因应该还是 springboot自带的org.springframework.web.multipart.MultipartFile和Multi…

计算机网络( 二十二)-数据链路层(补充)

1.链路link:结点------>相邻结点的物理线路。 2.数据链路:物理线路通信协议,通信协议(通信规程)用来控制数据的传输。 3.最常用网络适配器(硬件、软件)来实现协议。适配器包括了数据链路层和物理层两层的功能。 4.数据链路层的协议数据单元PDU------帧…

《科学之路》| 图灵奖得主杨立昆人工智能十问:AI会统治人类吗?

来源:《科学之路》作者:杨立昆封面:Yukai Du即便是最先进的人工智能系统也存在局限性,它们还不如一只猫聪明。人工智能常常被认为是一项将要颠覆世界的技术,从这一概念诞生至今的65年中,无数电影与小说塑造…

计算机网络(二十三)-网络层-概述与数据交换方式

一.网络层的功能 主要任务是把分组从源端传送到目的端,为分组交换网上的不同主机提供通信服务。 网络层传输单位是数据报。功能 路由选择与分组转发,最佳路径。异构网络互联;拥塞控制; 若所有结点都来不及接收分组,网…

数字大脑学术沙龙:“城市大脑与应急管理专题研讨会”成功召开

来源:城市大脑全球标准研究组2021年以来城市大脑的建设与研究获得了长足发展,数百个城市开展了城市大脑的建设与规划,取得了诸多成果。于此同时,伴随着疫情、水灾、交通事故、环境事故的不断出现,城市大脑如何应对应急…

Java 注解:@PostConstruct和@PreConstruct

从Java EE5规范开始,Servlet增加了两个影响Servlet生命周期的注解(Annotation):PostConstruct和PreConstruct。这两个注解被用来修饰一个非静态的void()方法.而且这个方法不能有抛出异常声明。 使用方式,例如&#xff…

计算机网络(二十四)-路由算法及路由协议

1.1 路由算法 将最优的路径填入路由转发表。 1.2 路由算法分类 静态路由算法(非自适应路由算法):管理员手动配置路由信息。 简便、可靠,在负载稳定、拓扑变化不大的网络中运行效果很好,广泛用于高度安全性的军事网络和较小的商业网络。 动…

研究速递:老年人的心智能力不一定在衰减,抗干扰的能力会更强

来源: 混沌巡洋舰长期以来,人们一直认为,衰老会导致我们的心智能力大幅下降。现在,乔治城大学医学中心的新研究,反驳这一观点,研究结果发表在2021年8月19日的《自然---- 人类行为》杂志上,由于世…

计算机网络(二十五)-IP数据报格式

1.1 TCP/IP协议栈 1.2 IP数据报格式 IP数据报如果过大,就会对它进行分片,每个分片为一个分组。 版本指的是IPv4或IPv6;首部长度:单位是4B(4字节),最小为5;区分服务:指示期望获得哪种类型的服…

NLP≠NLU,机器学习无法理解人类语言

来源:图灵人工智能 编译:吴彤校对:暮编辑:琰琰长期以来,我们一直在与机器沟通:编写代码--创建程序--执行任务。然而,这些程序并非是用人类“自然语言“编写的,像Java、Python、C和C …

CentOS 7 安装并启动Nginx

一、安装必要的库 1、安装gcc gcc-c yum install -y gcc gcc-c 2、gzip模块需要 zlib 库 cd /usr/local wget http://zlib.net/zlib-1.2.11.tar.gz tar -zxvf zlib-1.2.11.tar.gz cd zlib-1.2.11 ./config make && make install3、重写模块需要pcre库 cd /usr/loc…

计算机网络(二十六)-IP数据报分片

一.最大传输单元MTU 1.1 数据链路层数据帧可封装数据的上限。以太网的MTU是1500字节; 1.2 当数据报超过了MTU,则进行分片; 1.3 分片-IP数据报格式 标识:同一数据报的分片使用同一标识;标志:只有两位有意…

论文速递:智能作为信息处理系统

来源:混沌巡洋舰圣塔菲研究院4月就智能的本质(不管其是人类的,还是机器的)举行的研讨会,旨在通过跨学科的整合来促进人工智能的发展。研讨会期间,来自不同学科的大牛聚集在一起,讨论如何将智力分…

Nginx启动后无法访问页面

同个人网站 https://www.serendipper-x.cn/,欢迎访问 ! 【问题描述】 Nginx启动后浏览器输入IP地址无法访问页面 一、检查Nginx是否成功启动 ./sbin/nginx -t 二、检查80端口是否开放 三、打开防火墙80端口,重启防火墙 firewall-cmd -…

计算机网络(二十七)-IPv4

一.IP地址 1.1 分类的IP地址 IP地址::{<网络号>,<主机号>} 32位&#xff1a;前八位为网络号&#xff0c;后面的为主机号------>点分十进制表示 路由器也有多个IP地址&#xff1b; 中间的三个组成一个无编号网络(无名网)&#xff1b;整个网络具有6个逻辑上的…

北京“十四五”高精尖产业规划:到2025年集成电路产业实现营业收入3千亿元...

来源&#xff1a;北京物联网智能技术应用协会近日&#xff0c;《北京市“十四五”时期高精尖产业发展规划》&#xff08;以下简称《规划》&#xff09;印发。2020年&#xff0c;北京建设国内规模最大的12英寸集成电路生产线、8英寸集成电路国产装备应用示范线。国家级专精特新“…

FTP协议、电子邮件系统、Telnet远程控制

一、FTP协议 FTP定义 文件传输协议&#xff08;File Transfer Protocol&#xff09;用于因特网文件传输&#xff08;RFC 959&#xff09; FTP特性 使用客户端/服务器模式使用TCP提供可靠的传输FTP属于维护状态的协议FTP使用两条TCP连接完成数据传输 FTP的两条连接 数据连…

游戏的「隐藏身份」:AI与现实世界的「王牌训练师」

来源&#xff1a;雷锋网虚拟游戏对人工智能的物理性优势已经开始显现。「注&#xff1a;文章来自国际电信联盟&#xff08;ITU&#xff09;」当谈到新兴技术在改善世界各地人们生活的潜力时&#xff0c;你首先想到的可能不是电子游戏。然而&#xff0c;虚拟游戏可以在训练人工智…