[論文レビュー] More ConvNets in the 2020s: Scaling up Kernels Beyond 51x51 using Sparsity
この論文は、分解された大きなカーネル(51×51)を使用し、疎なグループとダイナミックスパーシティで拡張可能にした純粋なCNN、Sparse Large Kernel Network (SLaK) を提案する。31×31を超える規模へと拡張し、ImageNetおよび下流の視覚タスクで最先端のTransformersと競合するかそれを上回る結果を得ている。
Transformers have quickly shined in the computer vision world since the emergence of Vision Transformers (ViTs). The dominant role of convolutional neural networks (CNNs) seems to be challenged by increasingly effective transformer-based models. Very recently, a couple of advanced convolutional models strike back with large kernels motivated by the local-window attention mechanism, showing appealing performance and efficiency. While one of them, i.e. RepLKNet, impressively manages to scale the kernel size to 31x31 with improved performance, the performance starts to saturate as the kernel size continues growing, compared to the scaling trend of advanced ViTs such as Swin Transformer. In this paper, we explore the possibility of training extreme convolutions larger than 31x31 and test whether the performance gap can be eliminated by strategically enlarging convolutions. This study ends up with a recipe for applying extremely large kernels from the perspective of sparsity, which can smoothly scale up kernels to 61x61 with better performance. Built on this recipe, we propose Sparse Large Kernel Network (SLaK), a pure CNN architecture equipped with sparse factorized 51x51 kernels that can perform on par with or better than state-of-the-art hierarchical Transformers and modern ConvNet architectures like ConvNeXt and RepLKNet, on ImageNet classification as well as a wide range of downstream tasks including semantic segmentation on ADE20K, object detection on PASCAL VOC 2007, and object detection/segmentation on MS COCO.
研究の動機と目的
- 31×31を超える極端に大きなカーネルでConvNetをスケールさせ、長距離依存性を捉えつつ局所性を保つことを動機づける。
- 大きなカーネルを実現するためにカーネル分解とスパース性を活用した実用的なトレーニングレシピを開発する。
- 51×51カーネルを持つ純粋なCNNであるSLaKを構築し、ImageNetおよび下流タスク全体で最先端のCNNとTransformersと比較評価する。
提案手法
- 大きな M×M カーネルを、長距離依存性と局所的なディテールのバランスを取るために、長辺が M×N、短辺が N×M の二つの並列矩形カーネルに分解する(N < M)。
- 密なカーネルをスパースなグループに置換し、トレーニング中にダイナミックスパーシティを適用して接続を剪定・成長させ、幅の拡張をスケーラブルにする。
- 分解後に 5×5 の並列ブランチを用い、出力を足し合わせる前に BatchNorm を適用してトレーニングを安定化させる。
- ConvNeXt風のアーキテクチャを継承しつつ、ステージごとのカーネルサイズを [51, 49, 47, 13] に増やし、40% のスパース性と幅の拡張(1.3倍)でスパ sparsify。
- 拡張エポック(ImageNet-1K 300 epoch など)で訓練を行い、確立されたデータ拡張・正則化プロトコルに従い、ConvNeXtおよび RepLKNet のベースラインと比較する。
実験結果
リサーチクエスチョン
- RQ1非常に大きなカーネル(31×31を超えるもの)を、性能の崩壊なしにCNNで効果的に学習させられるか?
- RQ2カーネル分解とスパースグループは、Transformerベースのアーキテクチャと比較してスケーラブルで高性能な大きなカーネルCNNを実現できるか?
- RQ3非常に大きなカーネルの精度、FLOPs、パラメータ効率に対するスパーストレーニングダイナミクスの影響は?
- RQ4高解像度の入力および下流の視覚タスク(セグメンテーション、検出)で大きなカーネルはImageNetを超えた利点を提供するか?
- RQ5SLaKは様々な視覚ベンチマークで最先端のCNNとTransformersとどのように比較されるか?
主な発見
- 分解戦略(M×NとN×M、N=5)により、61×61 カーネルまで拡張しても、素の大きなカーネルより性能が向上する。
- ダイナミックスパーシティと幅拡張(40%スパース、1.3倍の幅)は顕著な精度向上とFLOPs削減をもたらし、120エポックの実験でConvNeXtのバックボーンに対して51×51カーネルで81.6%のトップ1を達成。
- ImageNet-1K では SLaK-T が 82.5%、SLaK-B が 84.0%(224×224)で、ConvNeXtおよび RepLKNet のベースラインと同等かそれより効率が良い;384×384 では SLaK-B が 85.5% に達する。
- ADE20K ではより大きなカーネルが mIoU を高め、SLaK-T の 51×51 が 46.2、ConvNeXt-T の 31×31(RepLKNet) 45.0、300エポック訓練で ConvNeXt-S を凌ぐ。
- PASCAL VOC 2007 の物体検出では SLaK-T の 51×51 が 82.7 mAP、ConvNeXt-T-7×7 が 80.6、RepLKNet 31×31 が 81.3。
- MS COCO では SLaK-T(51×51)は 48.4 APbox、長時間のファインチューニングで 51.3 APbox を達成し、いくつかの密結合カーネルベースラインを上回りつつ、FLOPs は同等以下。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。