论文笔记:InternImage—基于可变形卷积的视觉大模型,超越ViT视觉大模型,COCO 新纪录 64.5 mAP!

这篇具有很好参考价值的文章主要介绍了论文笔记:InternImage—基于可变形卷积的视觉大模型,超越ViT视觉大模型,COCO 新纪录 64.5 mAP!。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

文章信息

论文笔记:InternImage—基于可变形卷积的视觉大模型,超越ViT视觉大模型,COCO 新纪录 64.5 mAP!

  • Title:InternImage: Exploring Large-Scale Vision Foundation Models with Deformable Convolutions
  • Paper Link:https://arxiv.org/abs/2211.05778
  • Code Link:https://github.com/OpenGVLab/InternImage

写在前面

拿到文章之后先看了一眼在ImageNet1k上的结果,确实很高,超越了同等大小下的VAN、RepLKNet、ConvNext等先进的大核注意力CNN模型,同时也超过了Swin、DeiT3、CoAtNet等ViT模型。回顾自从Vision Transformer被提出之后,通过大量数据训练出的ViT大模型刷新了许多视觉任务的记录,这得益于ViT的MHSA机制能够建模长距离依赖,具有相当低的归纳偏置,从而能够在海量数据中学习到强大鲁棒的特征表达。相反的,我们以前经常使用的卷积神经网络具有较高的归纳偏置,在大模型和大数据的条件下的表现却不如ViT大模型。该论文就指出,通过合适的算子、先进的架构设计、大量模型参数和海量数据的训练之下,CNN大模型也可以具有媲美ViT大模型的性能。InternImage设计了全新的可变性卷积模块,并且借鉴了ViT的先进架构和相关组件,从而设计出一个新的CNN大模型。并且,InternImage在相关的下游任务上的性能也很高,InternImage-H在目标检测COCO数据集上达到了 65.4 65.4% 65.4的性能,超越了SwinV2-G大模型的性能。
论文笔记:InternImage—基于可变形卷积的视觉大模型,超越ViT视觉大模型,COCO 新纪录 64.5 mAP!

Background & Motivation

随着基于Transformer的语言大模型在NLP相关下游任务中取得优异性能,Vision Transformer也席卷了CV领域,成为基础视觉大模型研究和实践的首选。Swin V2、BeiT、CoAtNet等工作已经将ViT扩展到超过十亿参数规模,显著提升了CV分类、检测和分割等下游任务的性能,超越了CNN模型。但是,该论文提出如果CNN具备类似于ViT的算子和架构,并且在大量参数和海量数据情况下,其性能是可以与ViT相同甚至更好的。
作者认为CNN和ViT大模型性能存在差距的主要有两个原因:

  • ViTs的MHSA具有长程依赖和自适应空间聚合能力,从而可以在海量数据中学习到比CNN更强大鲁棒的特征表达。
  • 除MHSA外,ViT还包含不同于CNN的高级组件,如层归一化、前馈网络、GELU等。

基于此,该论文设计了一个新颖的基于可变性卷积CNN网络——InternImage,可以在大量参数和海量数据的情况下表现很好。如下图所示,动态稀疏可变性卷积既不像MHSA那样具有较高复杂度,也不像Local attention那样缺乏长程依赖,同时具有自适应的空间聚合能力。
论文笔记:InternImage—基于可变形卷积的视觉大模型,超越ViT视觉大模型,COCO 新纪录 64.5 mAP!
该论文的主要贡献如下:

  • 提出一种新的CNN大模型——InternImage,首个参数达1B、训练数据达400M、取得与ViT相当甚至更优性能的CNN模型。证明对于大尺度模型研究,CNN同样是一个值得探索的方向。
  • 将长程依赖、自适应空域聚合引入到DCNv3,将CNN模型的大小和尺度进行扩展;并对模块定制化、堆叠规则以及缩放策略进行了探索。
  • 在图像分类、目标检测、语义分割以及实例分割等下游任务上验证了所提方案的有效性。其中,InternImage-B仅在ImageNet-1K训练即可取得84.9%的精度(比其他CNN至少高出1.1%);当在大量参数(1B)、海量数据(427M)条件下,InternImage-H取得了89.2%的性能;在COCO数据集上,InternImage-H以2.18B的参数量取得了65.4%mAP,比SwinV2-G高出2.3%,参数量少27% 。

