DAMO-YOLO: 速度と精度のバランスをとった新しい物体検出フレームワーク


ここに画像の説明を挿入 著者: ケビン・ルオ

1 はじめに

DAMO-YOLOは、速度と精度を考慮した物体検出フレームワークであり、その効果は現行のYOLOシリーズ手法を上回り、高い推論速度を維持しながらSOTAを実現します。DAMO-YOLO は、YOLO フレームワークに基づいた一連の新しいテクノロジーを導入し、検出フレームワーク全体に重要な変更を加えます。具体的には、NAS 検索に基づいた新しい検出バックボーン構造、より深い中間構造、簡素化されたヘッド構造、さらに効果を向上させるための蒸留技術の導入が含まれます。DAMO-YOLO は、モデルに加えて、産業分野での実際的な問題を迅速に解決するのに役立つ、効率的なトレーニング戦略と使いやすい展開ツールも提供します。

ここに画像の説明を挿入

2. 主要技術

2.1. NASバックボーンネットワーク:MAE-NAS

バックボーン ネットワーク構造は、物体検出において重要な役割を果たします。初期の YOLO シリーズでは、DarkNet が優勢でした。最近では、YOLOv6 や YOLOv7 など、検出に効果的な他のネットワーク構造を探索する取り組みも開始されています。ただし、これらのネットワークは依然として手動で設計されています。ニューラル ネットワーク構造検索テクノロジ (NAS) の発展により、検出タスクに使用できる NAS ネットワーク構造が多数あり、従来の手動で設計されたネットワークと比較して、NAS ネットワーク構造は良好な検出結果を達成できます。そこで、NAS技術を活用して、DAMO-YOLOのバックボーンとして適切なネットワーク構造を模索している。ここでは、Ali 自身が開発した MAE-NAS を使用します。MAE-NAS は、さまざまなサイズのさまざまなバックボーン ネットワーク構造を迅速に検索するために使用できる、ヒューリスティック ベースのトレーニング不要の NAS 検索方法です。

MAE-NAS は、情報理論を使用して初期化されたネットワークのエントロピーを評価します。評価プロセスにはトレーニング プロセスが必要ないため、トレーニングと再評価が必要だった以前の NAS 検索方法の欠点が解決されます。短期間で広範なネットワーク検索を実現し、検索コストを削減し、より良い可能性のあるネットワーク構造を見つけられる可能性を高めます。MAE-NAS の検索では、基本的な検索モジュールとして K1K3 が使用されることは注目に値します。同時に、フロップスの代わりに GPU 推論遅延 (レイテンシー) をターゲット バジェットとして直接使用します。探索後、空間ピラミッド プーリングとフォーカル モジュールを最終的なバックボーン ネットワークに適用しました。以下の表 1 は、さまざまなバックボーン ネットワークのパフォーマンスの比較を示しています。MAE-NAS バックボーン ネットワークの効果は、DarkNet ネットワーク構造の効果よりも大幅に優れていることがわかります。

MAE-NAS は、ニューラル ネットワーク構造の探索手法として、巨大なネットワーク構造空間から最適なバックボーン ネットワーク構造を探索するエクスプローラーに似ています。情報理論の考え方を使用して、エントロピーの観点からさまざまなネットワーク構造の初期化状態を評価します。これは、ネットワークの探索の度合いを測定することに相当し、エントロピーが高いほど、ネットワーク構造がより不確実であり、改善や最適化の可能性がより大きいことを意味します。
MAE-NAS は、エントロピーの評価を利用することで、重いトレーニング プロセスを経ることなく、物体検出タスクに適したネットワーク構造を迅速に検索できます。従来の手動によるネットワーク構造の設計と比較して、この自動検索方法は効率と柔軟性が高くなります。GPU推論を使用して

ここに画像の説明を挿入

2.2. ラージネック:RepGFPN

