HyperAI超神经
Back to Headlines

ConvNeXt:超越ViT,优化后的CNN再度崛起

6 小时前

Vision Transformer(ViT)的出现曾让许多人认为卷积神经网络(CNN)已经过时。然而,Meta的研究人员提出了一种新的CNN架构——ConvNeXt,挑战了这一观点。 ViT之所以表现出色,主要是因为其基于Transformer的架构。Meta的研究团队认为,ViT的优势不仅在于架构本身,还包括其模型配置参数的设计。为此,他们尝试将ViT的配置参数应用到2015年的ResNet架构上,以验证模型配置的重要性。 研究团队首先在ResNet-50和ResNet-200两种模型上进行了一系列的超参数调优实验,涵盖了宏设计、ResNeXt化、倒置瓶颈结构、大卷积核以及微设计等方面。 阶段比调整:最初,ResNet-50的四个主要阶段(conv2_x、conv3_x、conv4_x、conv5_x)的瓶颈块数分别是3、4、6、3。受Swin-T启发,研究团队将其调整为1:1:3:1,结果精度提高了0.6%。 第一卷积层修改:原本的第一卷积层使用7×7卷积核和步长2,将图像尺寸从224×224缩小到112×112。他们改为4×4卷积核和步长4,相当于使用非重叠的图像补丁,精度略微提高到79.5%。 组卷积:引入了ResNeXt中的组卷积思想,每个阶段的卷积核数量与输入通道数量相同,这导致了计算复杂度的降低,但精度降低了至78.3%。 通道扩展:为了弥补精度下降,他们增加了每个阶段的卷积核数量,如conv2_x使用96个核,conv3_x使用192个核,等等。这一调整显著提升了精度达到80.5%。 倒置结构:ConvNeXt采用了Transformer中的倒置瓶颈结构,即“窄→宽→窄”,而不是传统的ResNet“宽→窄→宽”结构。这一改变使精度提高到了80.6%。 深度卷积调整:研究团队将深度卷积层的位置移到了倒置瓶颈结构的最前面,并尝试了不同的卷积核大小,最终发现7×7的核大小效果最佳,恢复了精度并降低了计算复杂度。这个核大小与Swin Transformer中的窗口尺寸匹配。 激活函数更换:将ReLU替换为GELU,虽然精度保持不变,但后续实验表明减少激活函数的数量可以提高精度。最终,ConvNeXt仅在两次点卷积之间使用GELU,精度提升到81.3%。 归一化层调整:取消了每个卷积层后的批量归一化,改为仅在第一个点卷积前使用一个批量归一化层,之后加入层归一化,最终精度提高到82.0%,超过了Swin-T的81.3%,并且计算复杂度更低。 通过这些调整,ConvNeXt在ImageNet数据集上的精度达到了82.0%,不仅超越了Swin-T,而且计算效率更高(4.5 GFLOPS)。这些成果表明,传统CNN通过适当的配置优化仍然可以在现代视觉任务中保持竞争力。 业内人士认为,ConvNeXt的成功证明了模型配置对性能的影响不容忽视,而不仅仅是架构本身。Meta是一家领先的人工智能研究机构,其研究团队在深度学习领域有着丰富的经验,这项研究进一步巩固了他们在CNN领域的地位。ConvNeXt不仅展示了CNN的潜力,也为未来的研究提供了新的思路和方向。Meta的GitHub存储库中提供了完整的ConvNeXt实现代码,方便研究人员和开发者深入了解和实际应用。

Related Links

Towards Data Science