YOLOv2: YOLO9000: より良く、より速く、より強力に

1. 論文の紹介

論文のタイトル: YOLO9000: より良く、より速く、より強く

論文アドレス: YOLOv2

論文の著者: ジョセフ・レドモン、アリ・ファルハディ

Paper Time: 2017 CVPR 最優秀論文ノミネート

この論文は主に、「Better」、「Faster」、「Stronger」の 3 つの部分に分かれています。「Better and Faster」では主に YOLOv2 の改良点について説明し、「Stronger」では主に YOLO9000 について説明します。

2. より良い部分

著者は、YOLOv1 には測位エラーが多く、再現率が比較的低いことを指摘しました。そのため、著者は分類精度を確保しながら再現率を向上させ、測位エラーを減らすことに主に焦点を当てています。

YOLOv2の改良点を以下に示します。

(1) バッチ正規化

BN 層は、YOLOv2 の各畳み込み層の後に導入されます。BN 層には、ネットワークの収束を高速化しながら一定の正則化効果があるため、作成者はドロップアウト層を削除しました。BN 層を追加すると、mAP が 2% 以上増加します

(2) 高解像度分類器

YOLOv1 は、分類ネットワークのトレーニング時に 224x224 の入力画像サイズを使用し (一般的な事前トレーニング済み分類ネットワークは ImageNet データセットでトレーニングされます)、検出ネットワークのトレーニング時に 448x448 の入力画像サイズを使用します。これにより、次の問題が発生します。検出ネットワークは最初に画像解像度の変化に適応する必要があります。

YOLOv2 では、まず 224x224 の入力ピクチャを使用して分類ネットワークをトレーニングし、約 160 エポック後に入力ピクチャのサイズを 448x448 に調整し、次に 10 エポックをトレーニングします。これにより、ネットワークがより適切に適応できるようにパラメータをある程度調整できます。解像度を入力し、最後に検出ネットワークを微調整します (YOLOv2 では検出ネットワークの入力が 448x448 画像であることは後述します)。このトリックにより、mAP が 4% 近く増加しました

(3) アンカーボックスを使用した畳み込み

YOLOv1 では、最後の全結合層が Bbox の座標値を直接予測します。Faster R-CNN では、アンカー ボックスに対する Bbox の偏差は畳み込み層によって予測されます。Faster R-CNN のこのアプローチにより、問題が単純になり、ネットワークの学習が容易になります。

YOLOv2 は Faster R-CNN のアイデアを活用し、アンカー ボックスを導入します。作成者は、特徴マップの解像度を高めるために、元のネットワークの最後のプーリング層を削除しました。さらに、作成者は入力画像のサイズを 414x416 (元は 448x448) に縮小しました。これは、作成者が特徴マップの高さと幅が奇数であることを望んでおり、中心 (中央のセル) が存在できるようにするためです。 )、なぜなら、大きなターゲットの場合、言い換えると、ターゲットの中心が画像の中心に収まる傾向があり、特徴マップの高さと幅が奇数であるため、複数のセルでターゲットを予測する必要がなく、1 つのセルでターゲットを予測できます。 。YOLOv1 ネットワークのダウンサンプリング レートは 32 で、416x416 入力の場合、最終的には 13x13 の特徴マップで予測されます。
YOLOv1 では入力画像を 7x7 のグリッドに分割し、各グリッドで 2 つのバウンディング ボックスを予測するため、合計 98 個のバウンディング ボックスを予測しますが、YOLOv2 ではアンカー ボックスを導入することで 1,000 以上のバウンディング ボックスを予測できます。たとえば、特徴マップのサイズが 13x13 で、各グリッド セルが 9 つのアンカー ボックスを生成すると、13x13x9=1521 個の境界ボックスが予測できます。ただし、最終的には各グリッド セルが 5 つのアンカー ボックスを生成することがさらにわかります。(Faster RCNN では、入力サイズが 1000*600 の場合、バウンディング ボックスの数は約 6000 個、SSD300 ではバウンディング ボックスの数は 8732 個になります。バウンディング ボックスの数を増やすことは、ターゲットの位置精度を向上させることです。 。)

アンカーボックスなしのモデルの mAP は 69.5%、再現率 81% でしたが、アンカーボックス導入後のモデルの mAP は 69.2%、再現率 88% でした。mAP はわずかに低くなりますが、再現率の増加は、モデルに改善の余地があることを意味します。

(4) ディメンションクラスター

