Evaluation Metric - Raidin/deeplearning-research GitHub Wiki

Object Detection Evaluation Metric

  • ์ผ๋ฐ˜์ ์ธ Classification๊ด€์ ์—์„œ๋Š” ์‚ฌ๋ฌผ ๊ฐ์ฒด ์˜ˆ์ธก์˜ ์ •ํ™•๋„(์ •ํ™•ํžˆ ์˜ˆ์ธก๋˜์—ˆ๋Š”์ง€ ์œ ๋ฌด)๋งŒ ํ‰๊ฐ€ํ•˜๋ฉด ๋˜์ง€๋งŒ, Object Detection์˜ ๊ฒฝ์šฐ ์‚ฌ๋ฌผ ๊ฐ์ฒด์˜ ํด๋ž˜์Šค(Class) ๋ฐ ์œ„์น˜(Localization)์— ๋Œ€ํ•œ ์˜ˆ์ธก์„ ๋™์‹œ์— ํ‰๊ฐ€ํ•ด์•ผ ๋จ
  • ์ •ํ™•๋„ ๊ฒŒ์‚ฐ์€ ์ฃผ๋กœ Ground Truth์™€ ํ•™์Šต๋ชจ๋ธ์ด ์˜ˆ์ธกํ•œ ๊ฒฐ๊ณผ(Prediction)์˜ ๋น„๊ต๋ฅผ ํ†ตํ•ด์„œ ์ด๋ฃจ์–ด ์ง€๋Š”๋ฐ, ๋ฐฉ๋ฒ•์œผ๋กœ IOU(Intersection Over Union)์ด๋ผ๋Š” ์ง€ํ‘œ๋ฅผ ํ†ตํ•ด ์ธก์ • ํ•จ.

IOU(Intersection Over Union)

  • 2๊ฐœ์˜ ๊ฒฝ๊ณ„๋ฐ•์Šค(Bounding Box)์˜ ์ค‘์ฒฉ์ •๋„๋ฅผ ํ‰๊ฐ€ํ•˜๋Š” Jaccard Index๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœํ•˜๋Š” ์ธก์ • ๋ฐฉ๋ฒ•
  • ์ธก์ •์„ ์œ„ํ•ด์„œ๋Š” ๊ฒ€์ถœํ•˜๊ณ ์žํ•˜๋Š” ๊ฐ์ฒด ํด๋ž˜์Šค์™€ ์œ„์น˜๋ฅผ ๊ฐ€์ง€๋Š” GT(Ground Truth) bounding box์™€ ํ•™์Šต๋œ Detector๋กœ ๋ถ€ํ„ฐ ๊ฒ€์ถœ๋œ bounding box ์ •๋ณด๊ฐ€ ํ•„์š” ํ•จ.
  • GT์™€ ์ •ํ™•ํ•˜๊ฒŒ ์ผ์น˜ํ•  ๊ฒฝ์šฐ 1์˜ ๊ฐ’์„ ๊ฐ€์ง
  • ์ผ๋ฐ˜์ ์œผ๋กœ IOU๊ฐ€ 0.5๋ฅผ ๋„˜์„ ๊ฒฝ์šฐ ์˜ˆ์ธกํ–ˆ๋‹ค๊ณ  ํŒ๋‹จ ํ•จ IOU

Measure

  • TP(True Positive) : ๊ฒ€์ถœํ•  ๊ฐ์ฒด๋ฅผ ๊ฐ์ฒด๋ผ๊ณ  ์ธ์‹
  • TN(True Negative) : ๊ฒ€์ถœํ•  ๊ฐ์ฒด๋„ ์—†๊ณ , ์ธ์‹๋„ ์•ˆํ•จ
  • FP(False Positive) : ๊ฒ€์ถœํ•  ๊ฐ์ฒด๊ฐ€ ์—†๋Š”๋ฐ ๊ฐ์ฒด๋ผ๊ณ  ์ธ์‹
  • FN(False Negative) : ๊ฒ€์ถœํ•  ๊ฐ์ฒด๊ฐ€ ์žˆ๋Š”๋ฐ, ์ธ์‹์„ ๋ชปํ•œ๊ฒฝ์šฐ