特徴ピラミッド ネットワーク (FPN) では、マルチスケール特徴融合は、バックボーン ネットワークのさまざまなステージからの特徴出力を集約することを目的としており、それによって出力特徴の表現力が強化され、モデルのパフォーマンスが向上します。従来の FPN では、マルチスケール機能を融合するためのトップダウン パスが導入されています。単方向伝送の制限を考慮して、PAFPN は追加のボトムアップ パス アグリゲーション ネットワークを追加しますが、計算コストが増加します。計算量を削減するために、YOLO シリーズ検出ネットワークは PAFPN と CSPNet を選択し、バックボーン ネットワークによって出力されたマルチスケール機能を融合します。

ICLR2022 の研究 GiraffeDet は、新しい軽量バックボーン ネットワークと重い中間層構造を提案し、与えられた中間層構造 GFPN (Generalized FPN) が高レベルの意味情報と低レベルの空間情報を完全に交換できるため、SOTA パフォーマンスを達成しました。GFPN では、前の層と現在の層の異なるスケールの特徴の間でマルチスケールの特徴の融合が発生し、さらに、層間接続 log_2(n) により、より効率的な情報転送が提供され、より深いネットワークまで拡張できます。

RepGFPN の大規模な中間層は情報交換センターのようなもので、バックボーン ネットワークからマルチスケールの特徴を受け取り、異なるスケールの特徴間の相互作用を通じて特徴の融合を実現します。インテリジェントなツアーガイドと同様に、高レベルの意味情報と低レベルの空間情報を完全に通信および交換できます。
ここに画像の説明を挿入
そこでDAMO-YOLOにGFPNを導入し、PANetと比較したところ、期待どおりの精度の向上が得られました。ただし、同時に、GFPN ではモデル推論のレイテンシも増加するため、精度とレイテンシのトレードオフではあまりメリットが得られません。元の GFPN 構造の分析を通じて、次の側面が考えられました。

  1. 異なるスケールのフィーチャは同じ数のチャネルを共有するため、高レベルの低解像度フィーチャと低レベルの高解像度フィーチャが同じ豊かな表現力を持つように最適なチャネル数を与えることが困難になります。
  2. GFPN は、Queen-Fusion を使用して特徴間の融合を強化します。Queen-Fusion には、推論速度に大きく影響する、異なるスケールの特徴の融合を実現するための多数のアップサンプリングおよびダウンサンプリング操作が含まれています。
  3. GFPN で使用される 3x3 畳み込みのクロススケール特徴融合の効率は高くなく、軽量コンピューティングのニーズを満たすことができず、さらなる最適化が必要です。

上記の分析に基づいて、彼らは、リアルタイムターゲット検出におけるネック構造の設計を満たす新しい Efficient-RepGFPN を提案しました。これには、主に以下の改善が含まれます。

  1. 軽量コンピューティングの制約の下で高レベルの特徴と低レベルの特徴の表現力を柔軟に制御するために、異なるスケールの特徴マップに異なるチャネル番号を使用します。
  2. Queen-Fusion の余分なアップサンプリング操作を削除しました。これにより、精度はわずかに低下しますが、モデル推論のレイテンシーが大幅に短縮されます。
  3. オリジナルの畳み込みベースの機能融合が CSPNet 接続に改良され、再パラメータ化と ELAN 接続のアイデアが導入され、計算を追加することなくモデルの精度が向上します。最終的な Efficient-RepGFPN ネットワーク構造を上の図に示します。Efficient-RepGFPN アブレーション実験の結果を以下の表 2 に示します。

表 2 から、スケールの異なる特徴マップのチャネル数を柔軟に制御する方が、すべてのスケールの特徴マップで同じチャネル数を共有するよりも高い精度を達成できることがわかります。レベル機能と低レベル機能により、さらに多くのメリットがもたらされます。同時に、同じ計算レベルでモデルを制御することにより、Efficient-RepGFPN で深さと幅のトレードオフ比較も実行しました。深さ = 3、幅 = (96、192、384) の場合、モデルは次の値に達しました。最高の精度。

