ウェブサイト検索

DETR の概要 - パート 2: ハンガリー アルゴリズムの重要な役割


概要

以前の記事で見たように、DETR (Detection Transformer) は、画像内のオブジェクトを検出するための新しいファングド ディープ ラーニング モデルです。これは、エンドツーエンドでトレーニングできるオールインワン モデルです。 DETR は、セットの予測問題として処理してオブジェクト検出を行い、トランスフォーマーを使用して画像の特徴を処理します。

これがどのように機能するかの鳥瞰図です。DETR は、ほとんどの視覚モデルと同様に、通常の畳み込みニューラル ネットワーク (CNN) バックボーンから始まり、入力画像から特徴を抽出します。これらの特徴を平坦化し、画像内のオブジェクトの位置を示す位置情報を追加し、これをトランスフォーマー エンコーダーに供給します。モデルに画像特徴間の関係を理解させるトランスフォーマーを通過した後は、トランスフォーマー デコーダーがあります。

次に、トランスフォーマ デコーダは、オブジェクト クエリと呼ばれる、固定数の学習された位置埋め込みを入力として受け取ります。これらは、どのようなオブジェクトが存在するかを把握するのに役立ちます。エンコーダーからのエンコードされた画像の特徴に注目して、オブジェクトの位置とクラスを予測します。つまり、DETR は、従来の物体検出パイプラインを、物体を直接予測する Transformer に置き換えます。

DETR における最適な 2 部マッチング: 物体検出のセット予測損失を最小限に抑える

設定された予測損失は、予測されたオブジェクトをグラウンド トゥルース オブジェクトと位置合わせする二部マッチング手法を使用して計算されます。 この技術には、予測オブジェクトとグラウンド トゥルース オブジェクトの間の最適な一致を、それらのデータに基づいて見つけることが含まれます。類似性スコア。類似性スコアを取得するために、予測されたバウンディング ボックスとグラウンド トゥルース ボックスの和集合 (IoU) を調べます。二部マッチングを使用するということは、各予測オブジェクトが最大 1 つのグラウンドトゥルース オブジェクトとペアになることを意味し、その逆も同様です。

最適な 2 部マッチングの方程式は次のように定義されます。

この方程式で表される最適化問題は、予測されたオブジェクトの最適な順列を見つけるために使用され、その後、それがオブジェクト予測の最終セットを出力するために使用されます。

これは、予測の可能なすべての順列を調べることによって、グラウンド トゥルース オブジェクトと予測されたオブジェクトの間の合計マッチング損失を最小限に抑えることです。合計のマッチング損失が最小になるものを選択します。

領域の提案を行ってから各領域を分類する通常のアプローチを使用する代わりに、DETR は画像全体に対して一連のオブジェクト予測を一度に行うだけです。

コストの最小化におけるハンガリーアルゴリズムの役割

ハンガリーのアルゴリズムは、与えられたコストで一連のタスクを一連のエージェントに最適に割り当てる割り当て問題に対処するための非常に効果的な解決策とみなされています。

この記事は、このトピックに関する入門ガイドとして機能します。ハンガリーのアルゴリズムがどのように機能するかを詳しく説明し、より効率的に実装する方法を模索することを目的としています。それでも、ハンガリーアルゴリズムを計算する手順は、以下の図に要約できます。

ハンガリアン アルゴリズムのフローチャートは、コスト マトリックスの構築から始まります。各要素は、タスクを完了するために作業者を割り当てるコストを表します。

アルゴリズムは行削減に従い、同じ行内のすべての要素から各行の最小要素を減算します

次に、列の削減に進み、このプロセスを列全体に同様に適用します。このステップに続いて、次の目標は、最小数の水平線と垂直線で行列内のすべてのゼロをカバーすることです。

カバレッジの最適性は次のようにチェックされます。ライン数が行列のサイズと等しい場合、最適な割り当てが存在します。それ以外の場合は、マトリックスを調整する必要があります。

調整には、カバーされていないすべての要素から減算し、2 行でカバーされている要素に追加することが含まれます。 このプロセスは、マトリックス サイズと同じ数のカバー ラインが存在するまで繰り返されます。その後、行列内のゼロ位置を使用して最適な割り当てを決定することが可能になります。

ハンガリーのアルゴリズムは、DETR (DEtection TRansformer) モデルで重要な役割を果たします。 DETR モデルは各画像をオブジェクトのセットと見なし、ハンガリーのアルゴリズムを使用して予測を対応する GT (Ground Truth) オブジェクトに関連付けます。以下の図でプロセスを視覚化してみましょう。

画像を処理した後、DETR は画像ごとに固定数の予測を出力します。各予測は、クラス ラベルと境界ボックスで構成されます。同時に、モデルには各イメージの GT オブジェクトのセットがあり、それぞれがクラスと境界ボックスで構成されます。

ハンガリアン アルゴリズムが効果的に機能するには、コスト マトリックスが不可欠です。 DETR では、正確な予測を確立するために、対応するグラウンドトゥルース オブジェクトに対して各予測を評価および定量化することで、この重要なスキーマを作成します。 '料金'。この値は、予測と GT オブジェクト間の不一致または逸脱を洞察する指標として機能します。