Faster R-CNN または SSD では、アンカー ボックスのサイズと比率はエンジニアリングの経験に基づいて設定され、アンカー ボックスのサイズはトレーニング中に継続的に調整されます。著者は、最初により適切な事前確率 (アンカー ボックス) を使用できれば、ネットワークもより適切な予測を行うことができると指摘しました。そこで著者は、K 平均法アルゴリズムを使用してトレーニング セット内の境界ボックス (GT ボックス) をクラスター化し、より適切な事前分布を見つけます。

K 平均法アルゴリズムを使用する場合、ユークリッド距離を使用して差を測定すると、大きいボックスは小さいボックスよりも大きな誤差が生じると著者は指摘しました。そして、K 平均法アルゴリズムによって決定された事前確率がより良い IOU をもたらすことを期待しています (最終的な予測結果はターゲットのサイズとは関係ありません)。そのため、著者は K 平均法を使用する際にレコードを計算するために次の式を使用します。アルゴリズム:

著者は一連の実験を行い、さまざまな k 値の下で平均 IOU をプロットし、次の図を得ました。左の図は k 値と IOU の関係を示しており、2 つの曲線は 2 つの異なるデータセットを表しています。k=5 の場合、モデルの複雑さと高い再現率のバランスをより適切に取ることができます。右の図は、2 つの異なるデータセットから選択された 5 つの事前確率を示しており、それらの形状が類似していることがわかります。K 平均法クラスタリング アルゴリズムで得られた事前分布は、人為的に設定されたアンカー ボックスとは大きく異なります。K 平均法クラスタリングで得られた事前分布は、背が高くて痩せていて、太って短くはありません (笑、背が高くて痩せているほうがおそらくハンサムです) 。

さらに、著者は、K 平均法アルゴリズムによってクラスター化された事前と、人為的に指定されたアンカー ボックス (事前は実際にはアンカー ボックスとして理解できますが、論文では事前という言葉が使用されています) との違いを比較しました。著者は、事前分布 (K 平均法アルゴリズムによって取得) とアンカー ボックス (人工的に設計) に最も近いこれらの GT ボックスの平均 IOU 値を計算したところ、5 つの事前分布によってもたらされた平均 IOU は 61、9 個のアンカー ボックスであることがわかりました。 Faster R-CNN では、9) によってもたらされた平均 IOU は 60.9 で、前の 9) によってもたらされた平均 IOU は 67.2 で、こちらの方が優れています。これは、K 平均法アルゴリズムを使用したクラスタリングによって得られる以前の効果が確かに優れていることを意味します。
(5) 直接位置予測

アンカー ボックスの導入後、著者は 2 番目の問題に遭遇しました。つまり、Faster R-CNN のアンカー ボックスに対する回帰予測が直接使用される場合、モデルのトレーニングの初期段階は非常に不安定であり、この不安定性は主に(x,y) の予測。Faster R-CNN では、x と y の値は次の 2 つの式で取得されます (元の論文の式には少し問題があり、ここでは調整されています)。

x=(t_{x}*w_{a})+x_{a}

y = (t_{y}*h_{a})+y_{a}

実際、Faster R-CNN モデルはt_{x}合計t_{y}、つまり予測されたオフセットを予測します。このうち、 、x_{a}すでにアンカーボックスの中心座標、w_{a}h_{a}アンカーボックスの幅と高さ、x、yは中心座標の予測値、 はt_{x}オフセットt_{y}です。

これら 2 つの式によると、t_{x}予測が 1 の場合、アンカー ボックスの中心点はアンカー ボックスの幅の距離だけ右に調整され、予測が -1 の場合、アンカー ボックスの中心点は右に調整されますt_{x}。アンカー ボックス ポイントはアンカー ボックスの幅の距離だけ左に調整されます。

これら 2 つの式はアンカー ボックスの移動距離を制限しないため、調整されたアンカー ボックスはどこにでも表示されます。重みをランダムに初期化する場合、モデルがオフセット予測を比較的安定させるには長い時間がかかります。

したがって、YOLOv2 はアンカー ボックスに基づいてオフセットを予測しませんが、YOLOv1 を利用してグリッド セルを基準とした座標値を予測します。これは、予測値が 0 ~ 1 の間にあることも意味します。次に、ロジスティック (シグモイド) 活性化関数によって、予測値をこの範囲に制限できます。

同様に、特徴マップの各グリッド セルについて、境界ボックスごとに 5 つの値が予測されますt_{x}、t_{y}、t_{w}、t_{h}、t_{o}これらの予測値をもとに、以下の計算式でアンカーボックスの位置とサイズを調整することができます。

