3.1.4. 物体検出¶
3.1.4.1. YOLO¶
YOLO (You Only Look Once) は,物体検出を単一の回帰問題として定式化し,end-to-end で最適化可能にした高速な検出モデルである.
3.1.4.1.1. 定式化¶
入力画像を \(S \times S\) のグリッドセルに分割する.各セルについて, \(B\) 個のバウンディングボックスのパラメータ \((x, y, w, h)\) ,その信頼度(confidence score) \(q\) ,および \(N_C\) 個の条件付きクラス確率 \(p(c) = P(c \mid \text{Obj})\) を予測する.出力テンソルのサイズは \(S \times S \times (5B + N_C)\) である( \(N_C = |\mathcal{C}|\) はクラス数).
正解の信頼度(ターゲット) \(q_{ij}\) は以下で定義される.
ここで, \(\mathbb{I}_i^{\text{obj}}\) はセル \(i\) に物体が存在する場合に1,そうでない場合に0となるインジケータ関数であり, \(\text{IoU}_{\text{pred},ij}^{\text{truth}}\) は予測ボックスと正解ボックスの重なり比率(IoU)である.
検出時には,各クラスの予測スコア \(s_{ij}(c)\) を計算し,非最大値抑制(NMS)により重複を除外して最終出力を得る.
YOLOのネットワークは畳み込み層と全結合層で構成される.
3.1.4.1.2. 損失関数¶
学習は,予測値と正解値の2乗誤差の和である損失関数 \(E\) を最小化することで行う.
各項は以下のように定義される.
ここで, \(\hat{}\) は予測値を表す.また, \(\mathbf{r}_i = (x_i, y_i, \sqrt{w_i}, \sqrt{h_i})^\top\) および \(\hat{\mathbf{r}}_{ij} = (\hat{x}_{ij}, \hat{y}_{ij}, \sqrt{\hat{w}_{ij}}, \sqrt{\hat{h}_{ij}})^\top\) はバウンディングボックスの座標パラメータベクトルである. \(\mathbb{I}_{ij}^{\text{obj}}\) はセル \(i\) の \(j\) 番目の予測器が物体の検出を担当(正解とのIoUが最大)する場合に1,そうでない場合に0となり, \(\mathbb{I}_{ij}^{\text{noobj}}\) はその逆を表す. \(\lambda_{\text{bb}}\) と \(\lambda_{\text{noobj}}\) は各項の重要度のバランスを調整するハイパーパラメータである.
3.1.4.2. 物体検出の評価¶
3.1.4.2.1. バウンディングボックスの一致度 (IoU)¶
予測された領域 \(\mathcal{R}_p\) と正解領域 \(\mathcal{R}_g\) の一致度は IoU (Intersection over Union) で測定される.
通常, \(\text{IoU} \ge 0.5\) を満たす予測を真陽性 (TP) と判定する.
3.1.4.2.2. 平均適合率 (AP / mAP)¶
モデルの検出性能は,クラスごとの AP (Average Precision) および全クラスの平均である mAP で評価される.
TP/FPの判定: 予測結果をスコア \(s_{ij}(c)\) の降順にソートし,正解領域との \(\text{IoU} \ge \text{threshold}\) を満たし,かつ未検出の正解に最も近い予測を真陽性 (TP),それ以外を偽陽性 (FP) と判定する.
PR曲線の作成: 上位 \(k\) 個の予測結果における精度 \(P(k)\) と再現率 \(R(k)\) を計算し,PR曲線を描く.
\[P(k) = \frac{TP(k)}{TP(k) + FP(k)}, \quad R(k) = \frac{TP(k)}{N_{\text{gt}}}\]( \(N_{\text{gt}}\) は正解の総数)
APの計算: 精度を単調非増加に補間した \(P_{\text{interp}}(r)\) を用いて,PR曲線の下側面積を算出する.
\[P_{\text{interp}}(r) = \max_{\tilde{r} \ge r} P(\tilde{r}), \quad \text{AP} = \int_{0}^{1} P_{\text{interp}}(r) dr\]mAPの算出: 全クラス数 \(K\) に対する AP の平均値を求める.
\[\text{mAP} = \frac{1}{K} \sum_{k=1}^K \text{AP}_k\]