ConvNets から ConvNets への蒸留

ここで、ConvNets は ConvNet を抽出し、教師モデルが大規模コア ConvNet であり、生徒モデルが小規模コア ConvNet である場合、蒸留効果がより優れていることがわかります。たとえば、パラメータが 3,000 万未満の畳み込みネットワークは 83.1% の精度を達成します。イメージネット上

この論文では、スモールカーネル畳み込みネットワークを抽出するための教師として、ラージカーネル畳み込みネットワークの問題を研究します。Vision Transformer モデルは、データ量とモデルの大きさの増加をサポートすることで、さまざまなタスクで SOTA パフォーマンスを実現しますが、依然として ConvNet の使用と比較して、ConvNet と Transformer の間のパフォーマンスのギャップが、幅広いアプリケーションを制限するボトルネックの 1 つとなっています。より小さな ConvNets モデルを抽出することは、パフォーマンスを向上させるための重要な手段の 1 つであり、この時点で、教師モデルは Transformer を使用することも、ConvNets の維持を継続することもできます。Transformer と ConvNets の全体的な構造があまりにも異なるため、これまでの研究では、これが適切な教師モデルではない可能性があることが示されています。したがって、この論文では、ConvNet による ConvNet の蒸留について研究し、教師モデルが大規模コアの ConvNet であり、生徒モデルが小規模コアの ConvNet である場合、蒸留効果がより優れていることを発見しました。たとえば、より少ない量の畳み込みネットワークImageNet では、3,000 万を超えるパラメータで 83.1% の精度が達成されます。

大規模なカーネル ConvNet はトランスフォーマーより優れた教師ですか?

論文タイトル: 大規模なカーネルは ConvNet のトランスフォーマーより優れた教師ですか? (ICML 2023)

用紙のアドレス:

https://arxiv.org/pdf/2305.19412.pdf

コードアドレス:

https://github.com/VITA-Group/SLaK

Transformer は AI 分野に歴史的な変化をもたらし、基本モデルとして、コンピューター ビジョン、自然言語処理、生物学などの多くの分野で記録を更新しました。Transformer はモデルの大規模化とデータセットの大規模化により、さまざまな分野で高度なパフォーマンスを実現し、学界や産業界で法外な競争を引き起こし、モデルの量がより高いレベルに達していると言えます。

ただし、Edge AI や AIoT デバイスなど、リソースが限られているエンドサイド デバイスでは、依然として ConvNets の方が有利な選択肢です。ただし、CNN と Transformer の間のパフォーマンスのギャップは、CNN の幅広い用途を制限するボトルネックの 1 つです。たとえば、ResNet と MobileNet はトレーニング費用が安く、モデル サイズも手頃ですが、精度が低くなる傾向があります。したがって、これらの小さなコンボリューション カーネル モデルのパフォーマンスをビジュアル Transformer の高度なレベルにまで向上させる方法は、実際に研究する価値のある良い問題です。

知識の蒸留 (Knowledge Distillation、KD) は小規模モデルのパフォーマンスを向上させる効果的な手段ですが、 Visual Transformer 教師モデルからCNN 学生モデルへの 蒸留は賢明な選択ではないようです。 1]。詳細な実験を通じて、この論文は、ロジット蒸留であろうと特徴蒸留であろうと、アーキテクチャの類似性により、ラージコア CNN 教師モデルからスモールコア CNN 学生モデルへ蒸留する方がより効果的であることを発見しました。 最新のアーキテクチャとトレーニング戦略のサポートにより、ラージコア ConvNet は Vision Transformer と同じレベルの精度を達成できます。Vision Transformer と比較して、ラージコア ConvNet には次の 3 つの利点があります。

  1. 同等の分類精度

  2. 同様またはより大きな受容野

  3. 畳み込み演算に基づいており、学生モデルのアーキテクチャにより似ています。