Method

该论文首先从DCNv2算子开始实验,然后借鉴了MHSA的相关思想对DCN V2做出了三个关键改进,设计出了全新的DCNv3算子;基于此算子,作者又提出了与ViT相似的Basic Block组成了InternImage网络,并且给出了InternImage的堆叠规则和大小缩放规则。

DCN V2

在提出DCN V3算子前,作者先回顾了一下传统卷积和多头自注意力机制这两种算子的区别,主要包括如下两点:

  • 长距离建模能力。普通的卷积聚合邻域内的信息,显然不具备全局建模的能力,尽管传统的CNN能够通过堆叠多个 3 × 3 3 \times 3 3×3的卷积增加模型的感受野,但是仍然不能像ViT那样进行全局的交互。
  • 自适应空间聚合能力。多头自注意力机制在聚合不同的tokens的时候,权重都是根据输入query的不同而动态变化的;而传统的CNN不管输入是什么,卷积核的参数都是静态不变的。

然后回过头看一下DCN V2算子,其恰好是具有上述两个特性的;对于给定输入 x ∈ R C × H × W \mathbf{x}\in \mathbb{R} ^{C\times H\times W} xRC×H×W 和某像素 p 0 p_0 p0,DCN V2算子的输出如下
y ( p 0 ) = ∑ k = 1 K w k m k x ( p 0 + p k + △ p k ) \mathbf{y}\left( p_0 \right) =\sum_{k=1}^K{\mathbf{w}_k\mathbf{m}_k\mathbf{x}\left( p_0+p_k+\bigtriangleup p_k \right)} y(p0)=k=1Kwkmkx(p0+pk+pk)其中, K K K表示采样点的个数、 w k \mathbf{w}_k wk为相应采样点的投影权重、 m k \mathbf{m}_k mk代表了相应采样点的调制标量、 △ p k \bigtriangleup p_k pk表示相应采样点的偏移量。
由这个表达式可以看出:

  • DCN V2算子可以通过偏移量来与局部或全局的交互,具有长距离建模的能力;
  • 由于调制标量 m k \mathbf{m}_k mk和偏移量 △ p k \bigtriangleup p_k pk都是可学习并且根据输入不同而变化的,所以DCN V2算子也具有类似于MHSA的自适应空间聚合能力。

因此,DCN V2算子具备MHSA算子的相关特性,有可能构成大规模的CNN基础模型。

DCN V3

尽管DCN V2算子已经缩小了普通卷积算子和MHSA之间的差距,对于大规模的视觉基础模型来说,DCN V2算子仍然不是最优的选择,于是作者从三个方面对DCN V2进行改进,得到了IntenImage的主要算子——DCN V3。

  1. 共享卷积权重。在DCN V2中,对于每一个采样点处的特征向量,都使用一个独立的投影权重。当采样点增多的时候,模型的参数和复杂度将会线性增加,不利于构建大规模的模型。在这里,作者借鉴了深度可分离卷积的思想来降低DCN算子的复杂度;具体地。对于point-wise,也就是不同的采样点向量,使用一个共享的权重 w w w来进行投影;而对于depth-wise,则直接使用算子中的调制标量 m k \mathbf{m}_k mk来代替。总体来说就是用同一个同权重对采样点进行投影,然后用一个位置感知的可学习系数对投影后的特征向量进行加权。
  2. 引入多组机制。回顾多头自注意力机制中的“多头”思想,不同的head实际上能够提供在不同子空间的丰富的信息。因此,作者将DCN V3也进行分组,在每组中进行不同的偏移采样、采样向量投影、因子调制。相当于把原来的操作重复多次,增强了DCN V3算子的表达能力(确实应该这样设计,不然只有一个共享的投影权重的话,特征表达的确单一)。
  3. 归一化调制标量。这个是因为在原始的DCN V2中,调制标量是用sigmoid进行处理的,对于 K K K个调制因子来说,其和并不是 1 1 1。作者指出,这样会导致训练不稳定的问题,因此作者改为了对 K K K个调制因子进行 s o f t m a x softmax softmax归一化,使得整个训练过程更为稳定。

