PiT : 基于池化层Pooling layer的Vision Transformer

        CNN的降维原理;随着深度的增加,传统CNN的通道维数增加,空间维数减少。经验表明,这样的空间降维对变压器结构也是有益的,并在原有的ViT模型的基础上提出了一种新的基于池的视觉变压器(PiT)。


1. 引言

        ViT与卷积神经网络(CNN)有很大的不同。将输入图像分成16×16小块馈送到变压器网络;除了第一嵌入层外,ViT中没有卷积操作,位置交互仅通过自关注层进行。CNN具有有限的空间交互,而ViT允许图像中的所有位置通过变压器层进行交互。虽然ViT是一种创新的架构,并且已经证明了其强大的图像识别能力,但它遵循了NLP中的变压器架构,没有任何变化。

        CNN从空间尺寸大、通道尺寸小的特征开始,逐渐增大通道尺寸,减小空间尺寸。由于称为空间池的层,这种维度转换是必不可少的。现代CNN架构,包括AlexNet、ResNet和EfficientNet,都遵循这一设计原则。池化层与每一层的感受野大小密切相关。研究表明,池化层有助于提高网络的表达性和泛化性能。然而,与CNN不同的是,ViT不使用池化层,并且对所有层使用相同的空间维度。

1.1 基于池化的Vision Transformer

        PiT是一种变压器架构,结合了新设计的池化层。它允许在ViT结构中像ResNet中那样减小空间大小。最后,利用熵和平均距离度量分析变压器块的注意矩阵,分析PiT与ViT相比的效果。通过分析,揭示了ViT和PiT各层次的注意模式,有助于理解ViT和PiT的内在机制。 

2. 相关工作

2.1 CNN的维度配置

        维度转换可以在AlexNet中找到,它是计算机视觉中最早的卷积网络之一。AlexNet使用三个最大池化层。在最大池化层中,特征的空间大小减少了一半,通道大小通过最大池化后的卷积增加。VGGnet 使用5个max-pooling使用5个空间分辨率。在池化层中,空间大小减少一半,通道大小增加一倍。

        GoogLeNet也使用了池化层。ResNet使用stride - 2的卷积层代替max pooling进行空间大小缩减。它是对空间约简方法的改进。stride-2的卷积层在最近的架构中也被用作池化方法(EfficietNet , MobileNet)。PyramidNet指出通道增加只发生在池化层,为了解决这一点,提出了在池化层以外的层中逐渐增加通道大小的方法。ReXNet报道,网络的通道配置对网络性能有显著影响。总之,大多数卷积网络使用具有空间约简的维配置。 

2.2 Self-attention 机制

        Transformer架构通过自注意力机制显著提高了NLP任务的性能。而Funnel Transformer则通过池化层和跳跃连接(skip connection)来减少标记(tokens),从而改进了Transformer架构。

        Non-local(非局部)网络在CNN骨干网络中增加了几个自注意力层,并表明自注意力机制可以在CNN中使用。[28]将ResNet的3x3卷积替换为局部自注意力层。[36]在每个空间轴上使用了注意力层。[2]通过减少注意力机制的计算量,实现了整个空间图的自注意力。这些方法大多是将3x3卷积替换为自注意力或添加几个自注意力层。因此,它们继承了ResNet的基本结构,即具有步长为2的卷积,从而得到了具有ResNet维度配置的网络。

        只有视觉Transformer(Vision Transformer,ViT)在所有层中都使用相同的空间大小的结构。尽管ViT没有遵循ResNet的惯例,但它在网络架构中包含了许多有价值的新组件。在ViT中,每个空间标记(token)都应用了层归一化(layer normalization)。因此,ViT的层归一化更接近位置归一化[22],而不是卷积神经网络的层归一化[1, 39]。尽管它与lambda网络[2]有重叠,但在网络的所有块中都使用全局注意力并不常见。使用类别标记(class token)而不是全局平均池化(global average pooling)也是一个新特性。

3. 重新审视空间维度

