---
title: 【物体検出】YOLOX
tags: 
author: [京都大学人工知能研究会KaiRA](https://convert.docswell.com/user/kyoto-kaira)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/4JQM6Q227P.jpg?width=480
description: 【物体検出】YOLOX by 京都大学人工知能研究会KaiRA
published: December 19, 24
canonical: https://convert.docswell.com/s/kyoto-kaira/ZQR2XN-2024-12-19-214519
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/4JQM6Q227P.jpg)

2024年度後期輪読会 #10 (2024/12/19)
YOLOX
京都大学工学部情報学科 数理工学コース B3
浦辺 晴基
0


# Page. 2

![Page Image](https://bcdn.docswell.com/page/K74V4NLPJ1.jpg)

アジェンダ
◼ YOLOXの概要
◼ アーキテクチャ
◼ YOLOシリーズからの改善点
◼ 他手法との性能比較
1


# Page. 3

![Page Image](https://bcdn.docswell.com/page/LJ1345LX7G.jpg)

アジェンダ
◼ YOLOXの概要
◼ アーキテクチャ
◼ YOLOシリーズからの改善点
◼ 他手法との性能比較
2


# Page. 4

![Page Image](https://bcdn.docswell.com/page/GJWPX5VK72.jpg)

YOLOXの概要
◼ YOLOXとは
YOLOXは、2021年に論文YOLOX: Exceeding YOLO Series in 2021で提案された、
YOLOv3をベースラインにして改善を加えたリアルタイム物体検出モデルである。
実装はhttps://github.com/Megvii-BaseDetection/YOLOXを参照。
◼ YOLOシリーズとYOLOXの相違点
YOLOシリーズ
YOLOX
アンカーベース検出
アンカーフリー検出
Coupled Head
(分類と回帰を同じヘッドで行う)
Decoupled Head
(分類と回帰を異なるヘッドで行う)
ラベル割り当てに柔軟性がない・非効率
SimOTAの導入
標準的なデータ拡張
Mosaic・MixUpの導入（強力なデータ拡張）
3


# Page. 5

![Page Image](https://bcdn.docswell.com/page/4EZK6N4NE3.jpg)

アジェンダ
◼ YOLOXの概要
◼ アーキテクチャ
◼ YOLOシリーズからの改善点
◼ 他手法との性能比較
4


# Page. 6

![Page Image](https://bcdn.docswell.com/page/Y76Q28397V.jpg)

YOLOXのアーキテクチャ
◼ ネットワーク全体
https://qiita.com/ground0state/items/a69662b
c6aa2eb715169 より引用
5


# Page. 7

![Page Image](https://bcdn.docswell.com/page/G75R29LDE4.jpg)

YOLOXのアーキテクチャ
◼ Backbone
https://qiita.com/ground0state/items/a69662b
c6aa2eb715169 より引用
6


# Page. 8

![Page Image](https://bcdn.docswell.com/page/9J2D423MJR.jpg)

YOLOXのアーキテクチャ
◼ Backbone
• Darknet53
• SPP（Spatial Pyramid Pooling）層
入力画像のサイズに関わらず
特徴マップを固定サイズの出力に変換する
7


# Page. 9

![Page Image](https://bcdn.docswell.com/page/DEY2MY1PEM.jpg)

YOLOXのアーキテクチャ
◼ Decoupled Head
クラス分類、バウンディングボックス回帰、IoUスコア予測をそれぞれ個別のHeadで行う。
従来のCoupled Headに比べて収束が早く、効率的に高い精度を出せる。
8


# Page. 10

![Page Image](https://bcdn.docswell.com/page/VJN8WP2M78.jpg)

アジェンダ
◼ YOLOXの概要
◼ アーキテクチャ
◼ YOLOシリーズからの改善点
◼ 他手法との性能比較
9


# Page. 11

![Page Image](https://bcdn.docswell.com/page/YE9KX31WE3.jpg)

YOLOXの改善点
◼ Strong data augmentation
RandomFlip（ランダムな方向に反転）やColorJitter（色調をランダムに変化）などに加え、
MosaicやMixUpといった強力なデータ拡張を適用している。
➢ Mosaic
右図のように、４つの画像を混ぜて
新たなデータセットを作成する。
10


# Page. 12

![Page Image](https://bcdn.docswell.com/page/GE8R2M4RJD.jpg)

YOLOXの改善点
◼ Strong data augmentation
➢ MixUp
下図のように、2つの画像とラベルをある割合で合成して新たなデータセットを作成する。
11


# Page. 13

![Page Image](https://bcdn.docswell.com/page/LELK2362JR.jpg)

YOLOXの改善点
◼ Anchor-free
従来のYOLOシリーズでは、アンカーベース（中心と縦横比があらかじめ定義されたアンカーボッ
クスという矩形に基づいてバウンディングボックスの予測を行う手法）を用いていたが、計算コス
トの増加や、適切なサイズのアンカーボックスが存在しない場合などに課題があった。
https://cvml-expertguide.net/terms/dl/objectdetection/anchor-box/より引用
12


# Page. 14

![Page Image](https://bcdn.docswell.com/page/4JM28D59JW.jpg)

YOLOXの改善点
◼ Anchor-free
一方、YOLOXではアンカーフリーを採用しており、アンカーボックスを用意せずに
特徴マップから直接バウンディングボックスの位置や幅、高さを予測する。
アンカーベース
アンカーフリー
https://zenn.dev/nekoallergy/articles/dladvanced-anchorより引用
13


# Page. 15

![Page Image](https://bcdn.docswell.com/page/PJRM5439E9.jpg)

YOLOXの改善点
◼ Multi positives
従来のラベル割り当てでは、
「正解データ（GT）のバウンディングボックスの中心があるアンカーのみをPositiveとして評価する」
という手法を採用していたが、PositiveとNegativeの数が著しく不均衡になってしまう問題があった。
そこでYOLOXにおけるラベル割り当てでは、
「正解データ（GT）のバウンディングボックスの中心があるアンカーの
近傍3×3アンカーもPositiveとして評価する」
という手法を採用することで、Positiveの数を9倍にし、データ不均衡の問題に対処している。
14


# Page. 16

![Page Image](https://bcdn.docswell.com/page/PEXVK2437X.jpg)

YOLOXの改善点
◼ SimOTA
右下図のように複数の正解ボックスが重なり合っている場合には、
予測したバウンディングボックスに対して、どれを割り当てるべきかが曖昧なアンカーが存在する。
IoUの閾値で割り当てる従来の手法は柔軟性に欠け、問題があった。
そこで、この正解ボックスと予測ボックスの割り当てを最適輸送問題として捉え、
Sinkhorn-Knoppアルゴリズムによって解く
OTA（Optimal Transport Assignment）
という手法が提案された。
15


# Page. 17

![Page Image](https://bcdn.docswell.com/page/3EKQ5MZNED.jpg)

YOLOXの改善点
◼ SimOTA
➢ 最適輸送問題
𝑚人の供給者と𝑛人の需要者がいると仮定する。
供給者𝑖は𝑠𝑖 個の荷物を保有し、
需要者𝑗は𝑑𝑗 個の荷物を必要としているとする。
また、供給者𝑖から需要者𝑗への
各荷物の輸送コストを𝑐𝑖𝑗 とする。
最小の輸送コストで供給者からのすべての荷物を需要者へと輸送できる
最適輸送計画 𝜋 ∗ = 𝜋𝑖𝑗 𝑖 = 1, 2, ⋯ , 𝑚, 𝑗 = 1 , 2, ⋯ , 𝑛}を求める線形計画問題。
16


# Page. 18

![Page Image](https://bcdn.docswell.com/page/L73PKYDZE5.jpg)

YOLOXの改善点
◼ SimOTA
OTAでは正解ボックスと予測ボックスの割り当てを最適輸送問題として捉え、
供給者：𝑘個のPositiveラベルを保持する正解ボックス ＆ 𝑛 − 𝑚 × 𝑘個のNegativeラベルを保持する背景
需要者：1個のPositiveラベルを必要とする予測ボックス
と考えるので、右のように決まる。
また、正解ボックス𝐺𝑖 から予測ボックス𝑃𝑗 への輸送コストは以下のように定義される。
17


# Page. 19

![Page Image](https://bcdn.docswell.com/page/87DL35P4EG.jpg)

YOLOXの改善点
◼ SimOTA
➢ Sinkhorn-Knoppアルゴリズム
最適輸送問題は線形計画問題のため、単体法や内点法により厳密解を得ることは可能であるが、
計算コストの問題がある。そのためOTAでは、近似解を高速に得るためのアルゴリズムとして
Sinkhorn-Knoppアルゴリズムを採用している。
本アルゴリズムでは右のように
最適輸送問題の目的関数に
エントロピー正則化項を加えた凸関数を
目的関数とする緩和問題を考える。
18


# Page. 20

![Page Image](https://bcdn.docswell.com/page/VJP24GNVJ8.jpg)

YOLOXの改善点
◼ SimOTA
➢ Sinkhorn-Knoppアルゴリズム
ラグランジュの未定乗数法により、
緩和問題の目的関数は以下の非制約目標に変換される：
最適輸送計画は以下のように得られる：
19


# Page. 21

![Page Image](https://bcdn.docswell.com/page/2EVDX6KREQ.jpg)

YOLOXの改善点
◼ SimOTA
20


# Page. 22

![Page Image](https://bcdn.docswell.com/page/57GYVNQ67L.jpg)

YOLOXの改善点
◼ SimOTA
OTAは高性能な割り当て戦略だが、計算量や学習時間の増大につながるため、
YOLOXではOTAを簡略化したSimOTA（Simple Optimal Transport Assignment）を採用している。
SimOTAは正解ボックスが保持するPositiveラベルの数𝑘の適切な値を動的に決定するDynamic K戦略が
特徴であり、正解ボックス𝐺𝑖 と各予測ボックスのIoUに基づいた以下の式で𝑘が動的に決定される。
予測ボックスに複数の正解ボックスが割り当てられた場合は、
複雑な計算をせずにコストが最小の正解ボックスを割り当てて修正する。
Sinkhorn-Knoppアルゴリズムを用いていないため、効率的になっている。
21


# Page. 23

![Page Image](https://bcdn.docswell.com/page/4EQM6QK2JP.jpg)

アジェンダ
◼ YOLOXの概要
◼ アーキテクチャ
◼ YOLOシリーズからの改善点
◼ 他手法との性能比較
22


# Page. 24

![Page Image](https://bcdn.docswell.com/page/KJ4V4NPPE1.jpg)

性能評価
精度と推論速度のトレードオフ
精度とモデルサイズのトレードオフ
23


# Page. 25

![Page Image](https://bcdn.docswell.com/page/LE13459XJG.jpg)

性能評価
IoUの閾値
物体のサイズ
24


# Page. 26

![Page Image](https://bcdn.docswell.com/page/GEWPX5QKJ2.jpg)

まとめ
物体検出モデルの一種であるYOLOXについて解説した。
YOLOX
とは
アーキ
テクチャ
改善点
◼ YOLOv3をベースラインにして改善を加えたリアルタイム物体検出モデル
◼ 精度と推論速度・精度とモデルサイズのトレードオフにおいて優れている
◼ BackboneにDarkNet53とSPP層を採用
◼ 分類、回帰、スコア予測をそれぞれ個別のHeadで行うDecoupled Head
◼ 強力なデータ拡張(Mosaic＆MixUp)
◼ アンカーフリー
◼ Multi positivesとSimOTAによるラベル割り当て
25


# Page. 27

![Page Image](https://bcdn.docswell.com/page/47ZK6NWN73.jpg)

参考文献
1. YOLOX: Exceeding YOLO Series in 2021. ( https://arxiv.org/abs/2107.08430 ）
2. YOLOv3: An Incremental Improvement. ( https://arxiv.org/abs/1804.02767 )
3. YOLOv4: Optimal Speed and Accuracy of Object Detection. ( https://arxiv.org/abs/2004.10934 )
4. Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition.
( https://arxiv.org/abs/1406.4729 )
5. Bag of Freebies for Training Object Detection Neural Networks.
( https://arxiv.org/abs/1902.04103 )
6. OTA: Optimal Transport Assignment for Object Detection. ( https://arxiv.org/abs/2103.14259 )
7. YOLOXのアーキテクチャ. Qiita. ( https://qiita.com/ground0state/items/a69662bc6aa2eb715169 )
8. 実装から見るYOLOX：2021年のYOLOシリーズを超えて. Qiita.
( https://qiita.com/koshian2/items/af032cb102f48e789e66 )
26


# Page. 28

![Page Image](https://bcdn.docswell.com/page/YJ6Q28G9JV.jpg)

参考文献
9. 【論文5分まとめ】Yolox: Exceeding yolo series in 2021. Zenn.
( https://zenn.dev/takoroy/articles/e1e401b865f6c1 )
10.【論文5分まとめ】Ota: Optimal transport assignment for object detection. Zenn.
( https://zenn.dev/takoroy/articles/dd511b8f8710f3 )
11. 最新のリアルタイム物体検出モデルYOLOXの紹介. 株式会社アイビス.
( https://www.ibis.ne.jp/blog/1992-2/ )
12.【CVPR2021】物体検出のラベルアサインメントを最適化するOTAを紹介！. DeepSquare Media.
( https://deepsquare.jp/2021/08/ota-object-detection/ )
13.【物体検出】アンカーボックスって？（アンカーベースとアンカーフリー）【図解】. Zenn.
( https://zenn.dev/nekoallergy/articles/dl-advanced-anchor )
14. アンカーボックス (Anchor Box) [物体検出]. CVMLエキスパートガイド. (https://cvmlexpertguide.net/terms/dl/object-detection/anchor-box/ )
27