ただし、最新のラージコア ConvNet (ConvNeXt および SLaK) と従来のスモールコア ConvNet の間には、次のような多くの違いがあります。

  • 初めは絵のブロック操作など、

  • BatchNorm の代わりに LayerNorm を使用する

  • GELU 活性化関数 ReLU を使用する

著者らはまた、結果として得られる蒸留モデルが他のモデルよりも大きな ERF と優れたロバスト性を備えていることも発見しました。これは、精度に加えて、大コア ConvNet の他の優れた特性も蒸留パラダイム ConvNet によって小コアに移すことができることを示唆しています。

小規模コア ConvNet を抽出する大規模コア ConvNet の実験セットアップ

このセクションでは、使用した実験セットアップとベンチマークについて説明します。公平に比較​​するには、以下のいくつかの主要なコンポーネントを慎重に制御する必要があります。

①評価指標

著者は、直接ゲイン (Direct Gain) と実効ゲイン (Effective Gain) という 2 つの指標を定義します。

New Knowledge Distillation (NKD)[3] は、元の損失、非ターゲットの分散損失、およびターゲットのソフト損失で構成され、次のように表すことができます。 

特徴蒸留:

実験結果

ロジット蒸留実験結果:

1 小規模コア ConvNet の場合、大規模コア ConvNet は Transformer よりも優れた教師モデルです。

上の図 1 と図 2 は、それぞれ異なる教師モデルに対する NKD と KD の結果を示しています。一般に、SLaK-T や ConvNeXt-T などのラージコア ConvNet 教師モデルは、必ずしもパフォーマンスの点で Transformer 教師モデルを上回るわけではありませんが、蒸留の観点からは、実効ゲインと直接ゲインは次のとおりであると結論付けることができます。学生モデル インジケーターはすべてのトランスフォーマーよりも優れています。ResNet-50 および ConvNeXt-T での SLaK-T の直接ゲインは、それぞれ 2.44% と 1.17% に達し、Transformer 教師モデルによってもたらされるゲインよりも大幅に高くなります。

2 カーネル サイズが大きいほど、学生はより多くの恩恵を受けます。

これはラージコア ConvNet でもあり、51×51 SLaK-T 蒸留スチューデント モデルは、実効ゲインおよび直接ゲイン指標の下で常に ConvNeXt-T 蒸留スチューデント モデルよりも優れており、カーネル サイズが大きいほどスチューデントがより多くのメリットを得られることを示しています。 。

3 大規模コア ConvNet は、学生モデルの収束を高速化するのに役立ちます。

教師ありトレーニングの場合、ConvNeXt-T は ImageNet で 82.1% の精度を達成するために 300 エポックを必要としますが、SLaK-T を教師モデルの蒸留として使用すると、わずか 120 エポックで同じ精度を達成できます。

特徴 蒸留実験結果

ビジュアル Transformer と大規模コア ConvNet 教師モデルの効果を完全に理解するために、著者はいくつかの特徴抽出方法、特に最後のステージの出力特徴も比較しました。さらに、パフォーマンスをさらに向上させるために、ロジット蒸留と特徴蒸留を組み合わせることも一般的です。

著者らは、FD [5] の損失関数と NKD [6] の損失関数を組み合わせ、学生モデル ResNet-50 を使用してさまざまな教師モデルを評価しています。数字 LL は、蒸留 LL 層の特徴を表します。たとえば、L=2L=2 は、最後の 2 つのステージの出力が特徴蒸留損失の構築に使用されることを意味します。

図 3: 特徴 蒸留実験結果、蒸留方法は FD

図 3 に示すように、ラージコア ConvNet の蒸留パフォーマンスは依然として Transformer を上回っています。興味深いことに、SLaK-T のフィーチャー蒸留における直接ゲインは Swin-T よりも 0.08% 高いだけですが、Logit 蒸留と組み合わせた場合、ゲインは0.66%まで引き上げられました。これは、ビッグ コア ConvNet がロジット蒸留に非常に役立つだけでなく、ロジット蒸留 + 特徴蒸留にも非常に役立つことを示しています。