3.1 CNN的维度设置

        如图(a)所示,大多数卷积网络架构在减少空间维度(spatial dimension)的同时增加通道维度(channel dimension)。例如,在ResNet50中,一个起始层(stem layer)首先将图像的空间尺寸减少到56×56。然后,通过多个层块(layer blocks),使用步长(stride)为 2 的卷积层来将空间维度减半,并将通道维度加倍。

使用步长为2的卷积层进行空间尺寸减少的方法在最近的架构中非常常见。

        为了分析在卷积架构中是否存在空间减少层对性能的影响,研究者们进行了一项实验。他们选择了在ImageNet上广泛使用的ResNet50作为实验的网络架构,并在没有复杂训练技巧的情况下进行了100个周期的训练。

  • ResNet风格:直接使用ResNet50的原始架构作为基准。
  • ViT风格维度:为了模拟ViT(视觉Transformer)的维度变化,研究者们使用了ViT的起始层来将特征的空间维度减少到14×14,同时在起始层中减少空间信息的损失。此外,他们还移除了ResNet中的空间减少层,以保持所有层的初始特征维度与ViT一致。

        研究者们通过改变ResNet的通道大小来测量不同尺寸的网络性能。这样他们可以比较在保持空间维度不变(ViT风格)和采用传统的空间维度减少方法(ResNet风格)时,网络性能的差异。


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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

力扣刷题之2959.关闭分部的可行集合数目

题干描述 一个公司在全国有 n 个分部,它们之间有的有道路连接。一开始,所有分部通过这些道路两两之间互相可以到达。 公司意识到在分部之间旅行花费了太多时间,所以它们决定关闭一些分部(也可能不关闭任何分部)&…

mysql group_concat()函数、行转列函数

文章目录 一、group_concat函数1.1、语法1.2、示例1.2.1、查询所有姓名,并显示在一行1.2.2、单列合并,指定冒号分隔符1.2.3、单列合并,去重1.2.4、多列拼接合并1.2.5、多列拼接合并,列和列之间指定分隔符 在mysql的关联查询或子查…

周报0708-0715(run代码)

本周围绕代码展开学习,学习了组内的FWI代码,主要收获是熟练了创建环境、匹配解释器、安装必要包的流程,以及搜索时的小Tips:比如需要的包whl(表示该包的编译版本)。遇到的问题仍然不少 三个主要问题&#…

「实战应用」如何用图表控件LightningChart JS创建树状图应用?

LightningChart JS是Web上性能特高的图表库,具有出色的执行性能 - 使用高数据速率同时监控数十个数据源。 GPU加速和WebGL渲染确保您的设备的图形处理器得到有效利用,从而实现高刷新率和流畅的动画,常用于贸易,工程,航…

Go语言并发编程-同步和锁

同步和锁 概述 同步是并发编程的基本要素之一,我们通过channel可以完成多个goroutine间数据和信号的同步。 除了channel外,我们还可以使用go的官方同步包sync,sync/atomic 完成一些基础的同步功能。主要包含同步数据、锁、原子操作等。 一…

P3-AI产品经理-九五小庞

