IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> CVPR2022 | MPViT: Multi-Path Vision Transformer for Dense Prediction -> 正文阅读

[人工智能]CVPR2022 | MPViT: Multi-Path Vision Transformer for Dense Prediction

CVPR2022 | MPViT: Multi-Path Vision Transformer for Dense Prediction

在这里插入图片描述

主要内容

做了点啥

在这里插入图片描述

本文重点探究Transformer中的multi-scale patch embedding和multi-path structure scheme的设计。

主要动机

在这里插入图片描述
在例如目标检测和分割这样的密集预测任务中,多尺度特征对于判别不同大小的目标或者区域是非常重要的。许多CNN结构中对此都有设计:

  • 多粒度卷积核:典型的如Inception Network和VoVNet。可以保证多样的感受野,从而反过来增强检测性能。
  • 多尺度特征:典型的如HRNet,通过卷积层,同时集成细粒度和粗粒度的特征。

虽然最近的Vision Transformer展现出超过CNN的性能,但是最近的ViT的变体大多数在专注于如何应对自注意力用于高分辨率密集预测任务中面临的平方复杂度,很少有工作关注与如何构建更有效的多尺度表征。虽然CoaT通过co-scale机制,运行跨层Attention,从而表征了粗粒度和细粒度,但是这种机制需要过多的计算和存储负担,因为他需要在基础模型上,额外添加一个跨层注意结构。因此对于ViT变体而言,多尺度特征表征仍然存在提升的空间。

具体做法

这篇文章就专注于如何为密集预测任务用ViT有效表示多尺度特征。

提出的MPViT,模块内部同时嵌入相同长度序列,但是不同序列的patch token各自有着不同的尺度。不同尺度的token通过多路径被独立送到Transformer编码器中,输出特征被集成在一起,从而确保了在相同的特征层中的粗细粒度特征表征。

具体结构

在这里插入图片描述

  • Multi-Scale Patch Embedding:使用卷积来提取不同尺度的重叠patch。
    • 输入来自之前阶段的2D特征,送入多个并行的卷积patch嵌入层。
      • 由于使用多个不同大小的卷积操作,会导致过多的参数,于是作者们使用连续的3x3卷积来增大感受野,同时确保较少的参数,如果要缩小分辨率的话,这里的第一个卷积可以引入步长2,实际测试中性能也超过了独立的大核卷积,可能是因为其更高的非线性程度。
      • 这里实际使用深度分离卷积(3x3+1x1)的形式替换3x3卷积从而降低参数量
      • 所有的卷积都跟着BN和Hardswish。
    • 每个卷积patch嵌入中,使用kxk卷积来生成对应着尺度kxk大小的patch。通过更改卷积层的步长和padding,可以调整这一尺度对应的序列的最终长度。即,不同的patch size可能会有相同的输出长度。
    • 每个嵌入的特征序列会被分别送入各自的独立Transformer Encoder路径。每个尺度的路径上都有L个encoder(https://github.com/youngwanLEE/MPViT/blob/e2d86e6c465abc4847e601f8a401bdd1692836f7/mpvit.py#L558-L570)。
  • Global-to-Local Feature Interaction: Transformer中的self-attention可以捕获长期依赖关系(即全局上下文),但它很可能会忽略每个patch中的结构性信息和局部关系。另外,Transformer受益于形状偏置(Are convolutional neural networks or transformers more like human vision?)。相反,CNN可以利用来自平移不变性的局部连通性,图像中每个Patch在处理时都具有相同的比重。这种归纳偏置鼓励CNN在对视觉对象进行分类时,相比形状,对纹理有更强的依赖性。于是MPViT中就以一种相互补充的形式组合了CNN的局部连通性和Transformer的全局上下文。
    • 在每个阶段中,在多路径Transformer之外,还会引入一个独立的depthwise residual bottleneck block(1x1+3x3+1x1)来整合局部信息。
    • 卷积输出与各个Transformer输出结果沿通道拼接后送入独立的1x1结构生成最终输出。输出通道数等于下一阶段的多尺度patch嵌入层的通道数。

实验细节

模型结构

在这里插入图片描述

  • 使用的Transformer encoder都是来自于CoaT中的具有线性复杂度的Factorized Self Attention。这种结构的计算复杂度是通道数量的平方倍,与序列长度和堆叠层数呈线性关系。
  • stem中:两个步长为2的3x3卷积,输出特征下采样4倍。每个卷积后跟一个BN和Hardswish。
  • 后续每个stage中,都会堆叠提出的多尺度patch嵌入和多路径Transformer块。
  • 结尾使用全局平均池化后接全连接层。
  • 在第一个attention阶段,路径数量为2,后续阶段中,路径数量为3。

对比实验

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

消融实验

在这里插入图片描述表5中的结果反映出来三个方面的内容:

  1. 层(即更深)的数量比嵌入尺寸(即更宽)更重要,这意味着在性能方面,较深,更薄的结构更好。
  2. 多粒度token嵌入和多路径结构可以为目标价检测器提供更丰富的特征表示。
  3. 在相同的模型大小和FLOPs的约束下,三路径结构是最佳选择。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
由于使用了来自CoaT中的factorized self-attention,所以在可视化注意力图的时候,作者们使用的是对softmax(K)沿着通道维度的平均。因为在这个注意力形式中,softmax(K)相当于可以看做是V每个空间位置上通道级别的一种空间注意力。

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-09-25 23:12:38  更:2022-09-25 23:12:55 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 23:28:07-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码