Programming/Deep Learning with math

Model Evaluation: Confusion Matrix, Precision, Recall, F1-Score

EveryDayIsNewDay 2025. 1. 7. 14:47

생성한 모델에 대한 성능 지표를 평가하기 위한 다양한 방법들이 존재한다. 그중 일반적으로 많이 사용하는 정밀도(Precision), 재현율(Recall) 및 F1-Score에 대해 알아보자. 먼저 평가 기법에 대해 알아보기 전에 시각적으로 모델의 성능을 이해할 수 있도록 제공해 주는  Confusion Matrix를 보면 다음과 같다.

 

An example of a confusion matrix (Source: Rune Hylsberg Jacobsen)

 

Confusion Matrixsms 실제값(Real Value 또는 Ground Truth라고 함)과 모델이 예측한 예측값을 2x2 형태로 구성하여 원하는 결과값이 나왔는지에 대한 정의로 표현한다. 각 항목은 모델의 예측 결과를 실제 값과 비교한 결과를 나타낸다.

 

  • True Positive (TP): 실제 positive인 데이터가 모델에 의해 positive로 예측된 경우
  • False Positive (FP): 실제 negative인 데이터가 모델에 의해 positive로 예측된 경우
  • False Negative (FN): 실제 positive인 데이터가 모델에 의해 negative로 예측된 경우
  • True Negative (TN): 실제 negative인 데이터가 모델에 의해 negative로 예측된 경우

 

 Precision (정밀도)

정밀도는 모델이 positive 클래스라고 예측한 것들 중에서 실제로 positive인 것의 비율.

 

$$ Precision = \frac{\text{True Positive (TP)}}{\text{True Positive (TP)} + \text{False Positive (FP)}} $$

 

모델이 positive라고 예측한 것들 중에서 얼마나 정확하게 예측했는지를 보여준다. 높은 Precision은 모델이 잘못된 positive 예측을 덜 한다는 것을 의미한다.

 

 Recall (재현율)

재현율은 실제 positive인 것들 중에서 모델이 positive로 정확하게 예측한 비율.

 

$$ \text{Recall} = \frac{\text{True Positive (TP)}}{\text{True Positive (TP)} + \text{False  Negative(FN)}} $$

 

모델이 positive이라고 예측한 것들 중에서 얼마나 정확하게 예측했는지를 보여준다. 높은 Precision은 모델이 잘못된 양성 예측을 덜 한다는 것을 의미.

 

F1-score

F1-score는 Precision과 Recall의 조화 평균. 두 지표의 균형을 맞추기 위해 사용한다.

 

 

Precision과 Recall이 모두 중요한 경우, F1-score는 두 지표 간의 균형을 고려한 하나의 종합적인 성능 평가 지표다. Precision과 Recall 중 어느 하나가 낮으면 F1-score도 낮다.

 

각 지표의 관계

1. Precision과 Recall은 서로 상반된 관계에 있을 수 있다. 예를 들어, 모델이 positive 예측을 많이 하면 Recall은 높아질 수 있지만, 동시에 잘못된 False Positive가  많아져 Precision은 낮아질 수 있다. 이 때문에 두 지표의 균형을 맞추는 것이 중요하다.

2. F1-score는 이 두 지표 간의 균형을 고려하여 모델이 두 측면을 모두 잘 수행하는지 평가한다.

 

결론

 

  • Precision은 얼마나 정확하게 양성을 예측했는지 평가한다.
  • Recall은 얼마나 많은 양성을 놓치지 않고 찾아냈는지 평가한다.
  • F1-score는 Precision과 Recall의 균형을 평가하는 지표.

 

각각의 지표가 중요한 상황에 따라 사용되며, 예를 들어:

 

  • Precision이 중요한 경우: False Positive를 최소화해야 하는 상황 (예: 스팸 메일 필터링)
  • Recall이 중요한 경우: False Negative를 최소화해야 하는 상황 (예: 질병 검진)
  • F1-score가 중요한 경우: Precision과 Recall 간의 균형이 중요한 상황