当前位置:   article > 正文

ConvNext详解

ConvNext详解

1.ConvNext v1

        Transformer在视觉领域大放异彩?以后卷积怎么办呢?facebook 的研究人员就探究了这样一个问题。首先,SwinTransformer采用分层和窗口的设计,取得了非常好的性能。这说明卷积这种窗口的设计也是有用的,因此,研究人员通过对比卷积和Transformer的体系结构,设计了ConvNext。

        

(1)提升感受野,使用更大的卷积核(3*3-->7*7),但是更大的卷积核带来了更多的运算量,这就需要使用1*1的卷积调整通道和分组卷积了。

(2)将ReLU替换为GeLU,并设计了一个类似于Transformer的FFN层的结构,即在两层1*1的卷积中间使用激活函数

(3)归一化由BN变为LN,并类似于Transformer,使用更少的归一化层。

(4)降采样层:类似于Swin Transformer,使用2*2的卷积,stride为2,并使用LN稳定训练。

 2.ConvNext v2

(1)问题:

  • 将ConvNext直接应用于自监督学习框架MAE中性能不佳,基于此,这篇论文设计了全卷积的MAE
  • 模型中特征崩溃现象:有许多死亡或饱和的特征图,激活在通道之间变得冗余。作者引入GRU解决这个问题

(2)全卷积的MAE

        

框架概述:MAE的自监督框架是,首先对图像进行随机的掩蔽,然后使用神经网络尝试重构掩蔽部分,并与原图进行对比,计算损失。

掩蔽策略: 掩蔽比例在0.6

编码器设计:在Transformer中,我们只需要使用mask就能够防止Transformer对掩蔽部分进行建模。而在卷积中,由于卷积核在整个图像上平移并计算特征。需要采取策略有效阻止卷积从掩蔽部分提取特征。为了解决这个问题,论文提出以稀疏数据的角度看待掩蔽图像。引入3D点云的稀疏卷积。

解码器设计:使用一个ConvNeXt 作为解码器

(3)GRU

        

        对特征图进行可视化发现,ConvNext v1存在特征崩溃现象:有许多死亡或饱和的特征图,激活在通道之间变得冗余。

GRU包含3个部分:

  • 全局特征聚合(可以看做一种全局池化)

  •  特征归一化

  • 特征校准:引入权重和偏置项进行平滑,并使用残差设计

代码实现特别简单:

当应用GRN时,LayerScale就变得不必要了,并且可以被删除。 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/300548
推荐阅读
相关标签
  

闽ICP备14008679号