物体検出における評価指標である IoU(Intersection over Union)について紹介します。
IoU とは
$\mathrm{IoU}=\dfrac{\mathrm{Intersection}}{\mathrm{Union}}$
IoU は Intersection(領域の共通部分) over Union(領域の和集合)の略です。
over は「割り算する」という意味です。
2つの領域が「どれくらい重なっているか」を表す指標です。
IoU は物体検出の評価指標
物体検出とは
「画像」と正解ラベル(どの領域に何があるかという情報)が与えられたとき、それを正しく検出する問題です。機械学習における画像分類の発展的なタスクです。
正解領域および予測領域はいずれも長方形とする、という問題設定が多いです。
正解領域と予測領域の重なりが大きいほど IoU の値は大きくなります。予測領域がズレていたり、正解領域内でも小さすぎたり、正解領域を含んでいても大きすぎると IoU の値は低くなります。
つまり、IoU の値が大きいほど「物体検出がうまくできている」と言えます。
IoU の値
IoU の最大値は1です(正解領域と予測領域が一致している場合)。
IoU の最小値は0です(正解領域と予測領域が全く重なっていない場合)。
IoU は厳しい評価指標
同じ正方形を斜めに $\dfrac{1}{9}$ ズラしただけでも、IoU は $\dfrac{64}{98}\fallingdotseq 0.65$ になります。
$\dfrac{1}{9}$ の斜めズレは、それなりにうまく物体検出できているように見えますが、IoU という評価指標で見ると $0.65$ 程度です。
このように、IoU という評価指標は、けっこう厳しい(ちょっとズレただけで数字が大きく減る)印象があります。
実際、以下のような事例もあります。
・とあるデータ分析コンペでは「IoU が $0.8$ 以上なら正しく検出できたとみなす」というルールを課していました。
・しかし、$0.8$ というしきい値が厳しすぎたため、途中ルール変更が行われました。
次回は AUCとROC曲線の意味と性質を分かりやすく解説 を解説します。