이 영역을 누르면 첫 페이지로 이동
컴퓨터와 수학, 몽상 조금 블로그의 첫 페이지로 이동

컴퓨터와 수학, 몽상 조금

페이지 맨 위로 올라가기

컴퓨터와 수학, 몽상 조금

컴퓨터공학, 딥러닝, 수학 등을 다룹니다.

FPPI, LAMR, MR: Object Detection을 위한 지표들

  • 2023.01.26 16:16
  • Deep Learning/공부 노트
반응형

머신러닝 Task가 복잡해질수록, 모델의 성능을 정확하게 측정하고 비교하기 위한 정밀한 지표들이 요구된다.

Object Detection 분야에서는 일반적으로 Precision, Recall, Average Precision(AP), mean Avrage Precision(mAP) 등의 지표가 등장하는데, 오늘은 이에 더하여 FPPI, LAMR 등 조금 생소한 지표들도 다뤄보겠다.

Precision (정밀도)

Precision은 어떤 클래스에 속한다고 예측한 샘플 중, 실제로 해당 클래스에 속한 샘플의 비율을 의미한다.

$$ \text{precision} = \frac{TP}{TP+FP} $$

precision을 높이기 위해서는 True Positive를 늘리는 것도 중요하지만, False Positive, 즉, 해당 클래스가 아닌데 해당 클래스로 예측한 위양성을 줄이는 것도 중요하다.

Recall (재현율)

Recall은 실제로 어떤 클래스에 속하는 샘플들 중, 예측에 성공한 샘플의 비율을 의미한다.

$$ \text{recall} = \frac{TP}{TP+FN} $$

recall을 높이기 위해서는 데이터에 존재하는 객체들을 최대한 많이 찾아내야 한다.

PR-curve

위에서 알아본 두 지표는 어느정도의 trade off 관계를 갖는다.

recall을 개선하기 위해 최대한 많은 객체를 인식하도록 모델을 조정하면, 필연적으로 잘못 예측한 FP 샘플이 많아져 precision은 하락한다.

한편, precision을 개선하기 위해 FP를 줄이는 쪽으로 모델을 조정하면, confidence score가 낮은 TP 샘플들도 줄어들어 recall이 하락한다.

이런 recall과 precision을 각각 x, y축으로 놓고 그래프를 그리면 나타나는 곡선이 PR curve, Precision Recall 곡선이다.

https://velog.io/@thecho7/%EB%AA%A8%EB%8D%B8%EC%9D%98-%EC%84%B1%EB%8A%A5-%ED%8F%89%EA%B0%80

Average Precisions (APs)

precision과 recall은 모델 설정에 따라 변화하기 때문에, 모델의 성능을 평가하기 위한 하나의 지표로 Average Precision이 사용된다.

AP는 위에서 설명한 PR-Curve를 적분한, 즉 그래프 아래 면의 면적과 같다.

그러나, 계산의 편의를 위해 실제로 계산할 때는 그래프를 단조적인 함수로 수정하여 그린다.

mean Average Precisions (mAP)

precision, recall, average precision은 classification이나 detection에서 각 클래스 별로 계산된다.

mAP는 각 클래스의 Average Precision을 평균한 값으로, 모델의 정확도를 평가하는 대표적인 지표이다.

Miss Rate (MR)

여기서부터는 일부 Object Detection 분야에서 활용되는 지표이다.
Miss Rate는 말 그대로, 전체 객체 중 검출하지 못한 객체의 비율이다.

$$ \text{MR} = \frac{FN}{TP+FN} = 1-\text{recall}$$

False Positive Per Image (FPPI)

FPPI는 이미지 한 장당 검출된 False Positive 샘플의 개수를 말한다.

이때 FP란 즉, 객체가 없는데 객체가 있다고 잘못 예측한 bounding box를 말한다.

FPPI는 이미지 한 장 단위로 계산되기 때문에, 데이터에 따라 scale의 변동폭이 매우 넓다.
예를 들어, 어떤 이미지에는 이미지 전체적으로 특별한 요소가 없어 FPPI가 0이겠지만, 어떤 이미지에는 객체, 혹은 객체로 인식할 만한 사물이 많아 FPPI가 큰 값이 될 수 있다.

Log Average Miss Rate (LAMR)

LAMR은 위에서 언급한 MR과 FPPI를 조합한 object detection 평가 지표이다.
MR을 활용해 detection 모델을 평가하면, recall과 마찬가지로 FP가 늘어나더라도 검출량을 늘리면 성능이 개선되기 때문에, FP의 수를 고려하면서 모델의 성능을 평가하기 위한 지표이다.