表 3 は、Queen-Fusion 接続のアブレーション実験結果を比較したもので、ネック構造は追加のアップサンプリングおよびダウンサンプリング演算子を追加せずに PANet 接続を採用しています。彼らは、アップサンプリング オペレーターのみ、ダウンサンプリング オペレーターのみ、および完全な Queen-Fusion 構造の追加を試みたところ、モデルの精度が向上しました。ただし、アップサンプリング オペレーターのみを追加すると、推論時間は 0.6 ミリ秒増加しますが、精度の改善はわずか 0.3 ミリ秒であり、追加のダウンサンプリング オペレーターを追加した場合の精度/レイテンシの向上よりもはるかに小さいため、最終設計の追加のアップサンプリング オペレーターでは削除されました。

表 4 では、マルチスケールの特徴融合手法を実験的に比較しています。この表から、低い計算制約の下では、CSPNet を使用した特徴融合手法が畳み込みベースの融合手法よりもはるかに優れていることがわかります。再パラメータ化のアイデアと ELAN 接続を導入すると、遅延をほとんど追加せずに精度を大幅に向上させることができます。

ここに画像の説明を挿入ここに画像の説明を挿入

ここに画像の説明を挿入

2.3. スモールヘッド:ゼロヘッド

DAMO-YOLOでは物体検出ヘッド(ZeroHead)に着目しています。現在、ターゲット検出方法では、検出ヘッドとしてデカップルヘッドを使用することが一般的です。デカップリング ヘッドはより高い平均精度 (AP) を達成できますが、モデルの計算時間がある程度増加します。モデルの速度とパフォーマンスのバランスをとるために、以下の表 5 で実験を行い、適切なネックとヘッドの追加重量を選択しました。

ここに画像の説明を挿入

表2、表3、表4からわかるように、「大きなネック、小さなヘッド」の構造がより優れた性能を得ることができる。したがって、以前の方法で一般的に使用されていた「分離ヘッド」を放棄し、分類と回帰タスク用の線形投影レイヤー (ZeroHead と呼ばれる) のみを保持しました。ZeroHead は頭部検出の計算量を最大化し、RepGFPN ネックなどのより複雑なネックのためにより多くのスペースを提供します。ZeroHead は本質的にカップル ヘッドとみなすことができ、これも以前の方法でサンプリングされたデカップル ヘッドとの大きな違いであることに注意してください。

2.4. ラベルの割り当て: AlignOTA

ラベル割り当て (ラベル割り当て) は、ターゲット検出における重要なコンポーネントです。以前の静的割り当て方法では、通常、アンカーとグラウンド トゥルースの IoU のみが考慮されていました。この割り当て方法では、左側に示すように、焦点がぼやけた分類タスクが発生しやすくなります。図 3 では、テディベア上の点を使用して手検出枠を予測していますが、これはモデルとしては不合理であり、理想的なラベルは図 3 右の図に示されています。また、この手法はアンカー事前分布に依存しているため、産業用途では検出対象のスケールが異なり、最適なアンカー事前分布を見つけるのは非常に面倒である。

ここに画像の説明を挿入

上記の問題を克服するために、モデルの分類と回帰予測値を利用したラベル割り当て手法が学界でいくつか登場しており、焦点のぼけの問題はある程度解消されています。OTA は古典的な手法の 1 つで、モデルの分類と回帰予測値に基づいて割り当て損失を計算し、Sinkhorn-Knopp アルゴリズムを使用して全体的な最適な割り当てを解決し、複雑な割り当てシナリオで優れたパフォーマンスを発揮します。したがって、ここでは、simOTA を加速するための分散戦略として OTA を使用しています。しかし、simOTA 自体にはいくつかの問題があり、分布を計算する際に、分類と回帰が分布に与えるバランスのとれた影響、つまり分類と回帰の損失の不一致の問題を考慮することが保証できません。これを修正するために、割り当てられたスコアの計算方法が次のように変更されました。
ここに画像の説明を挿入