総コストに寄与する重要な要素は 2 つあります。「クラス誤差」と「バウンディング ボックス誤差」です。 クラス誤差は基本的に、モデルの予測クラスを考慮した GT ラベルの負の対数尤度です。分布。境界ボックス誤差は、予測された境界ボックス座標と GT 境界ボックス座標の間の L1 損失です。

コスト マトリックスの綿密な分析を行うことにより、DETR モデルは、正確な職人技による独創的なハンガリーのアルゴリズムを使用します。これにより、それぞれの GT オブジェクトに迅速かつ正確にマッピングされる予測の最適な割り当てを見つけることができます。この先駆的なアプローチは、全体的なパフォーマンスを最適化して効率を最大化しながら、総コストを最小限に抑えます。

DETR におけるハンガリーのアルゴリズムとコスト計算

ハンガリーのアルゴリズムは、多項式時間で割り当て問題を解くために使用されます。物体検出モデルのパフォーマンスを評価する場合、2 つの重要なパラメーターが関係します__:__

  • クラス誤差 E_c は、クロスエントロピー損失を使用して計算されます: E_c=-log(P(Y=y))P(Y=y) はGTクラスの予測確率です。
  • 境界ボックス誤差、E_b は、予測された境界ボックス座標(x_pred、y_pred、w_pred、h_pred)と GT 座標間の L1 損失 (絶対差の合計) です。 (x_gt、y_gt、w_gt、h_gt): E_b=|x_pred - x_gt| + |y_pred - y_gt| + |w_pred - w_gt| + |h_pred - h_gt|。

総コスト C は、クラス誤差と境界ボックス誤差の加重合計になります。 C=λ*E_c + (1-λ)*E_b。ここで、λ はクラスとバウンディング ボックスの誤差の寄与のバランスをとる重みパラメータです。

DETR には、ハンガリーのアルゴリズムの本質を要約したこの公式が埋め込まれています。この画期的な数式の核心は、総コストを最小限に抑えながら、各予測を対応するグラウンド トゥルース オブジェクトに割り当てることです。

このアプローチにより、モデルの予測と画像内の実際のオブジェクトとの間で可能な限り最良の一致が保証されます。 DETR はこの技術を通じて、正確な物体検出に対する優れた能力を発揮します。この高度な機能は、革新的なエンドツーエンドのフレームワークにより、シームレスな流動性を実現します。 DERT は、今日のほとんどの競合モデルに蔓延している煩わしいカスタム コンポーネントを排除します。

最適な物体検出のためのコスト行列を利益行列に変換する

ハンガリー損失 (または、より大きな文脈では Kuhn-Munkres 損失として知られています) により、DETR (Detection Transformer) フレームワークで処理されるオブジェクト検出のより正確なアルゴリズムが可能になります。複数の物体が同様の重さやサイズを持つ場合、コンピューター ビジョンに課題が生じることは広く知られています。

この懸念に対処するために、ハンガリー損失では、対応するグラウンド トゥルース オブジェクトと予測を描写する解レベルでの割り当て問題の最適化が必要になります。ここで最も重要なのは、予測の効率的な最適化を可能にするために 2 つの行列を利益行列に変換することです。

コスト行列は、p x p の次元を持つ行列に関係し、「p」で指定される数量は、タスクの実行に割り当てられるリソースの数を表します。私たちの特定の例では、これは予測と、その後のグラウンド トゥルース オブジェクトとの照合に関連します。この状況でのコストが高いということは、一致の品質が低いことを示唆しています。 DETR の目的では、画像指定の予測ボックスとグラウンド トゥルース間のペアワイズ マッチング コストを使用してコスト マトリックスが計算されます。

ハンガリー損失アルゴリズムは当初、利益を最大化することを目的として割り当て問題に対処するために開発されました。したがって、コストマトリックスを利益マトリックスに変換する必要があります。この変換プロセスには、コスト マトリックスの各要素をその最大値から減算することが含まれます。数学用語では、この変換は次のように表現できます。

_P\_ij = max(C) - C\_ij_

ここで、P_ij は利益行列の要素を表し、C_ij はコスト行列の要素、max© はコストの最大値を表します。マトリックス。以下にプロセスを要約します。

この変革の背後にある原動力は、ハンガリーのアルゴリズムの利益の最大化 (つまり、私たちの例ではコストの削減) の追求と同期したいという願望です。利益マトリックスを実装することにより、予測とグラウンド トゥルースの間の各割り当ての「収益性」を正確に測定して評価することができ、予測パフォーマンスを向上させることができます。上記のフローチャートに実際の例を追加してみましょう。

この変換により、利益行列への変換によりモデルが各割り当ての意味をより深く理解できるようになるため、アルゴリズムのグラウンド トゥルース オブジェクトへの予測を最適化する能力が強化されます。このようにして、ハンガリーのアルゴリズムは、予測とグラウンド トゥルースを相関させる際に、より適切な決定を下すことができるため、検出精度が向上します。