b_{x} = \sigma (t_{x})+c_{x}

b_{y}=\sigma (t_{y})+c_{y}

b_{w}=p_{w}e^{t_{w}}

b_{y}=p_{h}e^{t_{h}}

Pr(オブジェクト)\ast IOU(b,オブジェクト)=\sigma(t_{o})

このうち、(c_{x},c_{y})(左上隅の座標と比較して) 現在のグリッド セルの座標を表し、p_{w}、p_{h}(以前の) アンカー ボックスの幅と高さを表します。\sigma(t_{o})つまり、信頼とその価値が借用書です。

詳細を以下の図に示します。青いボックスは調整された境界ボックスです。

位置座標が制限されているため、ネットワークの学習はより安定しています。著者は、K 平均法アルゴリズムを使用して座標を直接予測して事前プラスを取得する方法により、モデルの mAP が 5% 近く増加したと指摘しました。つまり、最初の写真の 74.4 と 69.6 です。

(6) きめ細かい機能

Faster R-CNN と SSD では、異なるサイズのオブジェクトをより適切に検出できるように、異なる予測フィーチャ レイヤーで予測が行われます。YOLOv2 では、作成者はパス スルー レイヤーを追加して、最終的な 13x13 特徴マップに浅い特徴マップからの情報を含めることができました。これは、基礎となる特徴マップには画像のより詳細な情報が含まれており、小さなターゲットの検出がより効果的になるためです。
パススルー層について、著者は元の論文で次のように述べています。パススルー層は、ResNet の ID マッピングと同様に、隣接するフィーチャを空間的な位置ではなく異なるチャネルにスタックすることによって、高解像度のフィーチャと低解像度のフィーチャを連結します。つまり、ResNet は空間位置に要素を追加しますが、パススルー レイヤーはチャネル上の高解像度の特徴マップに要素を蓄積します。詳細を以下の図に示します。左側の特徴マップ上の番号の位置に対応する値が同じチャネルに配置され、最終的に右側の結果が得られます。このような操作の後、特徴マップのサイズは元の半分になり、チャネル数は元の 4 倍になることがわかります。これは元の論文で述べられています。これにより、26 × 26 × 512 の特徴マップが 13 × 13 × 2048 の特徴マップに変わります。つまり、バックボーン ネットワークの 26x26 特徴マップにブランチが追加され、パススルー層の後に 13x13 特徴マップが取得され、13x13 特徴マップと接続されます。

基礎となる情報を融合することにより、モデルの mAP は 1% 増加します。

(7) マルチスケール訓練

YOLOv1 の入力画像サイズは 448x448、YOLOv2 ではアンカーボックスが追加され、入力画像サイズが 416x416 に調整されます。また、YOLOv2 では畳み込み層とプーリング層のみが使用されるため、入力画像のサイズに制限はありません。

モデルの堅牢性を向上させるために、トレーニング プロセス中に、作成者は画像入力サイズを固定せず、10 バッチごとに新しい画像サイズをランダムに選択します。YOLOv2 のスケーリング係数 (ダウンサンプリング レート) は 32 (416x416-->13x13) であるため、入力ネットワークの画像サイズは 32 の倍数、つまり {320,352,...,608} サイズからランダムに選択されます。 。
したがって、同じネットワークは、異なる解像度の画像に対して良好な検出効果をもたらすことができます。YOLOv2 は、より小さい画像の予測を高速化し、非常に正確です。288x288 入力の場合、YOLOv2 は 90FPS に達し、mAP は Fast R-CNN にほぼ追いつきます。したがって、YOLOv2 は、小型 GPU、高フレーム レートのビデオ、およびマルチチャネル ビデオ ストリームを使用するシナリオにより適しています。入力が高解像度画像の場合、YOLOv2のmAPも78.6に達しました。

以下の図は、VOC2007 テスト データ セットでの YOLOv2 のパフォーマンスを示しており、一般に、YOLOv2 の mAP は他の検出ネットワークと比較して非常に優れていることがわかります。マルチスケール トレーニングの方法により、正確さとスピードのバランスが取れています。

3. より速い部分

フォローアップサプリメント

YOLO9000 と呼ばれる理由: yolov2 フレームワークによる Pascal VOC データセットと ImageNet データセットの共同トレーニングにより、最終的に 9000 を超えるターゲットを検出できるようになりました。

4.強度の高い部分

フォローアップサプリメント

おすすめ

転載: blog.csdn.net/m0_55308155/article/details/125626037