AI产品的数据流向 美团外卖,实时只能调度 美团28分钟送达需求的分析 AI产品常用的算法 常用算法 常见的AI算法解析 自然语言生成NLG语音识别:科大讯飞,通义千问 虚拟现实机器学习平台 决策管理系统生物特征识别技术 RPA(机器人流程自动…

ICE-BA原理

文章目录 主要思想约束建立IMU&Local & globalBAIMU预积分LocalBAGlobalBA求解方法常用的求解思路改进增量BA方法 论文: 《ICE-BA: Incremental, Consistent and Efficient Bundle Adjustment for Visual-Inertial SLAM》 ICE-BA:增量、一致且高…

多商户SaaS版扫码点餐系统开源

基于前后端分离的 多商户 SaaS 版扫码点餐系统,支持后台点餐、多人同时在线点餐、购物车共享、餐桌状态实时监控,菜品管理、餐桌管理等众多功能。 源码下载:多商户 SaaS 版扫码点餐系统.zip 功能特色 手机扫码点餐功能:用户可…

如何评价2023年国际高校数学建模竞赛B题?

问题1:在三星堆发现的一个外圆直径为85厘米,内圆直径为40厘米(假设)的青铜车轮,青铜车轮有5条车轴(射线),5条内弧线本质是双曲线,顶点与内圆相切,内弧双曲线的…

植物病害分级调研

Web of Science搜索,关键字“plant disease severity recognition”,共407篇,限制2023年以后共71篇 2019、2020 《Disentangled Representation Learning for Leaf Diseases Recognition》 2019 IF:0.8 论文:Disen…

Xcode进行真机测试时总是断连,如何解决?

嗨。大家好,我是兰若姐姐。最近我在用真机进行app自动化测试的时候,经常会遇到xcode和手机断连,每次断连之后需要重新连接,每次断开都会出现以下截图的报错 当这种情况出现时,之前执行的用例就相当于白执行了&#xff…

爬虫瑞数5案例:某大学总医院

声明: 该文章为学习使用,严禁用于商业用途和非法用途,违者后果自负,由此产生的一切后果均与作者无关 一、瑞数简介 瑞数动态安全 Botgate(机器人防火墙)以“动态安全”技术为核心,通过动态封装、动态验证、动态混淆、动态令牌等技术对服务器网页底层代码持续动态变换,…

Go语言并发编程-Goroutine调度

goroutine 概念 在Go中,每个并发执行的单元称为goroutine。通常称为Go协程。 go 关键字启动goroutine go中使用关键字 go 即可启动新的goroutine。 示例代码: 两个函数分别输出奇数和偶数。采用常规调用顺序执行,和采用go并发调用&…

大模型学习笔记十一:视觉大模型

一、判别式模型和生成式模型 1)判别式模型Discriminative ①给某一个样本,判断属于某个类别的概率,擅长分类任务,计算量少。(学习策略函数Y f(X)或者条件概率P(YIX)) ②不能反映训练数据本身的特性 ③学习…

优思学院|直方图与条形图的具体区别

在六西格玛方法、质量管理工具中,数据的分析和可视化是关键步骤。直方图和条形图是两种常用的图表工具,但它们在用途和显示方式上有显著区别。本文将详细探讨这两种图表的定义、特性、应用及如何选择适合的图表。 1. 直方图和条形图的定义 直方图是一种…

人工智能未来发展前景将会怎样?

当我们探讨人工智能未来的发展前景时,可以从多个角度来详细说明其可能的影响和趋势: 技术进步与应用扩展 1.深度学习与机器学习: 进一步优化和算法进展:深度学习已经取得了巨大成就,但仍面临挑战,如对小数…

程序员想要6万一个月,需要什么能力,要吃什么样的苦?

让我们来算一道小学数学题:6w*1272w,年包72w的程序员起码是阿里P7-P8的水平了,论工作职责来说,起码得是大厂的一个小tech leader,如果是在小公司,基本上是公司骨干级成员,或是统筹整个项目和小组…

FFmpeg播放视频

VS2017+FFmpeg6.2.r113110+SDL2.30.5 1.下载 ShiftMediaProject/FFmpeg 2.下载SDL2 3.新建VC++控制台应用 3.配置include和lib 4.把FFmpeg和SDL的dll 复制到工程Debug目录下,并设置调试命令

如何让您的反爬虫策略更具弹性?揭秘管理技巧

摘要: 本文深入探讨了反爬虫策略的最新趋势与实战技巧,旨在帮助网站所有者和数据分析师构建更加灵活高效的爬虫管理系统。通过理解反爬机制、动态应对策略及合法数据采集的最佳实践,确保数据收集在遵守网络规则的同时,实现业务目…

Kettle 登录示例 POST请求

登录接口是post请求,组装Body为json字符串 var body "{\"username\":\""username"\",\"password\": \""password"\",\"code\":\""verification"\",\"uuid\…