IoU & Dice
IoU
IoU๋ Intersection over Union์ ์ฝ์๋ก ๋ณดํต ๋ ๊ฐ์ง ๋ฌผ์ฒด์ ์์น(Bounding Box)๊ฐ ์ผ๋ง๋ ์ผ์นํ๋์ง๋ฅผ ์ํ์ ์ผ๋ก ๋ํ๋ด๋ ์งํ์ด๋ค. ๊ฐ์ฒด ์ธ์๊ฐ์ ๋ชจ๋ธ์ ์ฌ์ฉํ์ ๋ ์ค์ ๋ฌผ์ฒด์ ์์น์ ์์ธก๋ ๋ฌผ์ฒด์ ์์น๋ฅผ ํ๊ฐ๋ฐฉ๋ฒ์ผ๋ก ์ฌ์ฉํ ์ ์๋ค.
Mask๋ ์ผ์ข
์ region์์ ์๊ฐํ์ ๋ segmentation ๋ฌธ์ ์์๋ ground truth์ prediction region ์ฌ์ด์ IoU๋ฅผ ๊ณ์ฐํ ์ ์๋ค.
predicted segmentation map(= A)๊ณผ ground truth(= B)์ ๊ต์งํฉ(intersection)์ ํฉ์งํฉ(= union)์ผ๋ก ๋๋์ด์ฃผ์ด ๊ตฌํ๋ค.
Dice Score = F1 Score
Dice score๋ IoU์ ๊ฐ์ด ๋ ๊ฐ์ ์์ญ A, B๊ฐ ์ผ๋ง๋ ๊ฒน์ณ์ง๋ ์ง๋ฅผ ๋ํ๋ด๋ ์งํ์ด๋ค.
predicted segmentation map(= A)๊ณผ ground truth(= B)์ ๊ต์งํฉ(= intersection)์ 2๋ฐฐํ ๊ฐ์ ๋ ์์ญ์ ํฉ(A + B)๋ก ๋๋์ด ๊ตฌํ๋ค.
Dice ๊ณต์์ด IoU์ ๋ค๋ฅธ ์ ์ ๋ ์์ญ์ ์กฐํํ๊ท ์ ๊ตฌํ๋ค๋ ๊ฒ์ด๋ค.
์กฐํํ๊ท ์ด๋ ํ๊ท ์ ๊ตฌํ๋ ๊ฐ ์์์ ์ญ์์ ์ฐ์ ํ๊ท ์ ๊ตฌํ๊ณ , ๊ทธ ๊ฐ์ ๋ค์ ์ญ์๋ก ๋ณํํ๋ ๊ฒ์ธ๋ฐ, ํด๋น ์์๊ฐ ์ ์ฒด ๋ฐ์ดํฐ์์ ์ฐจ์งํ๋ ๋น์จ์ ๋ฐ์ํ ํ๊ท ์ ์ทจํ๊ณ ์ถ์ ๋ ์ฌ์ฉํ๋ค.
์กฐํํ๊ท ์ ๊ตฌํ ๋ ์ด๋ค ๊ฐ์ด ์ ๋ํ ์๊ฑฐ๋ ํฌ๋๋ผ๋ ์ ์ฒด์ ์ธ ํ๊ท ๊ฐ์๋ ๋น๊ต์ ์ ์ ์ํฅ์ ๋ฏธ์น๋ค.
iou ๋ฉํธ๋ฆญ์ f1 score ๋ณด๋ค ๋์ ๋ถ๋ฅ์ ๋จ์ผ ์ธ์คํด์ค๊ฐ ๋์๋ค๋ ๊ฒฝ์ฐ์๋ ์ ๋์ ์ผ๋ก ์ฒ๋ฒํ๋ ๊ฒฝํฅ์ด ์๋ค. L2๊ฐ L1๋ณด๋ค ๋ ํฐ ์ค์๋ฅผ ์ฒ๋ฒํ ์ ์๋ ๋ฐฉ๋ฒ๊ณผ ์ ์ฌํ๊ฒ, Iou๋ F1 score์ ์๋์ ์ธ ์ค๋ฅ์ โ์ ๊ณฑโ์ํฅ์ ๋ฏธ์น๋ ๊ฒฝํฅ์ด ์๋ค.
๋ฐ๋ผ์ F1 score๋ ํ๊ท ์ฑ๋ฅ์ ๊ฐ๊น์ด ๊ฒ์ ์ธก์ ํ๋ ๊ฒฝํฅ์ด ์๊ณ Iou๋ ์ต์
์ ๊ฒฝ์ฐ์ ๊ฐ์ ๊ฐ๊น์ด๊ฒ์ ์ธก์ ํ๋ค.
์๋ฅผ๋ค๋ฉด ๋๋ถ๋ถ์ ์ถ๋ก ์ด B๋ณด๋ค A๊ฐ ๋ ์ข๋ค๊ณ ํ์ง๋ง ๊ทธ๋ค ์ค ์ผ๋ถ๋ A๋ถ๋ฅ๊ธฐ๋ฅผ ์ฌ์ฉํ๋ฉด ๋ ์์ข๋ค๊ณ ํ๋ค. F1 score๋ A๋ฅผ ๋งํ๊ณ Iou ๋ฉํธ๋ฆญ์ B๋ฅผ ์ ํธํ๋ ๊ฒฝ์ฐ๊ฐ ์์ ์ ์๋ค.
mAP(Mean Average Precision)
mAP๋ Fast R-CNN, YOLO, Mask R-CNN ๋ฑ ์ฌ๋ฌ object detection ๋ชจ๋ธ๋ค์ ํ๊ฐ ์งํ๋ก์จ ํ์ฉ๋๋ค.
mAP๋ precision, recall ๊ณผ ์ด๊ฒ์ ๊ณ์ฐํ AP(Average precision)๋ค์ ํ๊ท ๊ฐ์ด๋ฉฐ, 0~1 ์ฌ์ด์ ๊ฐ์ ๋ํด ๊ณ์ฐ๋๋ค.
mAP๋ฅผ ์ดํดํ๊ธฐ ์ํด์๋ Confusion Matrix, Precision, Recall, IoU์ ๋ํด ์์์ผ ํ๋ค.
Confusion Matrix (ํผ๋ ํ๋ ฌ)
โข
True Positive (TP) : ์ณ์ ๊ฒ์ถ
โข
True Negative (TN) : ๊ฒ์ถ๋์ง ๋ง์์ผํ ๊ฒ์ด ๊ฒ์ถ๋์ง ์์
โข
False Positive (FP) : ํ๋ฆฐ ๊ฒ์ถ (Type 1 Error)
โข
False Negative (FN) : ๊ฒ์ถ๋์ด์ผ ํ ๊ฒ์ด ๊ฒ์ถ๋์ง ์์ (Type 2 Error)
Precision(์ ๋ฐ๋)์ Recall(์ฌํ์จ)
Precision์ ์ ๋ฐ๋๋ฅผ ์๋ฏธํ๋ฉฐ, ๋ชจ๋ ๊ฒ์ถ ๊ฒฐ๊ณผ ์ค ์ณ๊ฒ ๊ฒ์ถํ ๋น์จ์ ์๋ฏธํ๋ค.
ex) ์๊ณ ๋ฆฌ์ฆ์ด 5๊ฐ๋ฅผ ๊ฒ์ถํด๋๋๋ฐ(์ค์ ๋ช ๊ฐ์ ๋ฌผ์ฒด๊ฐ ๊ฒ์ถ๋์ด์ผ ํ๋์ง์ ์๊ด์์ด) ๊ทธ ์ค 4๊ฐ๊ฐ ์ณ๊ฒ ๊ฒ์ถํด๋ธ ๊ฒ์ด๋ผ๋ฉด Precision์ 4/5 = 0.8์ด๋ค.
Recall์ ์ฌํ์จ์ ์๋ฏธํ๋ฉฐ, ๋ง๋
ํ ๊ฒ์ถ๋์ด์ผํ๋ ๋ฌผ์ฒด๋ค ์ค์์ ์ ๋๋ก ๊ฒ์ถํ ๋น์จ์ ์๋ฏธํ๋ค.
(๊ฒ์ถ์จ์ด๋ผ๊ณ ๋ ํ๋ค.)
ex) ๋ผ๋ฒจ์ด ๋ถ์ด์๋ ๋ฌผ์ฒด(์ฆ, ๋ง๋
ํ ๊ฒ์ถ๋์ด์ผ ํ ๋ฌผ์ฒด)๊ฐ 10๊ฐ์ธ๋ฐ ๊ทธ ์ค 4๊ฐ๊ฐ ์ณ๊ฒ ๊ฒ์ถ๋์๋ค๋ฉด recall์ 4/10 = 0.4๊ฐ ๋๋ค.
Precision๊ณผ Recall์ ํญ์ 0๊ณผ 1์ฌ์ด์ ๊ฐ์ผ๋ก ๋์ค๊ฒ ๋๋๋ฐ, ์ ํ๋์ ๊ฒ์ถ์จ์ ์๋ก ๋ฐ๋น๋ก ๊ด๊ณ๋ฅผ ๊ฐ์ง๋ค. ์ ํ๋๊ฐ ๋์ผ๋ฉด ๊ฒ์ถ์จ์ ๋ฎ์์ง๊ณ , ์ ํ๋๊ฐ ๋ฎ์์ง๋ฉด ๊ฒ์ถ์จ์ ์ฌ๋ผ๊ฐ๋ค. ๋ฐ๋ผ์ ์ ํ๋์ ๊ฒ์ถ์จ์ ์ฑ๋ฅ ๋ณํ ์ ์ฒด๋ฅผ ํ์ธํด์ผ ํ๋ค.
๊ทธ๋ ๋ค๋ฉด ๋ฌผ์ฒด๋ฅผ ๊ฒ์ถํ์ ๋ ์ณ๊ฒ ๊ฒ์ถ๋์๋ค์ ์ณ๊ฒ ๊ฒ์ถ๋์ง ์์๋ค๋ฅผ ๊ตฌ๋ถํด์ฃผ๋ ๊ธฐ์ค, ์ฆ TP(์ณ์ ๊ฒ์ถ)์ FP(ํ๋ฆฐ ๊ฒ์ถ)๋ฅผ ๊ฒฐ์ ํด์ฃผ๋ ๊ธฐ์ค์ ๋ฌด์์ผ๊น? ๊ทธ ๊ธฐ์ค์ด ๋ฐ๋ก IoU์ด๋ค.
โ IoU๋ฅผ ํตํด ๋์จ ๊ฐ์ด 0.5๋ณด๋ค ์์ผ๋ฉด FP ๋ผ๊ณ ํ๊ณ ๋์ผ๋ฉด TP๋ผ๊ณ ํ๋ค.
Precision-Recall ๊ณก์
Precision-recall ๊ณก์ (PR ๊ณก์ )์ ๋ฌผ์ฒด๋ฅผ ๊ฒ์ถํ๋ ์๊ณ ๋ฆฌ์ฆ์ ์ฑ๋ฅ์ ํ๊ฐํ๋ ๋ฐฉ๋ฒ์ด๋ค.
Confidence๋ ๋ฒจ์ ๋ํ thresold๊ฐ์ ๋ณํ์ ๋ฐ๋ผ precision๊ณผ recall๊ฐ๋ค๋ ๋ฌ๋ผ์ง๋ค. Confidence๋ ๊ฒ์ถํ ๊ฒ์ ๋ํด ์๊ณ ๋ฆฌ์ฆ์ด ์ผ๋ง๋ ์ ํํ๋ค๊ณ ์๊ฐํ๋์ง ์๋ ค์ฃผ๋ ๊ฐ์ด๋ค.
ex) Confidence ๋ ๋ฒจ์ด 0.999๋ผ๋ฉด โ ์๊ณ ๋ฆฌ์ฆ ๆฐ โ๋ด ์๊ฐ์ ์ด ๊ฒ์ถ์ ๊ฑฐ์ 99.9% ์ ํํด.โ
confidence๋ ๋ฒจ์ด ๋๋ค๊ณ ํด์ ๋ฌด์กฐ๊ฑด ์ ํํ ๊ฒ์ ์๋๋ค. ์๊ณ ๋ฆฌ์ฆ ์ค์ค๋ก ๊ทธ๋ฐ ๋๋ ํน์ ํ์ ์ ๊ฐ์ง๊ณ ์๋ ๊ฒ์ด๋ค. ๋ฐ๋ผ์ ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉ์๋ ๋ณดํต confidence ๋ ๋ฒจ์ ๋ํด threshold ๊ฐ์ ๋ถ์ฌํ๋ค. threshold๊ฐ์ด 0.4๋ผ๋ฉด confidence๋ ๋ฒจ๋ก 0.1, 0.2, 0.3์ ๊ฐ๋ ๊ฒ์ถ์ ๋ฌด์ํ๋ ๊ฒ์ด๋ค.
threshold๋ฅผ 10%๋ฏธ๋ง ์ง์ ํ๊ณ 15๊ฐ์ ๋ฒํธํ ์ด๋ฏธ์ง์์ ์ด 10๊ฐ์ ์ด๋ฏธ์ง๊ฐ ๊ฒ์ถ๋์๋ค๊ณ ๊ฐ์ ํ๋ค์ ๊ทธ ๊ฒฐ๊ณผ๊ฐ์ Confidences์ ๋ํด ๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ ฌํ๋ค๋ฉด ์๋์ ํ์ ๊ฐ์ด ์ ๋ ฌ๋ ๊ฒ์ด๋ค. ๋ง์ฝ threshold๋ฅผ 90%์ผ๋ก ์ค์ ํ์์ผ๋ฉด ๋งจ์์ ๊ฐ์ธ 95%๋ง ๊ฒ์ถ๋ ๊ฒ์ผ๋ก ๋ณด์์ precision์ 1์ด๊ณ recall์ 0.067์ด ๋ ๊ฒ์ด๋ค.
์์ ์ค๋ช
ํ๋๊ฒ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก precision์ TP / TP+FP์ด๊ณ recall์ TP / TP+FN์ด๋ค.
์์ ๊ฒฐ๊ณผ๋ฅผ ๊ทธ๋ํ๋ก ๋ํ๋ธ ๊ฒ์ด ๋ฐ๋ก PR๊ณก์ ์ด๋ค. X์ถ์ recall(์ฌํ์จ)์ ์๋ฏธํ๊ณ Y์ถ์ precision(์ ํ๋)์ ์๋ฏธํ๋ค.
Average Precision(AP)
Precision-Recall ๊ทธ๋ํ๋ ์ฑ๋ฅ์ ์ ๋ฐ์ ์ผ๋ก ํ์
ํ๊ธฐ์๋ ์ข์ผ๋ ์๋ก ๋ค๋ฅธ ๋ ์๊ณ ๋ฆฌ์ฆ์ ์ฑ๋ฅ์ ์ ๋์ ์ผ๋ก ๋น๊ตํ๊ธฐ์๋ ์ด๋ ค์ด ์ ์ด ์๋ค. ๊ทธ๋์ ๋์จ ๊ฒ์ด AP์ด๋ค. AP๋ ์ธ์ ์๊ณ ๋ฆฌ์ฆ์ ์ฑ๋ฅ์ ํ๋์ ๊ฐ์ผ๋ก ํํํ ๊ฒ์ด๋ค. ์ด ๊ฐ์ด ๋์ผ๋ฉด ์ฑ๋ฅ์ด ์ข์๊ฒ์ด๋ค.
๊ณ์ฐ์ ์๋ pr๊ทธ๋ํ๊ฐ ๊ทธ๋ ค์ง ํ๋์ ์ ๋ค์ ๋นจ๊ฐ์ ์ ๋ค์ฒ๋ผ ๋จ์กฐ์ ์ผ๋ก ๊ฐ์ํ๋ ๊ทธ๋ํ๋ก ๋ณ๊ฒฝํด์ค๋ค. ์๋ฅผ ๋ค์ด recall์ด 0.33์ผ๋ 1ํ๊ณ 0.83์ ๊ฐ์ ๊ฐ์ง๊ณ ์๋๋ฐ ๊ทธ๋ค์ recall์ ๊ฐ์ด 0.4์ผ๋ 0.86์ ๊ฐ์ ๊ฐ์ง๋ค. ์ด๋ฌํ ๊ฒฝ์ฐ์ recall์ด 0.33์ผ๋์ ๊ฐ์ธ 0.83์ 0.86์ผ๋ก ๋ฐ๊พผ ํ AP๊ทธ๋ํ๋ฅผ ๋ง๋ ๋ค. AP๊ทธ๋ํ๊ฐ ๋ค ๊ทธ๋ ค์ ์ผ๋ฉด ์ด์ ๊ทธ๋ํ ์๋ซ๋ฉด์ ์ ์๋ ์ฌ๊ฒฉํ๋ค์ ๊ฐ์ ๊ณ์ฐํด์ค๋ค.
์ ์ ๊ฐ์ ๊ฒฝ์ฐ์๋ 1 * 0.33 + 0.86 * (0.4-0.3)+ 0.77 * (0.46-0.4) = 0.4364๊ฐ ๋๋ค.
๋ง์ฝ ํด๋์ค๊ฐ ์ฌ๋ฌ๊ฐ์ธ ๊ฒฝ์ฐ์๋ ๊ฐ๊ฐ ํด๋์ค๋น AP๋ฅผ ๊ตฌํ ๋ค์์ ๊ตฌํ AP๋ฅผ ๋ค ๋ํ ํ ํด๋์ค์ ๊ฐ์๋ก ๋๋์ด์ค์ผ๋ก์จ ํ๊ฐ๋ฅผํ๋ค. ์ด๊ฒ์ mAP๋ผ ๋ถ๋ฅธ๋ค.
mAP๋ 3d Segmentation์ ์ ํฉํ ์งํ๊ฐ ์๋๋ค. ๊ทธ๋์ mAP๋์ iou๋ค์ ํ๊ท ์งํ์ธ miou๋ฅผ ์ฌ์ฉํ๋ค