292 Views
December 05, 24
スライド概要
AI・機械学習を勉強したい学生たちが集まる、京都大学の自主ゼミサークルです。私たちのサークルに興味のある方はX(Twitter)をご覧ください!
2024年度後期輪読会 第8回 [物体検出] アンカーベース1段階型 RetinaNet & EfficientDet 京都大学理学部 1回 ALAWIK Abdourrahman 0
アンカー ◼ 特徴に適応するバウンディングボックス ◼ 標準的な大きさを決めて、その整倍数や約数、アスペクト比を変えたものも用いる ◼ 全ての位置に全てのバリエーションが存在するとして、前景(モノをバウンディングする)か 背景(モノをバウンディングしない)に分類する ◼ モデルはアンカーが前景である確率に加えて、実際のバウンディングボックスからのずれを 表すベクトルも返す ◼ その情報を用いて元の画像におけるバウンディングボックスを計算する 1
参考文献 0. https://www.thinkautonomous.ai/blog/anchor-boxes/ 2
§1 RetinaNet 3
アジェンダ ◼ RetinaNet以前のモデルの課題点 ◼ Focal Loss ◼ RetinaNetの構造 ◼ 学習 ◼ 実験結果 4
アジェンダ ◼ RetinaNet以前のモデルの課題点 ◼ Focal Loss ◼ RetinaNetの構造 ◼ 学習 ◼ 実験結果 5
RetinaNet以前のモデル 2段階は計算量が多く、1段階は精度が低い ◼ 2段階物体検出器 ➢ R-CNN、Fast R-CNN、Faster R-CNN… ➢ バウンディングボックスの「候補」を検出 → クラス分類 ➢ 精度が高いが、計算量が多い ◼ 1段階物体検出器 ➢ YOLO、SSD… ➢ バウンディングボックスとクラス分類を同時に ➢ 計算が速くリアルタイムに向いているが、精度がより低い 6
RetinaNet ◼ 論文タイトル:「Focal Loss for Dense Object Detection」 [1] ◼ 発表日:2018年2月7日 ◼ 著者名:Tsung-Yi Lin, Priya Goyal, Ross Girshick, Kaiming He, Piotr Dollar ◼ 著者の所属:Facebook AI Research (FAIR) 7
アジェンダ ◼ RetinaNet以前のモデルの課題点 ◼ Focal Loss ◼ RetinaNetの構造 ◼ 学習 ◼ 実験結果 8
不均衡なクラス 1段階の精度が2段階に劣る原因は前景・背景クラスにおける不均衡 ◼ 分類されるアンカーのうち、物体を含む前景は本の僅かで、その他は背景 ◼ ほとんどは分類しやすい背景で、学習の早い段階でも精度が良い ◼ 分類しやすい背景の損失は小さいが、不均衡のせいで、最終的には学習を支配してしまう ◼ Lin等はそれが1段階の精度が上がらない原因だと発見した ◼ 本当は分類しにくいものだけに焦点を当てたい 9
交差エントロピー − log 𝑝𝑡 ただし、 𝑝𝑡 は正しいラベルの推論値 10
Focal Loss ◼ − 1 − 𝑝𝑡 γ log 𝑝𝑡 交差エン トロピー ◼ うまく分類できたものの損失を減ら し、分類しにくいものだけに焦点を 当てる ◼ 実用上、−𝛼𝑡 1 − 𝑝𝑡 γ log 𝑝𝑡 のよう に重みを付ける。 ➢ 逆頻度で計算するか、ハイパー パラメータにする ◼ ボックスの個数で正規化 11
アジェンダ ◼ RetinaNet以前のモデルの課題点 ◼ Focal Loss ◼ RetinaNetの構造 ◼ 学習 ◼ 実験結果 12
構造の概要:FPN FPNのみが必要、その他の具体的な構造は自由 Feature Pyramid Network Backbone Skip接続によって、特徴を抽出する 13
構造の概要:Subnets 2つのサブネットをヘッドで用い、層間で共有する A:アンカーの種類の個数 (=9) K:分類クラスの個数 ◼ FPNの層ごとに最後に入れる入れる ➢ パラメータは層間共有する ➢ Class と box subnets の パラメータは孤立 ◼ Classification Subnet:出力が KA チャンネル、アンカーごとの物体の 存在可能性 ◼ Box Regression Subnet:出力が 4A、 ボックスがアンカーからどれぐらいずれているのか 14
具体的なアーキテクチャ Input → Backbone (↓) → Neck (↑) → Head (クラス分類+ボックスのずれ) Quittaより 15
アジェンダ ◼ RetinaNet以前のモデルの課題点 ◼ Focal Loss ◼ RetinaNetの構造 ◼ 学習 ◼ 実験結果 16
RetinaNetの学習 ➢ 手元のデータについてアンカーのラベルを作る ➢ Focal Loss を用いて教師あり機械学習 17
アンカーのラベル ◼ 位置毎にA=9 のアンカーを使用 1 3 ➢ {1: 1, 1: 2, 2: 1} × 0, 2 , 2 2 3 𝐴∩𝐵 )が一番大きいアンカーを: 𝐴∪𝐵 ◼ それぞれのバウンディングボックスについて、IoU( ➢ IoU≧0.5 なら前景アンカー ➢ IoU<0.4 なら背景アンカー ➢ 0.4≦IoU<0.5 なら学習中無視する ◼ アンカーごとに長さ K のベクトル(正しいクラスに1、その他は0)と長さ4のベクトル (バウンディングボックスからのずれ) 18
アジェンダ ◼ RetinaNet以前のモデルの課題点 ◼ Focal Loss ◼ RetinaNetの構造 ◼ 学習 ◼ 実験結果 19
実験結果:時間 vs 精度 20
実験結果:モデルの比較 21
まとめ 1. 前景・背景クラスに不均衡があるため、1段階型は交差エントロピーでは精度が良くない 2. Focal Loss を用いて、分類が難しいものだけに焦点を当てて、不均衡の影響を軽減 3. FPN + class/box heads 4. 1つの class head と1つの box head だけを使う 22
参考文献 1. Lin, T., Goyal, P., Girshick, R. B., He, K., & Dollár, P. (2017). Focal loss for dense object detection. CoRR abs/1708.02002 (2017). arXiv preprint arXiv:1708.02002. 2. Abetan. (2023, August 16). RetinaNetのアーキテクチャ. Quitta. https://qiita.com/ground0state/items/e6ce09e9a42a3894313e 23
§2 EfficientDet 24
アジェンダ ◼ 以前のモデルの課題点 ◼ BiFPN ◼ 構造 ◼ Compound Scaling ◼ 実験結果 25
アジェンダ ◼ 以前のモデルの課題点 ◼ BiFPN ◼ 構造 ◼ Compound Scaling ◼ 実験結果 26
課題点1:特徴の混合 ◼ 特徴ピラミッドを作る際、解像度の異なる特徴を混合する必要(FPN、PANet、NAS-FPN…) ◼ 以前のモデルは計算量・精度のバランスが良くない ◼ 混合の際に全ての特徴を同等に扱う 27
課題点2:スケーリング ◼ 以前のモデルはバックボーンや入力の解像度を大きくしたり、FPN層を増やしたりして精度を 上げる ◼ 特徴ネットワーク? ◼ クラス・ボックス予測のネットワーク? 28
EfficientDet ◼ 論文タイトル:「EfficientDet: Scalable and Efficient Object Detection」 [3] ◼ 発表日:2020年7月27日 ◼ 著者名:Mingxing Tan, Ruoming Pang, Quoc V. Le ◼ 著者の所属:Google Research, Brain Team 29
アジェンダ ◼ 以前のモデルの課題点 ◼ BiFPN ◼ 構造 ◼ Compound Scaling ◼ 実験結果 30
BiFPNの構造 PANetを効率化したネットワーク ◼ 混合のないノードを削除 ◼ 当層の元の特徴を加え続ける(紫色の矢印) ◼ 混合を何回か繰り返し、特徴の抽出をディープに 31
Weighted Feature Fusion 混合する特徴を同等に扱わず、重みづけて足し合わせる ◼ 以前のモデルは解像度をリサイズしてそのまま足す ➢ 全ての特徴を同等に扱う ➢ しかし、解像度が異なる特徴は同等に扱っても良いのか? ◼ Fast Normalized Fusion: 𝑂 = σ𝑖 𝑤𝑖 ∙𝐼 ε+σ𝑗 𝑤𝑗 𝑖 (𝑤𝑖 ≥ 0) ◼ 著者は重みづけの仕方に次の2つも提案 ➢ Unbounded Fusion: 𝑂 = σ𝑖 𝑤𝑖 ∙ 𝐼𝑖 • 𝑤𝑖 はスカラーかテンソル • 非有界なので学習が不安点! ➢ Softmax-based fusion: 𝑂 = σ𝑖 • 計算量が多い! 𝑒 𝑤𝑖 𝑤 ∙𝐼 σ𝑗 𝑒 𝑗 𝑖 32
アジェンダ ◼ 以前のモデルの課題点 ◼ BiFPN ◼ 構造 ◼ Compound Scaling ◼ 実験結果 33
構造 EfficientNet backbone + BiFPN Layer neck + ~RetinaNet head 34
アジェンダ ◼ 以前のモデルの課題点 ◼ BiFPN ◼ 構造 ◼ Compound Scaling ◼ 実験結果 35
Compound Scaling ネットワーク全体を1つのパラメータでスケーリング ◼ 以前の手法では、ネットワーク全体を効率的にスケーリングできない ◼ Compound Scaling:1つのパラメータφでネットワーク全体をスケーリング ➢ EfficientNet backbone network:Tan等[5]と同様にして: ✓ Width:𝑤 = 1.1φ ✓ Depth:𝑑 = 1.2φ ➢ BiFPN network: ✓ Width:𝑊𝑏𝑖𝑓𝑝𝑛 = 64 ∙ 1.35φ ✓ Depth:𝐷𝑏𝑖𝑓𝑝𝑛 = 3 + φ ➢ Box/class prediction network: ✓ Width:𝑊𝑝𝑟𝑒𝑑 = 𝑊𝑏𝑖𝑓𝑝𝑛 ✓ Depth:𝐷𝑤𝑖𝑑𝑡ℎ = 3 + ⌊φ/3⌋ ➢ 入力画像の解像度:𝑅𝑖𝑛𝑝𝑢𝑡 = 512 + φ ∙ 128 36
アジェンダ ◼ 以前のモデルの課題点 ◼ BiFPN ◼ 構造 ◼ Compound Scaling ◼ 実験結果 37
EfficientDetを別のモデルと比較 Dに続く整数はパラメータΦの値 38
Compound Scaling vs 他のスケーリング 39
まとめ 1. EfficientNet backbone + BiFPN Layer neck + RetinaNet head 2. BiFPNを用いて効率よく特徴をディープに混合 3. Fast Normalized Fusion:混合は重み付け平均 4. Compound Scaling:ネットワーク全体を同時にスケーリング 40
参考文献 3. Tan, M., Pang, R., & Le, Q. V. (2020). Efficientdet: Scalable and efficient object detection. In Proceedings of the IEEE/CVF conference on computer vision and pattern recognition (pp. 10781-10790). https://arxiv.org/pdf/1911.09070 4. Takoroy. (2020, March 14). 【論文解説】EfficientDet: Scalable and Efficient Object Detection. Quitta. https://qiita.com/takoroy/items/2850c06e15bb7dfd8e9c 5. Tan, M., & Le, Q. (2019, May). Efficientnet: Rethinking model scaling for convolutional neural networks. In International conference on machine learning (pp. 6105-6114). PMLR. https://arxiv.org/abs/1905.11946 41
42