Precision

  • ๊ฒ€์ถœ๋œ ๊ฐ์ฒด ์ค‘ ์‹ค์ œ๋กœ GT์˜ ๊ฐ์ฒด์™€ ์ผ์น˜ํ•˜๋Š” ๊ฒฝ์šฐ(์–ผ๋งˆ๋‚˜ ์ •ํ™•ํ•œ์ง€)

Recall

  • ๋ชจ๋“  ๊ฐ์ฒด ์ค‘ ์‹ค์ œ๋กœ ๊ฒ€์ถœ๋œ ๊ฐ์ฒด์˜ ๋น„์œจ(์–ผ๋งˆ๋‚˜ ์ž˜ ์ฐพ๋Š”์ง€)

Average Precision(AP)

  • AP๋Š” ๊ฐ์ฒด ๊ฒ€์ถœ ๊ฒฐ๊ณผ๋ฅผ ํ‰๊ฐ€ํ•˜๋Š” ์ง€ํ‘œ๋กœ ์‚ฌ์šฉ
  • [0:1]์˜ ๊ฐ’์„ ๊ฐ€์ง€๋Š” recall๊ฐ’์— ๋Œ€์‘ํ•˜๋Š” precision๊ฐ’์œผ๋กœ ๊ทธ๋ž˜ํ”„(precision-recall)๋ฅผ ๊ทธ๋ฆฌ๊ณ  ๋ฉด์ ์„ ๊ณ„์‚ฐ
  • precision-recall ๊ทธ๋ž˜ํ”„๋Š” ์–ด๋–ค ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์„ฑ๋Šฅ์„ ์ „๋ฐ˜์ ์œผ๋กœ ํŒŒ์•…ํ•˜๊ธฐ์—๋Š” ์ข‹์œผ๋‚˜ ์„œ๋กœ๋‹ค๋ฅธ ๋‘ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์„ฑ๋Šฅ์„ ์ •๋Ÿ‰์ ์œผ๋กœ ๋น„๊ตํ•˜๊ธฐ์—๋Š” ๋ถˆํŽธ ํ•จ

Compute Average Precision(AP)

  • 11-point Interpolation
    • [0:1.0] ์‚ฌ์ด๋กœ 11๊ฐœ์˜ recall point๋ฅผ ์ƒ์„ฑ
    • ๋Œ€์‘ ํ•˜๋Š” precision๊ฐ’์€ ๊ธฐ์กด graph๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๊ฐ recall๋ณด๋‹ค ํฐ recall๊ฐ’ ๋“ค์ด ๊ฐ€์ง€๋Š” ์ตœ๋Œ€ ๊ฐ’์œผ๋กœ ๋Œ€์ฒด ํ•จ
    • ๊ทผ์‚ฌ ๊ฐ’์„ ๊ณ„์‚ฐํ•˜๋ฏ€๋กœ ์ •ํ™•ํ•˜์ง€ ์•Š์Œ
  • Every Point Interpolation(AUC, Area Under Curve)
    • ์ตœ๋Œ€ precision๊ฐ’์ด ๋ณ€๊ฒฝ๋ ๋•Œ ๋งˆ๋‹ค ํ•ด๋‹น ํ•˜๋Š” recall๊ฐ’๋“ค์— ๋Œ€ํ•ด์„œ ์ƒ˜ํ”Œ๋ง ํ•˜๋Š” ๋ฐฉ๋ฒ•
    • ์ž„์˜๋กœ 11๊ฐœ point๋ฅผ ๋‚˜๋ˆ„์ง€ ์•Š๊ณ , ์ธก์ •๋œ recall๊ฐ’๋“ค์—์„œ๋งŒ ๊ณ„์‚ฐํ•˜๋ฏ€๋กœ precision๊ฐ’์ด ์—†๋Š” ๊ตฌ๊ฐ„์— ๋Œ€ํ•ด์„œ ๊ณ„์‚ฐํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ๋ณด๋‹ค ์ •ํ™• ํ•จ

Self Example

Reference