[데이터 공부] 주요 지표들에 대하여

WHIT·2024년 11월 24일
0

Data Scientist

목록 보기
17/18

✅ Precision 과 Recall

- Precision (정밀도)

  • 모델이 Positive라고 예측한 것 중 실제 Positive인 비율
  • Precision = True Positive / (True Positive + False Positive)

- Recall = Sensitivity (재현율 = 민감도)

  • 실제 Positive인 것 중 모델이 Positive라고 예측한 비율
  • Recall = True Positive / (True Positive + False Negative)
  • True Positive Rate(TPR)

- Specificity (특이도)

  • 실제 Negative인 것 중 모델이 Negative라고 예측한 비율
  • Recall = True Negative / (True Negative + False Positive)
  • True Negative Rate(TNR)

✅ F1 Score

- F1 Score

  • Precision(정밀도)과 Recall(재현율)의 조화 평균을 나타내는 지표
  • F1 = 2 (Precision Recall) / (Precision + Recall)
  • Precision과 Recall은 각각 trade-off 관계에 있음. F1 score는 이 둘의 균형을 잡아주는 단일 지표

- Macro F1 Score

  • 각 클래스별 F1 Score를 계산한 후 평균을 내는 방식
  • 모든 클래스를 동등하게 취급

- Micro F1 Score

  • 모든 클래스의 TP, FP, FN을 합산
  • 합산된 값으로 Precision과 Recall 계산
  • 이를 바탕으로 하나의 F1 Score 계산
  • 데이터셋이 불균형할 때 더 유용, 데이터가 많은 클래스에 더 큰 가중치 부여
  • 전체 데이터셋에서의 성능을 하나의 지표로 보고 싶을 때

- Weighted F1 Score

  • 각 클래스별로 F1 Score를 계산한 후, 각 클래스의 샘플 수에 비례하여 가중치를 주어 평균을 계산
  • 각 클래스의 샘플 수를 고려하여 가중치를 준 F1 Score
  • 데이터셋에서 더 많은 샘플을 가진 클래스에 더 높은 가중치 부여
  • 클래스별 성능을 개별적으로 보되, 데이터 크기를 고려하고 싶을 때

✅ BA

- Balanced Accuracy

  • 분류 모델의 성능을 평가하는 중요한 지표 중 하나
  • 특히 클래스 불균형(imbalanced classes)이 있는 데이터셋에서 유용

- 계산 방법

  • BA = (민감도(Sensitivity) + 특이도(Specificity)) / 2
  • 또는 BA = (True Positive Rate + True Negative Rate) / 2

- BA가 중요한 이유

  • 데이터 불균형 상황에서 일반 정확도(Accuracy)보다 더 신뢰할 수 있음
  • 각 클래스의 성능을 균등하게 고려
  • 0.5는 랜덤 추측 수준, 1.0은 완벽한 예측을 의미

✅ mAP (mean Average Precision)

- AP 와 mAP

  • mAP: precision과 recall을 그래프로 나타냈을 때의 면적
  • 모든 class의 AP에 대한 평균값이 mAP (모든 class에 대하여 Precision/Recall의 값을 avg 취한 것)

[참고] https://artiiicy.tistory.com/25

0개의 댓글