convnext 网络结构简介
1. convnext v1
- ConvNeXt的设计思路:作者从标准ResNet出发,逐步引入Transformer的设计元素,包括宏观设计(如多阶段设计、计算分布)、ResNeXt的分组卷积、倒置瓶颈结构、大核卷积等,最终形成了ConvNeXt架构。
- 训练技术:采用与Transformer相似的训练技术,如AdamW优化器、Mixup、Cutmix、RandAugment等数据增强技术,以及Stochastic Depth和Label Smoothing等正则化方法。
- 架构改进:
- 宏观设计:调整ResNet的阶段计算比例,使其更接近Swin Transformer的设计。
- ResNeXt化:引入分组卷积,增加网络宽度。
- 倒置瓶颈:在MLP块中引入类似Transformer的倒置瓶颈结构。
- 大核卷积:探索大核卷积对性能的影响,发现7×7的卷积核在性能上达到饱和。
- 微设计:包括替换ReLU为GELU、减少激活函数和归一化层的数量,以及将BatchNorm替换为LayerNorm。
2. convnext v2
- 全卷积掩码自编码器框架(FCMAE):该框架通过随机遮蔽输入图像的大部分,并让模型根据剩余上下文预测缺失部分来生成学习信号。文章详细描述了掩码策略、编码器设计、解码器设计以及重构目标。
- 掩码策略:使用0.6的掩码比率,随机移除输入图像的60%的32×32块。
- 编码器设计:使用ConvNeXt模型作为编码器,并引入稀疏卷积来处理仅可见部分的数据。
- 解码器设计:使用轻量级的ConvNeXt块作为解码器。
- 重构目标:通过计算重构图像和目标图像之间的均方误差(MSE)来优化模型。
- 全局响应归一化(GRN)层:为了解决ConvNeXt在掩码输入上训练时出现的特征坍塌问题,文章提出了GRN层。GRN层通过全局特征聚合、特征归一化和特征校准三个步骤来增强通道间的特征竞争。