より長いトレーニング実験の結果

最近の研究 [7] では、最適なパフォーマンスを達成するには、知識の蒸留には通常、教師あり学習で一般的に使用されるエポック数よりもはるかに多くのトレーニング エポック数が必要であることが示されています。そこで、ここで著者はトレーニング時間を 120 エポックから 300 エポックに延長しました。結果は以下の図 4 に示されており、トレーニング期間を 120 エポックから 300 エポックに拡張すると、ResNet-50 のパフォーマンスは 2.05% 向上しました。SLaK-Tの最大のコンボリューションカーネルで教師モデルを蒸留して得られる学生モデルの性能も最高です。

図 5 に示すように、51×51 SLaK-T 蒸留から得られた ConvNeXt-Tiny モデルは、300 エポック トレーニング戦略の下で 83.1% の ImageNet-1K 精度を獲得し、最も高度な結果を達成しました。この精度は、MAE 自己教師ありトレーニング 900 Epoch によって得られた ConvNeXt V2-T の精度を上回ります。

大畳み込みカーネル教師蒸留が有効受容野 (ERF) に及ぼす影響

CV の有効受容野 (ERF) も非常に重要な概念であり、ニューラル ネットワーク層の出力ユニットの出力に無視できない影響を与える入力の部分を説明します。言い換えれば、受容野の外側の入力は、この位置での出力値に影響を与えません。一般に、ラージコア ConvNet と Vision Transformer はどちらもより大きな ERF を備えているため、従来のスモールコア ConvNet よりも優れたパフォーマンスを発揮すると考えられています。

実験のこのセクションでは、著者は蒸留が小規模コア ConvNet でより大きな ERF を取得し、その特性を改善するのに役立つかどうかを確認したいと考えています。この手法は RepLKNet と一致しています。ImageNet 検証セットから 5000 枚の画像がサンプリングされ、サイズが 1024×1024 に変更され、最後の層によって生成された特徴マップの中心点に対する各ピクセルの寄与が測定されます。貢献度スコアはさらに蓄積され、1024×1024 の行列に投影されます。

実験結果を図 6 に示します。SLaK-T から抽出されたスチューデント モデルの ERF は、Swin-T および CSWin-T から抽出されたスチューデント モデルの ERF よりも大きいことがわかります。これは、前者の理由も説明できる可能性があります。のパフォーマンスが向上しています。つまり、大規模なカーネル教師は、小規模なカーネル スチューデント モデルの ERF の改善に役立ち、後者の固有の欠陥を補います。

図 6: 大畳み込みカーネル教師蒸留が ERF に及ぼす影響

大畳み込みカーネル教師蒸留の堅牢性への影響

堅牢性もニューラル ネットワークの重要な特性であり、[8][9] は、Transformer と大コア ConvNet が小コア ConvNet よりも堅牢であることを示しています。この論文では、知識の蒸留によって小規模カーネル ConvNet の堅牢性が向上するかどうかを検討します。評価データセットには、ImageNet-R、ImageNetA、ImageNet-Sketch、ImageNet-C が含まれます (評価指標には平均破損誤差、mCE が使用されます)。図 7: 蒸留によりスチューデント モデルの堅牢性が向上

結果を図 7 に示します。大規模なコア ConvNet から抽出されたスチューデント モデルは、Transformer から抽出されたスチューデント モデルよりも堅牢性が優れています。堅牢な Transformer 教師モデルは、必ずしもその堅牢なプロパティを生徒モデルに転送するとは限りません。たとえば、Swin-T および ViT-S から抽出された学生 ResNet-50 モデルは、ImageNet-SK/A データセットでのトップ 1 の精度さえ低下します。一方、大規模コアの ConvNet 教師モデル SLaK-T は、堅牢な転送の点で ConvNeXt-T よりも優れています。

おすすめ

転載: blog.csdn.net/qq_29788741/article/details/131355119