Yang, Ziyuan & Li, Jing & Min, Weidong & Wang, Qi. (2019). Real-Time Pre-Identification and Cascaded Detection for Tiny Faces. Applied Sciences. 9. 4344. 10.3390/app9204344.

recall과 precision처럼, Miss Rate와 False Positive Per Image도 trade off 관계의 곡선을 그린다.
이때, FPPI의 스케일이 데이터마다 상이하기 때문에, 이를 로그를 취하여 조절해 준다.

조절된 FPPI 축 위에 균등하게 배치된 n개 지점에서 Miss rate를 얻고, 이에 대한 평균을 구한 것이 바로 Log Average Miss Rate, LAMR이다.
(n은 일반적으로 9를 사용하는 것 같다.)

$$ \text{LAMR} = \frac{1}{n} \sum^n_{i=1} a_i $$
($a_i$는 log를 취한 FPPI 위 $i$번째 지점에서의 MR이다.)

Reference

  • https://github.com/Cartucho/mAP/issues/43
반응형

'Deep Learning > 공부 노트' 카테고리의 다른 글

FPN (Feature Pyramid Network) 요약  (1) 2023.02.01
YOLO v2(YOLO9000: Better, Faster, Stronger) 요약  (0) 2023.01.30
R-FCN: Object Detection via Region-based Fully Convolutional Networks 요약  (0) 2023.01.20
SSD: Single Shot MultiBox Detector 요약  (0) 2023.01.11
YOLO: You Only Look Once 부수기 [백 병장의 CV 부수기 6편]  (0) 2022.12.11

댓글

이 글 공유하기

  • 구독하기

    구독하기

  • 카카오톡

    카카오톡

  • 라인

    라인

  • 트위터

    트위터

  • Facebook

    Facebook

  • 카카오스토리

    카카오스토리

  • 밴드

    밴드

  • 네이버 블로그

    네이버 블로그

  • Pocket

    Pocket

  • Evernote

    Evernote

다른 글

  • FPN (Feature Pyramid Network) 요약

    FPN (Feature Pyramid Network) 요약

    2023.02.01
  • YOLO v2(YOLO9000: Better, Faster, Stronger) 요약

    YOLO v2(YOLO9000: Better, Faster, Stronger) 요약

    2023.01.30
  • R-FCN: Object Detection via Region-based Fully Convolutional Networks 요약

    R-FCN: Object Detection via Region-based Fully Convolutional Networks 요약

    2023.01.20
  • SSD: Single Shot MultiBox Detector 요약

    SSD: Single Shot MultiBox Detector 요약

    2023.01.11
다른 글 더 둘러보기

정보

컴퓨터와 수학, 몽상 조금 블로그의 첫 페이지로 이동

컴퓨터와 수학, 몽상 조금

  • 컴퓨터와 수학, 몽상 조금의 첫 페이지로 이동

검색

메뉴

  • 홈
  • 태그
  • 방명록

카테고리

  • 분류 전체보기 (276)
    • Tech Trend (3)
    • Deep Learning (77)
      • 공부 노트 (21)
      • 논문 리뷰 (44)
      • 논문 스키밍 (1)
      • 영상처리 (11)
    • Engineering (3)
      • Tips (2)
      • Experiences (1)
    • Blog (42)
      • 회고 & 계획 (16)
      • 내 이야기 (8)
      • 리뷰 (3)
      • 군대에 간 공돌이 (9)
      • ML엔지니어 취업 도전기 (1)
      • 여행 (4)
    • 학부 수업 (141)
      • 머신러닝 (16)
      • C프로그래밍 (8)
      • 자료구조 (11)
      • 알고리즘 (17)
      • 디지털시스템 (25)
      • 컴퓨터구조 (11)
      • 확률과 통계 (21)
      • 선형대수학 (14)
      • 이산수학 (18)
      • 데이터시각화 (0)
    • 강의 (9)
      • 딥러닝 기초 (7)
      • Python (2)

공지사항

인기 글

정보

백지오의 컴퓨터와 수학, 몽상 조금

컴퓨터와 수학, 몽상 조금

백지오

블로그 구독하기

  • 구독하기
  • RSS 피드

티스토리

  • 티스토리 홈
  • 이 블로그 관리하기
  • 글쓰기
반응형

나의 외부 링크

  • profile
  • github
  • linkedin

방문자

  • 전체 방문자
  • 오늘
  • 어제
Powered by Tistory / Kakao. © 백지오. Designed by Fraccino.

티스토리툴바