모델 성능 평가 지표

Xpert·2024년 3월 3일
1

머신러닝

목록 보기
1/11

Confusion Matrix


  • 좌우로 나뉜 영역에서 좌측은 실제 True인 영역이고, 우측은 실제 False인 영역이다.
  • 원으로 그려진 영역은 모델이 True로 추정한 영역이다.
  • True / False : 추정이 맞았다 / 틀렸다
  • Positive / Negative : True로 추정을 했다 / 하지 않았다
  • True Positive (TP) : True로 추정을 했고, 실제 값 True이므로 맞았다
  • False Positive (FP) : True로 추정을 했고, 실제 값 False이므로 틀렸다
  • False Negative (FN) : False로 추정을 했고, 실제 값 True이므로 틀렸다
  • True Negative (TN) : False로 추정을 했고, 실제 값 False이므로 맞았다

평가 지표

Precision and Recall

  • Precision (정밀도) : 모델이 True라고 추정한 것들 중, 실제 True인 비율

  • Recall (재현율) : 실제 True인 것들 중, 모델이 True라고 추정한 비율

  • Precision과 Recall은 일반적으로 Trade off 관계이다

  • Precision은 모델이 얼마나 과하게 추정하느냐 (과검, overkill) 에 대한 지표로 쓰일 수 있다. Precision이 낮을수록 모델은 시끄럽기만한 깡통처럼 동작할 것이다

  • Recall은 모델이 얼마나 추정을 놓치느냐 (미검, underkill) 에 대한 지표로 쓰일 수 있다. Recall이 낮을수록 모델은 지나치게 신중하기만한 것처럼 보일 것이다

  • 일반적으로 model의 output 결과에 threshold(T)를 부여하는 경우가 있는데, T가 낮을수록 모델은 예측을 많이하므로 Recall은 높고 Precision은 낮아지는 효과가 있다. 반면에 T가 높을수록 모델은 더욱 신중해지므로 Precision이 높은 대신 Recall이 낮아지는 효과가 있다.

Accuracy

  • Accuracy (정확도) : 전체 데이터 중에서 모델이 맞춘 비율
  • Accuracy는 말 그대로 모델이 얼마나 추정을 올바르게 했냐를 가장 직관적으로 파악할 수 있다
  • 다만, 모델의 성능이 떨어질 때, 정확히 어떤 원인인지를 파악하는 데에는 Precision, Recall보다는 디테일하게 알기 어렵다

F1 Score

  • F1 Score : Precision과 Recall의 조화 평균

  • F1 Score는 데이터가 불균형 할 때 조화평균을 이용하여 부족한 쪽에 조금 더 weight를 주는 효과를 얻을 수 있다

  • 또한 Precision과 Recall을 하나의 메트릭으로 만들어 비교하고 싶을때 유용하다

FPR (Fall-out)

  • FPR (False Positive Rate) : 실제 False인 것들 중, 모델이 True라고 예측한 비율

ROC Curve

  • Recall과 FPR의 변화를 시각화한 그래프.
  • curve가 왼쪽 위 모서리에 가까울수록 (Recall이 크고 FPR이 작을수록) 모델의 성능이 좋음
  • y=x 그래프보다 상단에 위치해야 어느정도 성능이 보장됨
  • AUC (Area Under Curve) : ROC를 수치화한 그래프 아래의 면적 값 (최대값 = 1)
profile
Python, CV, ML, Backend

0개의 댓글

관련 채용 정보