ラベル割り当てにおける分類損失と回帰損失のバランスをとるために、ラベル割り当ての分類損失にフォーカル損失を導入し、分類のワンホット ラベルを IoU に置き換えて、分類の制限を緩和しました。表 4 は、改良された AlignOTA と simOTA を比較しています。AlignOTA のパフォーマンスが大幅に向上していることがわかります。

2.5 モデル蒸留

モデルの蒸留は、モデルの効果を向上させる有効な手段です。YOLOv6 は、大規模モデルで自己蒸留技術を使用してモデルの改善を試みます。しかし、一般に、蒸留の適用は、YOLO シリーズの現在の作品、特に小型モデルでの蒸留では一般的ではありません。彼らはDAMO-YOLOについて特別な研究を行い、最終的に蒸留技術をDAMO-YOLOのさまざまなスケールモデルに適用して効果を向上させました。

DAMO-YOLO のトレーニング プロセスは 2 つのフェーズに分かれており、第 1 フェーズは強いモザイク強調に基づいたトレーニングであり、第 2 フェーズはクローズド モザイク強調を使用したトレーニングです。彼らは、第 1 段階で蒸留を使用すると収束が速くなり、より高い結果が得られることを発見しましたが、第 2 段階で蒸留を使用し続けても効果はさらに向上しませんでした。彼らは、第 2 段階のデータ分布は第 1 段階と比較して大きな偏差があり、第 2 段階での知識の蒸留により、第 1 段階で学習された知識の分布がある程度破壊されると考えています。第 2 段階の学習時間が短すぎるため、モデルは第 1 段階の知識分布から第 2 段階の知識分布に完全に移行できません。しかし、無理に訓練期間を延長したり、学習率を上げたりすると、訓練コストや時間が増大する一方で、第一段階の蒸留の効果が弱まってしまいます。そこで、ここでは第 2 段階の蒸留操作を停止し、第 1 段階の蒸留のみを行います。
ここに画像の説明を挿入
第 2 に、彼らは蒸留に 2 つのテクニックを導入しています。1 つは、教師と生徒の特徴マップ サイズを調整するための調整モジュールです。もう 1 つは正規化操作で、教師と生徒の間の数値スケールの変動の影響を弱めるために使用されます。これは、KL 損失の動的な温度係数と見なすことができます。

さらに、蒸留による損失重量とヘッドサイズも蒸留効果に大きな影響を与えることもわかりました。上記図4に示すように、蒸留減量重量が増加すると分級減量の収束速度が遅くなり、変動が大きくなります。彼らは、分類損失が検出タスクに大きな影響を及ぼし、その収束が遅いとモデルの最適化が不十分になり、最終的な検出効果に影響を与えることを知っています。したがって、これまでの蒸留体験とは異なり、DAMO-YOLO では、より小さな蒸留重量を使用して蒸留損失を制御し、蒸留損失と分級損失の間の矛盾を弱めます。

同時に、検出ヘッドの構造にはZeroHeadを採用しました。ZeroHead には、タスク投影用の線形レイヤーが 1 つだけ含まれています。したがって、これは同じ特徴空間で蒸留損失と分級損失を同時に最適化することに相当し、学習された空間は蒸留と分級の最適化ニーズを満たすことができ、分級損失と蒸留損失の最適化の一貫性をさらに向上させることができます。
ここに画像の説明を挿入

3. 演奏効果表示

DAMO-YOLO チームは、MSCOCO 検証セットで DAMO-YOLO のパフォーマンスを検証しました。上記の改善と組み合わせることで、DAMO-YOLO は厳しい遅延制約の下で大幅な精度向上を達成し、新しい SOTA (State-of-the-Art、最先端の技術) を生み出していることがわかります。
ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/weixin_42010722/article/details/131392026