정밀도와 재현율(Precision and Recall)란?

2클래스 분류 모델의 평가 지표. 정밀도(precision)는 양성으로 예측한 것 중 실제로 양성이었던 비율 TP ÷ (TP + FP), 재현율(recall)은 실제로 양성인 것 중 양성으로 예측할 수 있었던 비율 TP ÷ (TP + FN)이다. 일반적으로 판정 임계값을 바꾸면 한쪽이 오르면 다른 쪽이 내려가는 관계에 있다. 둘의 조화 평균 2PR ÷ (P + R)을 F값(F1 점수)이라고 부른다.

일본어 명칭: 適合率と再現率

정밀도와 재현율(Precision and Recall)은(는) 머신러닝의 기초 등 1개 분야의 연습 문제 4개에 나와요.

분야: 머신러닝의 기초

계산 예

실제로 양성인 데이터가 100건 있고, 모델이 40건을 양성으로 판정했으며 그중 30건이 정말로 양성이었다고 합시다. 정밀도는 30 ÷ 40 = 0.75, 재현율은 30 ÷ 100 = 0.3입니다. F값은 2 × 0.75 × 0.3 ÷ (0.75 + 0.3) ≈ 0.43으로, 산술 평균인 약 0.53보다 낮아집니다. 조화 평균은 작은 쪽 값에 끌려가므로, 한쪽만 높은 모델은 F값에서는 높게 평가되지 않습니다.

임계값과의 트레이드오프

많은 분류 모델은 양성다움을 점수로 출력하고, 임계값을 넘은 것을 양성으로 판정합니다. 임계값을 올리면 확신이 있는 것만 양성으로 하므로 정밀도는 오르기 쉽고, 놓치는 것이 늘어 재현율은 내려갑니다. 임계값을 내리면 반대가 됩니다. 임계값을 움직이면서 정밀도와 재현율의 관계를 그린 것을 PR 곡선이라고 부르며, 진양성률과 위양성률의 관계를 그린 ROC 곡선과 함께 모델 비교에 사용합니다.

어느 쪽을 중시할까

놓치는 것이 큰 손해가 되는 질병 검사나 불량품 검출에서는 재현율을 중시합니다. 잘못 양성으로 하는 것의 손해가 큰 경우, 예를 들어 필요한 메일을 잘못 스팸으로 격리해 버리는 스팸 메일 필터에서는 정밀도를 중시합니다. 목적에 따라 둘에 가중치를 둔 Fβ 값을 사용하기도 합니다. 양성이 아주 적은 불균형 데이터에서는 정확도보다 이러한 지표 쪽이 성능을 잘 나타냅니다.

도전해 보기: 정밀도와 재현율(Precision and Recall) 관련 문제

2클래스 분류 모델을 200건의 테스트 데이터로 평가한 혼동 행렬에서 진양성(TP)이 45건, 위양성(FP)이 5건, 위음성(FN)이 45건, 진음성(TN)이 105건이었다. 정밀도와 재현율의 조합으로 올바른 것은?

  1. A정밀도 0.50, 재현율 0.90
  2. B정밀도 0.75, 재현율 0.50
  3. C정밀도 0.90, 재현율 0.50
정답과 해설 보기

정답: C. 정밀도 0.90, 재현율 0.50

정밀도(precision)는 양성으로 예측한 것 중 실제로 양성이었던 비율로, TP ÷ (TP + FP) = 45 ÷ 50 = 0.90입니다. 재현율(recall)은 실제로 양성인 것 중 양성으로 예측할 수 있었던 비율로, TP ÷ (TP + FN) = 45 ÷ 90 = 0.50입니다. 이 모델은 양성으로 판정한 것은 거의 맞지만, 양성의 절반을 놓치고 있습니다. 정확도는 (45 + 105) ÷ 200 = 0.75입니다.

2클래스 분류 모델을 200건의 테스트 데이터로 평가했더니 TP가 20건, FP가 5건, FN이 30건, TN이 145건이었다. F값(F1 점수)에 가장 가까운 것은?

  1. A0.40
  2. B0.53
  3. C0.60
정답과 해설 보기

정답: B. 0.53

먼저 정밀도는 20 ÷ (20 + 5) = 0.8, 재현율은 20 ÷ (20 + 30) = 0.4입니다. F값은 정밀도와 재현율의 조화 평균으로, 2 × 0.8 × 0.4 ÷ (0.8 + 0.4) = 0.64 ÷ 1.2 ≈ 0.53입니다. 조화 평균은 작은 쪽 값에 끌려가므로, 어느 한쪽만 높아서는 F값이 높아지지 않습니다. 참고로 정확도는 (20 + 145) ÷ 200 = 0.825로 높아 보이지만, 이 모델은 양성 10건 중 6건꼴로 놓치고 있습니다.

자주 묻는 질문

정확도(accuracy)와는 어떻게 다른가요?

정확도는 전체 중 예측이 맞은 비율 (TP + TN) ÷ 전체입니다. 양성이 1%밖에 없는 데이터에서는 모두를 음성으로 예측하기만 해도 정확도는 99%가 되지만, 재현율은 0이 되므로 양성을 전혀 찾아내지 못하고 있음을 알 수 있습니다.

'정확도'와 '정밀도'는 같은 뜻인가요?

아닙니다. 일상적으로는 두 말이 구별 없이 쓰이는 경우가 많지만, 분류에서 정확도(accuracy)는 전체 예측 중 맞은 비율이고, 정밀도(precision)는 양성이라고 한 예측 중 맞은 비율입니다. 계측에서는 정밀도가 또 다른 뜻, 즉 반복해서 측정한 값끼리 얼마나 가깝게 일치하는지를 나타냅니다. precision을 적합률이라고 번역하기도 합니다.

해설 속 정밀도와 재현율(Precision and Recall)

정밀도와 재현율(Precision and Recall)이(가) 나오는 문제 (4)

  1. 2클래스 분류 모델을 200건의 테스트 데이터로 평가한 혼동 행렬에서 진양성(TP)이 45건, 위양성(FP)이 5건, 위음성(FN)이 45건, 진음성(TN)이 105건이었다. 정밀도와 재현율의 조합으로 올바른 것은?
  2. 2클래스 분류 모델을 200건의 테스트 데이터로 평가했더니 TP가 20건, FP가 5건, FN이 30건, TN이 145건이었다. F값(F1 점수)에 가장 가까운 것은?
  3. 2클래스 분류 모델의 평가에 사용하는 ROC 곡선과 AUC에 대한 설명으로 적절한 것은?
  4. 1000건 중 양성이 10건밖에 없는 데이터에 대해, 모두를 음성으로 예측하는 모델의 정확도는?

관련 용어

혼동 행렬(Confusion Matrix) 조화 평균(Harmonic Mean) 강화 학습(Reinforcement Learning) 경사 하강법(Gradient Descent) 과적합(Overfitting) 교차 검증(Cross-validation) 비지도 학습(Unsupervised Learning) 순환 신경망(RNN) 전이 학습(Transfer Learning) 정칙화(Regularization)

용어집으로 돌아가기