[Object Detection] 2. model & evaluation metric

happy_quokka·2023년 12월 27일
0

딥러닝

목록 보기
10/18

Object Detection models

One-Stage Object Detector

YOLO (You Only Look Once)

  • 이전 모델들에 비해 속도가 매우 빠르다
  • YOLOv1, YOLOv2, v3, v5, YOLOR
  • backbone : GoogLenet, Darknet19, Darknet53

SSD (Single Shot Detector)

  • 중간중간의 feature map을 모두 사용한다
  • backbone : VGG-16

Two-Stage Object Detector

  • one-stage 보다 속도는 느리지만 정확도는 높다

RCNN

step 1. region proposal

  • object가 있을 법한 곳을 2000개 정도 후보로 뽑는다
  • selective search라는 rule base 방법으로 region을 뽑는다
  • 그러다보니 연산량이 많다(느리다)
  • 뽑은 2000개의 proposal을 227x227로 resize

step 2. bounding box regression과 class SVM 수행

Fast-RCNN

  • CNN 모델을 거쳐 region proposal 수행
  • ROI pooling을 통해 원하는 feature map size로 조정 (RCNN의 resize 대신 수행) -> 연산량이 줄어든다
  • softmax regression 사용 (not SVM)
  • bounding box regression

Faster-RCNN

  • selective search 방법을 사용한 것이 아니라 RPN(Region Proposal Network)을 통해 region proposal 수행
  • fc layer 수행

Evaluation Metric

  • 성능 판단 기준
  • TP : 옳은 검출
  • FP : 틀린 검출
  • TN : 검출되면 안되는데 검출이 안된것
  • FN : 검출되면 안되는데 검출이 된것
  • IoU를 기준으로 bbox가 검출되었는지 안되었는지 확인

Precision (정밀도)

  • Precision=tptp+fpPrecision = \frac{tp}{tp + fp}
  • 내가 예측한 bbox 중에 정답으로 예측한 bbox

Recall (재현율)

  • Recall=tptp+fnRecall = \frac{tp}{tp + fn}
  • 전체 GT 중에 검출한 bbox의 비율

F1 score

  • F1=2×Precision×RecallPrecision+RecallF_1 = 2 × \frac{Precision × Recall}{Precision + Recall}
  • precision과 recall의 조화평균

recall과 precision의 관계

  • high recall + high precision : perfect
  • low recall + high precision : bbox를 몇개 검출하지 못한것
  • high recall + low precision : GT는 잘 검출하였지만 class 예측을 잘 못한것
  • low recall + low precision : poor

PR Curve

  • precision-recall 곡선
  • precision이 1에 가까운 곡선이 좋다

mAP

  • Mean Average Precision
  • PR curve의 면적
  • 전체 class에 대한

confusion matrix

  • TP와 FP
  • class 간의 혼동되는 부분을 확인하 수 있다

0개의 댓글