以上三个点都是根据论文理解而来,因为现在作者还没有公布InternImage模型代码,无法查看具体的实现细节。综上所述,完整的DCN V3算子可以表示如下 y ( p 0 ) = ∑ g = 1 G ∑ k = 1 K w g m g k x g ( p 0 + p k + △ p g k ) \mathbf{y}\left( p_0 \right) =\sum_{g=1}^G{\sum_{k=1}^K{\mathbf{w}_g\mathbf{m}_{gk}\mathbf{x}_g\left( p_0+p_k+\bigtriangleup p_{gk} \right)}} y(p0)=g=1Gk=1Kwgmgkxg(p0+pk+pgk)
其中, G G G表示group的数量。 w g \mathbf{w}_g wg每组内共享投影权重, m g k \mathbf{m}_{gk} mgk表示第 g g g组第 k k k个采样点的归一化后的调制因子。如此一来 ,新设计的DCN V3算子弥补了传统卷积在长程依赖和自适应空间聚合方面的不足,同时使得可变性卷积算子更加适用于视觉大模型;在实现了稀疏全局建模的同时,又适当的保留了CNN的归纳偏置,可以说是在计算量和准确度之间进行了更好的权衡。

模型架构

论文笔记:InternImage—基于可变形卷积的视觉大模型,超越ViT视觉大模型,COCO 新纪录 64.5 mAP!
在设计完DCN v3算子后,作者抛弃了传统CNN的Block设计方式,而是采用了与ViT类似的整体架构设计。如上图所示,基本模块与ViT相同,什么LN、FFN、GELU激活函数都使用上了;downsample模块也是采用了正常的3*3、stride2、pooling1模块。然后按照论文中的堆叠和缩放策略就可以构建出完整的InternImage模型了。
论文笔记:InternImage—基于可变形卷积的视觉大模型,超越ViT视觉大模型,COCO 新纪录 64.5 mAP!

Experiment

分类

论文笔记:InternImage—基于可变形卷积的视觉大模型,超越ViT视觉大模型,COCO 新纪录 64.5 mAP!
部分模型在ImageNet 1K上的效果如上图所示,可以说是非常SOTA了,超越了同等大小下的VAN、RepLKNet、ConvNext等先进的大核注意力CNN模型,同时也超过了Swin、DeiT3、CoAtNet等ViT模型。

检测

论文笔记:InternImage—基于可变形卷积的视觉大模型,超越ViT视觉大模型,COCO 新纪录 64.5 mAP!
在COCO val2017 和 test-dev 上的性能在当时也达到了SOTA的水平,确实可以。文章来源地址https://www.toymoban.com/news/detail-452918.html

