본문 바로가기
카테고리 없음

mAP(Mean Average Precision) : 개념, 사용 이유, 장점, 적용분야, 계산과정

by 쨔우쨔우 2025. 3. 25.
반응형

mAP 관련 이미지

1. mAP가 무엇인지

mAP는 평균 정밀도(Average Precision, AP)의 평균을 의미합니다.

여기서 정밀도(Precision)와 재현율(Recall)을 기반으로 AP를 구하고, 이를 클래스별로 평균내어 최종적으로 mAP를 계산합니다.

  • Precision(정밀도) : 모델이 예측한 객체가 실제로 정답일 확률

정밀도 공식

  • Recall(재현율) : 실제 객체 중에서 모델이 정확히 탐지한 비율

재현율 공식

 

AP(Average Precision)는 Precision-Recall 곡선을 기반으로 특정 클래스에서 모델이 얼마나 정확한지를 수치화한 값이며, mAP는 이를 모든 클래스에 대해 평균 낸 값입니다.


2. 왜 mAP를 사용하는지

객체 탐지에서는 단순히 정확도(Accuracy)만으로 모델의 성능을 평가하기 어렵습니다.

그 이유는 다음과 같습니다.

 

1) 객체가 여러 개 존재할 수 있음

  • 이미지 분류(Classification) 문제와 달리 객체 탐지에서는 여러 개의 객체를 찾는 것이 목표입니다.

2) 정확한 위치 예측이 중요함

  • 객체의 좌표(Bounding Box)가 정확해야 하므로, 단순한 맞춘 개수로는 평가할 수 없습니다.

3) 모델의 균형적인 성능 평가 필요

  • Precision이 높더라도 Recall이 낮으면 좋은 모델이 아닙니다.
  • Precision-Recall 균형을 반영하는 AP, 그리고 전체 클래스의 평균인 mAP가 필요합니다.

3. mAP의 장점

정확한 평가 가능 : 모델이 객체를 얼마나 정확히 탐지했는지를 정량적으로 평가할 수 있음.
다양한 IoU 기준 적용 가능 : 다양한 IoU 값에서 모델의 성능을 확인 가능.
Precision-Recall 균형 반영 : Precision과 Recall의 조화를 평가하여 모델이 한쪽으로 치우치지 않도록 함.


4. mAP가 사용되는 곳

  • YOLOv8 등 객체 탐지 모델의 성능 평가
  • 자율 주행 자동차 : 차량, 보행자 탐지 정확도 평가
  • 의료 영상 분석 : 종양이나 이상 부위 탐지 정확도 분석
  • 스마트 팜 : 작물 상태 분석 및 병해충 탐지 성능 평가

5. mAP를 계산하는 과정

mAP는 IoU(Intersection over Union) 임계값을 기준으로 TP(참 양성)를 판단하여 계산됩니다.

 

1) IoU (Intersection over Union)

 - 예측한 바운딩 박스와 실제 정답 바운딩 박스가 얼마나 겹치는지를 나타냄.

 - 공식

IoU 계산 공식

 - IoU가 특정 임계값(예 : 0.5) 이상이면 TP로 간주함.

2) Precision-Recall 곡선 생성

 - 여러 IoU 임계값을 설정하고 Precision과 Recall 값을 계산하여 곡선을 그림.

 - 곡선 아래 면적을 적분하여 AP(Average Precision)를 얻음.

3) mAP 계산

 - 클래스별 AP 값을 평균 내어 최종적으로 mAP를 얻음

 - 일반적으로 사용하는 mAP 계산 방식

  • mAP@0.5 : IoU 0.5 이상을 TP로 간주하여 계산한 mAP
  • mAP@0.5-0.95 : IoU 0.5~0.95까지 0.05 간격으로 평균낸 mAP

6. mAP를 향상시키는 방법

mAP는 모델의 성능을 평가하는 핵심 지표이기 때문에, 이를 최적화하면 객체 탐지 모델의 성능을 크게 개선할 수 있습니다. 아래는 mAP를 향상시키는 주요 기법입니다.

1) 데이터 증강(Augmentation) 기법 활용

  • 랜덤 크롭(Random Cropping) : 이미지 일부만 잘라서 학습하면 모델이 작은 객체도 감지할 수 있음
  • 좌우 반전, 회전 : 다양한 각도에서 객체를 감지하는 데 도움을 줌.
  • 색상 변화 : 밝기, 대비, 색조 등을 조정하면 모델이 다양한 조명 환경에서 적응할 수 있음.

2) 높은 해상도의 입력 이미지 사용

  • 작은 객체를 더 잘 감지하려면 모델의 입력 이미지 해상도를 높이는 것이 효과적.
  • YOLOv8에서는 imgsz 파라미터를 조절하여 해상도를 변경 가능.
  • 단, 해상도가 너무 높으면 연산량이 증가하여 속도가 느려질 수 있음.

3) 적절한 앵커 박스 설정

  • Faster R-CNN이나 YOLO 같은 모델은 기본적인 앵커 박스(Anchor Box) 크기를 설정하는데, 데이터셋에 맞지 않으면 mAP가 낮아질 수 있음.
  • YOLO에서는 autoanchor 기능을 사용하면 최적의 앵커 박스를 자동으로 설정 가능.

4) Loss Function 튜닝

  • 객체 탐지 모델의 손실 함수(Loss Function)를 적절히 조정하면 학습이 더욱 최적화됨.
  • YOLOv8에서는 CIoU Loss(Complete IoU)를 사용하여 박스 좌표 최적화를 수행함.
  • 일반적인 Binary Cross-Entropy Loss 대신 Focal Loss를 사용하면 Hard Example(어려운 예제) 학습에 더 효과적임.

5) 학습률 스케줄링(Learning Rate Scheduling) 적용

  • 학습 초반에는 큰 학습률을 사용하여 빠르게 수렴하고, 후반부에는 작은 학습률을 사용하여 최적값을 찾도록 해야 함.
  • YOLOv8에서는 Cosine Annealing 방식으로 학습률을 조절할 수 있음.

6) IoU 임계값 조정

  • 기본적으로 IoU 임계값을 0.5로 설정하지만, 이를 높이면 더 엄격한 평가가 가능함.
  • mAP@[0.5:0.95]를 기준으로 성능을 평가하는 것이 일반적이며,
    IoU를 0.75 이상으로 설정하면 더욱 정밀한 모델을 만들 수 있음.

mAP는 객체 탐지 모델의 성능을 평가하는 핵심 지표로, Precision-Recall 곡선과 IoU 기준을 활용하여 모델이 얼마나 정확하게 객체를 탐지하는지를 정량적으로 나타내는 값입니다.

특히 YOLOv8에서 모델의 성능을 분석할 때 mAP@0.5와 mAP@0.5-0.95를 주로 활용합니다.

반응형