デット (物体検出用トランスフォーマー)
美とファッションの専門家からの話題です!『デット』の魅力とトランスフォーマーの世界
深いダイブとTransformerによる「エンドツーエンド検出」論文の明解な解説
注:この記事はコンピュータビジョンの複雑な世界に深く入り込み、特にTransformerとAttention Mechanismに焦点を当てています。論文「Attention is All You Need」の主要な概念について把握していることをお勧めします。詳細
歴史のスナップショット
DETR(DEtection TRansformer)は、2020年にニコラス・カリオン氏とFacebook AI Researchチームによって考案され、オブジェクト検出の新しい波を起こしました。
現在はSOTA(最先端技術)の地位は持っていませんが、DETRの革新的なオブジェクト検出タスクの再定式化は、CO-DETRなどの後続モデルに大きな影響を与えています。CO-DETRは現在、オブジェクト検出とインスタンスセグメンテーションの最先端技術です。
従来の1対多の問題設定から離れて、各グラウンドトゥルースが無数のアンカーキャンディデートに対応するという問題設定ではなく、DETRはオブジェクト検出をセット予測の問題として捉え、予測とグラウンドトゥルースの1対1の対応を実現し、一部の後処理技術の必要性を排除しています。
オブジェクト検出の復習
オブジェクト検出は、画像やビデオフレーム内のオブジェクトを識別して位置を特定するコンピュータビジョンの領域です。オブジェクトを単純に分類するだけでなく、オブジェクトの位置を示すバウンディングボックスを提供し、さまざまな識別されたオブジェクトの空間的なコンテキストと配置を理解するシステムを可能にします。
オブジェクト検出は、自動運転などで非常に有用ですが、より正確なオブジェクトの輪郭を求めたり、異なるインスタンスを区別する<st
トランスフォーマーを活用することで、DETRは直接固定サイズの境界ボックスの集合を予測し、従来のNMSの必要性を排除し、モデル性能を改善しつつ、もしくはそれ以上の性能を維持するという、目覚ましいオブジェクト検出パイプラインの簡素化が実現されました。</st
DETRアーキテクチャの詳細
高レベルで見ると、DETRは以下のようなものです。
- 画像エンコーダ(実際には、より表現力を持たせるためにCNNバックボーンに続いてトランスフォーマーエンコーダがあるため、実際にはダブルイメージエンコーダです)
- トランスフォーマーデコーダ:このデコーダが画像のエンコーディングから境界ボックスを生成します。
それぞれのパートの詳細について見ていきましょう:
- バックボーン:
まず始めに、カラーチャンネルが3つある初期画像からスタートします:
そして、この画像はバックボーンによって畳み込みニューラルネットワークに供給されます。
私たちが通常使用する値はC = 2048、H = W = H0 = W0 = 32です。
2. トランスフォーマーエンコーダ:
トランスフォーマーエンコーダは理論的には必須ではありませんが、バックボーンにさらなる表現力を追加し、削除実験では性能の向上が示されています。
まず、1×1の畳み込みにより、高レベルアクティベーションマップ f のチャンネル次元が C からより小さい次元 d に減らされます。
畳み込み後:
しかし、トランスフォーマーは入力ベクトルのシーケンスを出力ベクトルのシーケンスにマッピングするため、空間次元を折りたたむ必要があります:
空間次元を折りたたんだ後:
これでトランスフォーマーエンコーダに供給する準備が整いました。
重要な点は、トランスフォーマーエンコーダが自己アテンションメカニズムのみを使用するということです。
これが画像エンコーディング部分についての説明です!
3. トランスフォーマーデコーダ:
この部分が最も理解が難しい部分ですが、理解できればほとんどの記事を理解できるでしょう。
デコーダは、自己アテンションとクロスアテンションのメカニズムの組み合わせを使用します。N 個のオブジェクトクエリが供給され、各クエリは出力ボックスとクラスに変換されます。
ボックスの予測はどのように見えるのでしょうか?
実際には、2つの要素で構成されています。
- 境界ボックスはいくつかの座標(x1、y1、x2、y2)を持ち、ボックスを識別します。
- クラス(例えばカモメですが、空の場合もあります)
重要な点は、N が固定されているということです。つまり、DETRは常に正確に N 個の境界ボックスを予測します。ただし、その中には空のボックスも含まれる場合があります。十分なオブジェクトをカバーするために N が十分に大きいことだけ確認すれば良いです。
次に、クロスアテンションメカニズムはエンコーディング部分(バックボーン + トランスフォーマーエンコーダ)で生成された画像特徴にアテンションを向けることができます。
もしメカニズムに自信がない場合は、以下の図が事を明確にするはずです:
元のTransformerアーキテクチャでは、最初にトークンを生成し、その後、自己注意と交差注意の組み合わせを使用して次のトークンを生成し、繰り返します。しかし、ここではこの再帰的な定式化は必要ありません。一度にすべての出力を生成することができるため、並列処理を活用できます。
メインのイノベーション:Bipartite Matching Loss
前述のように、DETRは正確にN個の出力(バウンディングボックス+クラス)を生成します。しかし、それぞれの出力は1つの正解に対応します。これが重要なポイントであり、重なり合うボックスをフィルタリングするための事後処理を行いたくないのです。
基本的には、各予測を最も近い正解と関連付けたいです。実際には、予測セットと正解セットの間で、総損失を最小化する双射を探しているのです。
では、この損失をどのように定義するのでしょうか?
1. マッチング損失(ペアワイズ損失)
まず、1つの予測ボックスと1つの正解ボックスとの間のマッチング損失を定義する必要があります:
そして、この損失は2つの成分を考慮する必要があります:
- 分類損失(バウンディングボックス内に予測されたクラスが正解と同じかどうか)
- バウンディングボックス損失(バウンディングボックスが正解に近いかどうか)
そして、バウンディングボックスの成分には2つのサブ成分があります:
- Intersection over Union Loss(IOU)
- L1 Loss(座標間の絶対差)
2. 双射の総損失
総損失を計算するために、N個のインスタンスについて合計します:
基本的には、合計損失を最小化する双射を見つけることが問題です:
パフォーマンスの洞察
- DETR:これは元のモデルを指します。物体検出にはTransformerを使用し、バックボーンにはResNet-50を使用しています。
- DETR-R101:これはDETRのバリアントで、ResNet-50の代わりにResNet-101バックボーンを使用しています。ここでは、「R101」は「ResNet-101」を指します。
- DETR-DC5:このバージョンのDETRは、ResNet-50バックボーンの変更された拡張C5ステージを使用しており、小さなオブジェクトのモデルのパフォーマンスが向上しています。
- DETR-DC5-R101:このバリアントは両方の変更を組み合わせています。ResNet-101バックボーンを使用し、拡張されたC5ステージを含んでいます。
DETRは、大きなオブジェクトにおいて基準線を大幅に上回る性能を発揮し、これは変換器によって許可される非局所的な計算の恩恵を受けている可能性が非常に高いです。しかし、興味深いことに、DETRは小さなオブジェクトでは性能が低下しています。
なぜこのケースで注意メカニズムが非常に強力なのでしょうか?
非常に興味深いことに、重複するインスタンスの場合、注意メカニズムは上記の画像に示すように個々のインスタンスを正しく分離することができます。
また、興味深いことに、注意はオブジェクトの極端な部分に焦点を当て、バウンディングボックスを生成するために使用されます。これは私たちが期待する動作です。
まとめ
DETRは単なるモデルではありません。これはオブジェクト検出を一対多の問題から予測セットの問題に変える、効果的なトランスフォーマーアーキテクチャの進歩を利用したパラダイムシフトです。
その創出以来、DETR++やCO-DETRなどのモデルが進展しており、COCOデータセット上のインスタンスセグメンテーションとオブジェクト検出の最先端として舵を取っています。
お読みいただきありがとうございます!最後に:
- AIチュートリアルの私のコンピレーションをGithubでチェックしてください
GitHub — FrancoisPorcher/awesome-ai-tutorials: AIチュートリアルの最高のコレクションであなたを一人前のボスにしましょう!
データサイエンスのボスになるためのAIチュートリアルの最高のコレクション! — GitHub …
github.com
私の記事を受け取ることができます。 こちらで購読してください。
VoAGIのプレミアム記事にアクセスしたい場合は、月額5ドルの会員登録が必要です。 私のリンクでサインアップすれば、追加費用なしであなたの料金の一部をサポートしていただけます。
この記事が有益で興味深いと感じた場合は、私のフォローと拍手をしていただけると幸いです! あなたのサポートにより、私は私たちの共通理解を助けるコンテンツの制作を続けることができます。
参考文献
- “Transformersによるエンドツーエンドのオブジェクト検出” by Nicolas Carion, Francisco Massa, Gabriel Synnaeve, Nicolas Usunier, Alexander Kirillov, and Sergey Zagoruyko. arXivで全文を読むことができます。
- Zong, Z., Song, G., & Liu, Y. (出版年). DETRs with Collaborative Hybrid Assignments Training. https://arxiv.org/pdf/2211.12860.pdf。
- COCOデータセット
We will continue to update VoAGI; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles
- 生成モデルとノイズと構造のダンス’ (Seisei moderu to noizu to kōzō no dansu)
- 「自分自身の生成モデルを選択して実行するためのステップバイステップガイド」
- 「階層トランスフォーマー ― パート2」
- データエンジニアになる方法
- HNSW(Hierarchical Navigable Small World)への序章
- Google DeepMindは、1M以上の軌跡データと汎用AIモデル(𝗥𝗧-X)を含むロボットデータセットであるOpen X-Embodimentをリリースし、ロボットが新しいスキルを学ぶ方法を進化させるための支援を行います
- 高度なPython:メタクラス