到了这里,关于论文笔记:InternImage—基于可变形卷积的视觉大模型,超越ViT视觉大模型,COCO 新纪录 64.5 mAP!的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 论文笔记(五)FWENet:基于SAR图像的洪水水体提取深度卷积神经网络(CVPR)

    FWENet: a deep convolutional neural network for flood water body extraction based on SAR images 作者:Jingming Wang, Shixin Wang, Futao Wang, Yi Zhou, Zhenqing Wang, Jianwan Ji, Yibing Xiong Qing Zhao 期刊:Internation Journal of Digital Earth 日期:2022 :深度学习;洪水水体提取;SAR;鄱阳湖 原文:https://doi.org/10.1080

    2024年02月10日
    浏览(27)
  • YoloV8改进策略:InternImage与YoloV8深度融合,动态卷积DCNv3大显神威

    他来了!他来了!他带着氩弧焊的光芒过来了!作为CV的大模型,Int

    2023年04月08日
    浏览(28)
  • 机器学习笔记 - 基于Python发现最佳计算机视觉模型的神经架构搜索技术NAS

            近年来,随着深度学习技术的兴起,计算机视觉领域取得了巨大进步。事实证明,卷积神经网络 (CNN) 在图像识别任务中异常强大,但针对特定问题设计最佳架构仍然是一项具有挑战性的任务。这就是神经架构搜索(NAS)发挥作用的地方。NAS 是一种尖端技术,可以

    2024年02月14日
    浏览(34)
  • 再见卷积神经网络,使用 Transformers 创建计算机视觉模型

    本文旨在介绍 / 更新 Transformers 背后的主要思想,并介绍在计算机视觉应用中使用这些模型的最新进展。 读完这篇文章,你会知道…… 为什么 Transformers 在 NLP 任务中的表现优于 SOTA 模型。 Transformer 模型的工作原理 这是卷积模型的主要限制。 Transformers 如何克服卷积模型的限

    2024年02月02日
    浏览(38)
  • 3D卷积网络论文阅读笔记

    数据集 BraTS 2020 数据增强方法 • Flipping翻转: 以1/3的概率随机沿着三个轴之一翻转 • Rotation旋转: 从限定范围(0到 15◦或到30◦或到60◦或到90◦)的均匀分布中随机选择角度旋转 • Scale缩放: 通过从范围为±10%或为±20%的均匀分布中随机选择的因子,对每个轴进行缩放 • Br

    2023年04月10日
    浏览(34)
  • 【Pytorch】计算机视觉项目——卷积神经网络CNN模型识别图像分类

    在上一篇笔记《【Pytorch】整体工作流程代码详解(新手入门)》中介绍了Pytorch的整体工作流程,本文继续说明如何使用Pytorch搭建卷积神经网络(CNN模型)来给图像分类。 其他相关文章: 深度学习入门笔记:总结了一些神经网络的基础概念。 TensorFlow专栏:《计算机视觉入门

    2024年02月05日
    浏览(39)
  • 深度学习基础入门篇[8]::计算机视觉与卷积神经网络、卷积模型CNN综述、池化讲解、CNN参数计算

    计算机视觉作为一门让机器学会如何去“看”的学科,具体的说,就是让机器去识别摄像机拍摄的图片或视频中的物体,检测出物体所在的位置,并对目标物体进行跟踪,从而理解并描述出图片或视频里的场景和故事,以此来模拟人脑视觉系统。因此,计算机视觉也通常被叫

    2024年02月05日
    浏览(63)
  • 【论文笔记】基于预训练模型的持续学习(Continual Learning)(增量学习,Incremental Learning)

    论文链接: Continual Learning with Pre-Trained Models: A Survey 代码链接: Github: LAMDA-PILOT 持续学习 (Continual Learning, CL)旨在使模型在学习新知识的同时能够保留原来的知识信息了,然而现实任务中,模型并不能很好地保留原始信息,这也就是常说的 灾害性遗忘 (Catastrophic forgetting)

    2024年04月26日
    浏览(35)
  • DW卷积、PW卷积、转置卷积、膨胀卷积(空洞卷积)、可变形卷积一次看个够

    Depthwise Separable Convolution也就是深度可分离卷积,应该见过吧,它其实是由depthwise卷积和pointwise卷积组合而成,同样可以用来提取图像特征,但是它的计算量相对来说要小很多,所以一些轻量模型用了深度可分离卷积比如mobilenet。(以下无标注则均无padding,stride=1) Depthwise

    2024年02月11日
    浏览(25)
  • 【论文笔记】动态蛇卷积(Dynamic Snake Convolution)

    精确分割拓扑管状结构例如血管和道路,对医疗各个领域至关重要,可确保下游任务的准确性和效率。然而许多因素使分割任务变得复杂,包括细小脆弱的局部结构和复杂多变的全局形态。针对这个问题,作者提出了动态蛇卷积,该结构在管状分割任务上获得了极好的性能。

    2024年02月03日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包