ユースケース: DETR を使用した電子商取引画像検索の最適化

e コマース プラットフォームでは、ユーザー エクスペリエンスを最適化するために、製品画像内のオブジェクトを正確に検出することが最も重要です。このようなプラットフォームで効率的なリソース割り当てとコスト管理を確保するには、コスト マトリックスを利益マトリックスに変換することが重要です。以下の図は、これらの技術を使用して電子商取引内の画像検索機能を強化する実際の実装上の利点を示すことを目的としています。

フェーズ 1: コスト マトリクスの構築

最初のステップでは、コスト行列が生成されます。ここで、各エントリ (Cij) は、i 番目のインデックスの予測オブジェクトを j 番目のグランド トゥルースの予測オブジェクトに関連付けるために発生するコストを表します。このコストの計算には、次のようなさまざまな要素が含まれます。

  • 距離コスト: 正式で専門的なアプローチを利用した、予測された境界ボックスと対応するグラウンド トゥルース境界ボックスを分離するユークリッド距離に基づいて計算されます。
  • 形状コスト: 予測された境界ボックスと実際に検出された境界ボックスの間のアスペクト比または面積の不一致。
  • クラス コスト: 識別されたオブジェクト クラスに関連付けられた分類の精度または信頼スコア。

フェーズ 2: コストと利益のマトリクスの変換

コスト行列を利益行列に変換するには、コスト値の反転を実行する必要があります。これは、_Pij=M−Cij_ で示される変換関数によって実現できます。M は、すべての利益値が正であることを保証する適切に大きな定数を表します。この式を適用すると、関連コストの最小化を優先する条件下での利益の最大化と一致する、目的の利益行列 P が得られます。

フェーズ 3: Kuhn-Munkres (ハンガリー語) アルゴリズムの適用

利益行列 P を使用して、Kuhn-Munkres アルゴリズムを使用して、予測されたエンティティとグランド トゥルース間の最適な一致を識別します。この重要な段階では、割り当て全体が総利益を最大化することが保証されます。

フェーズ 4: DETR とトレーニングの統合

  • データ アノテーション: 正確な境界ボックスと明確に定義されたクラス ラベルを使用して、さまざまな製品画像のコレクションにアノテーションを付けることで、包括的なグラウンド トゥルース データセットを生成します。
  • モデルの初期化: 初期化プロセスには、利益対コスト削減メカニズムを DETR モデルの損失関数に組み込むことが含まれます。これには、トレーニング パイプライン内でマッチング プロセスを実装することにより、マッチング損失を効率的に計算する必要があります。
  • トレーニング: 利益変換マッチングロスを利用して DETR モデルのトレーニングを実施します。これにより、運用の収益性マトリクスを最大化する中で、熟練度を高めた境界ボックスとクラスを決定する最適なアプローチが確実に実行されます。これにより、物体検出機能が向上します。

フェーズ 5: 導入とユーザー エクスペリエンスの強化

トレーニングが完了すると、モデルは電子商取引プラットフォームにデプロイされます。ユーザーが画像検索リクエストを行うたびに、パイプラインは次のように処理されます。

  • オブジェクト検出: DETR モデルのオブジェクト検出機能は、オブジェクト認識技術を適用して、特定のクエリ画像内に存在するオブジェクトを識別し、輪郭を描きます。対応するクラス ラベルと画像内の幾何学的位置を指定する境界ボックスを提供することで、検出された各オブジェクトを正確に識別します。
  • 製品マッチング: プラットフォームは、製品マッチングに最適なオブジェクト検出メカニズムを使用しており、検出されたオブジェクトは在庫データと相互参照され、関連する製品が取得されます。
  • 結果の表示: 検索アルゴリズムは、対応する製品をユーザーに正確に表示し、結果の関連性を高め、全体的な満足度を高めます。

結論

ハンガリーのアルゴリズムは、類似性スコアに基づいて全体的に最良の一致セットを割り出す最適化部分です。これは 2 部グラフを取得し、2 つの側の間で一致する理想的な構成を見つけます。これは、DETR を実際に機能させ、適切な視覚領域を適切なテキスト クエリに一致させるために重要です。

二部マッチングは、DETR に言語と視覚を結び付けるための健全な数学的フレームワークを提供し、ハンガリーのアルゴリズムはそのフレームワーク内で最適なマッチングを見つけます。この 2 つの手法により、DETR は最適化された方法でテキストとビジュアルのコンセプトを調整することができます。これらにより、クロスモーダル マッチングが可能になります。

参考文献

ハンガリー語アルゴリズム: 割り当て方法のステップバイステップガイド

代入問題 (ハンガリーのアルゴリズムを使用)

A. R. Gosthipaty および R. Raha.「DETR の内訳パート 2: DEtection TRansformers の紹介」、PyImageSearch、P. Chugh、S. Huot、K. Kidriavsteva、および A. Thanksi、編、2023 年、https://pyimg.co/slx2k