YOLOv1 瞑想
質問 1:
BBox 損失とクラス損失を計算するときに、正のサンプルのみが考慮されるのはなぜですか? ネガティブサンプルについてはどうですか?
回答:
BBox 損失とクラス損失の場合、正のサンプルのみが考慮されます。これは、Faster RCNN の RCNN 部分に少し似ています。RPN からは、正のサンプルのみが RCNN 部分の損失の計算に使用されます。
yolov1 は、前景または背景を検出するためのパラメーターの信頼性オブジェクトネスを設定します。このパラメーターは、ポジティブ サンプルとネガティブ サンプルのバランスを取るための鍵となります。
質問 2:
なぜ B (B=2) 個の予測ボックスを使用するのですか?
質問 3:
陽性サンプルと陰性サンプルを決定するにはどうすればよいですか?
Yolov1 では、画像は 7x7 のグリッド セル (グリッドと呼ばれる) に分割されます。グリッド セルには、ポジティブ サンプルとしてマークされるオブジェクト ターゲットの中心のグリッドが含まれており、その逆も同様です。
質問 4: 予測ボックスの IOU と GT ボックスの関係は何ですか?
yolo シリーズでは、bbox とクラスの損失を計算するために正のサンプルのみが使用され、負のサンプルは考慮されません。Pr
(オブジェクト性) 信頼度の目標値は 1/0、または IOU / 0、1、または予測ボックスと GT ボックスの IOU は陽性サンプルを表し、0 は陰性サンプルを表します。ここは著者と同じで、1で十分だと思うのですが、この論文では借用書を使っているため、後から不可解な内容が多くなり、特に頭が痛いです。
リアルタイム物体検出ネットワークを理解する: You Only Look Once (YOLOv1)
IOU を使用したこの記事の分析により、モデル学習をより現実的にすることができます。
予測ボックスと GT ボックスの IOU には 2 つの目的があります:
まず、予測ボックスは 2 つありますが、実際のボックスは 1 つだけであるため、bbox 損失を計算するには 1 つしか選択できません。
信頼度の GT 値として、最大の IOU Second を持つボックスを取得します。
質問 5:
Pr(オブジェクト性) の信頼度を予測にどのように使用しますか?
論文で言及されている Pr(オブジェクト性)=1 は、現在の技術的な観点からは「ポジティブ サンプル」を指します。
まず第一に、YOLO にはオブジェクト性、クラス、bbox という 3 つの予測があることを明確にする必要があります。このうち、物性とは、物体があるかないか、つまり「境界ボックスの信頼度」の二値分類であり、損失関数の「C」に相当し、物体のないラベルは、明らかに 0 であり、オブジェクトのラベルに直接 1 を与えることもでき、現在予測されている bbox と gt の間の IoU をオブジェクトのラベルとして計算することもできます。この IoU はオブジェクト性予測学習のラベルであることに注意してください。 YOLOとは関係ありません。クラスはカテゴリ予測です。陽性サンプルのグリッド セルのみがトレーニングされます (つまり、Pr(objectness)=1 の場所。この Pr(objectness)=1 が陽性サンプルが指摘される場所であることに注意してください) 、それはIoUとは何の関係もありません、そしてYOLO それは重要ではありません、それはラベルにのみ関係しています、なぜならGTボックスの中心点がどのグリッドにあるのか、どのグリッドがポジティブサンプルであるか、つまりPr(objectness )=1)。bboxについても同様です。
テストフェーズでは、YOLO はオブジェクト性予測、クラス予測、および bbox 予測の有無にかかわらず、合計 3 つの予測を出力します。まず各バウンディングボックスのスコアとしてscore=objectness*classを計算します. 論文に書かれているPr(class)*IoUは実際にはこれです. このIoUはオブジェクト性の予測です, なぜなら学習プロセスにおけるオブジェクト性のポジティブサンプルラベルのためですは IoU なので、オブジェクト性は IoU の概念を意味すると考えられますが、本質はオブジェクトが存在するかどうかの予測です。
オブジェクト性はトレーニング プロセス中に各グリッド セルにオブジェクトがあるかどうかを判断することを学習していることを忘れないでください。その後、オブジェクトがある場所では、オブジェクト性は 1 に非常に近くなり、クラスの正確な予測もオブジェクトが存在しない場合、オブジェクト性は 0 に非常に近くなり、クラスは盲目的に予測します。結局のところ、トレーニング段階ではオブジェクト部分のクラス損失を計算するだけですが、明らかにオブジェクト性が影響します。主導的な役割。クラスが 1 に非常に近い値を盲目的に予測したとしても、オブジェクト性 ここにはオブジェクトがないことがわかっているため、0 に近い値が与えられ、スコアは 0 に非常に近くなります。
質問 6:
陽性サンプルの c、x、y、w、h をどのように計算するか これは、損失計算と最終予測ボックス (マニュアルのように、そのようなボックスにマークを付けます)
c は、上記のように自信を表します
x、y、w、h を見てみましょう。x
、y はグリッドに対する相対的なオフセットであり、値は (0,1) です。
w、h はグラフ全体に対して正規化されます。予測する場合、w、h がグラフを超える可能性があるため、1 より大きくなる可能性があることに注意してください。
参考
-
Yolo のスライドショーが
18 年ぶりにコードを再現したとき、私はこのスライドショーを見逃しませんでした -
グラフィックYOLO
の作者が「YOLO Slideshow」を組み合わせて分析したもので、2018年には非常に優れた分析資料となった -
YOLO、YOLOv2、そして現在は YOLOv3 によるリアルタイム オブジェクト検出
2018 年に yolov1 と yolov2 を再現したときに、この記事を読みましたが、中国語の分析がないので、記事の図は非常に明確で、アイデアは非常に優れています。続きを読むことをお勧めします。 -
YOLO 入門チュートリアル: YOLOv1(2) - 分析
YOLOv1 の著者は Yolo シリーズの論文を非常によく分析しており、同時にコードの再現と改善も自ら行っており、良い学習教材となっています。yjh0410 著者自身の github アドレス
著者はターゲット検出シリーズに関する記事も書いていますターゲット検出シリーズ -
リアルタイム物体検出ネットワークを理解する: You Only Look Once (YOLOv1)
オリジナルの yolov1 の分析。 -
YOLOシリーズ(v1からv5まで)のこれほど分かりやすいモデル解釈は見たことがないでしょう(前編)
著者はひょうたんの赤ちゃんからスタートし、yoloシリーズの原理を詳細に分析し、手作業でマークを付けていきます。コードです。オリジナルのyoloではないことに注意してください。yoloの原理に基づいて著者が加工し、進化させた記事です。
簡単な記事から複雑な記事まであります。真似しないでください。続きを読んでください。そしてもっと考えてください。