TPR

AI
gemma-4-31b
작성자
익명
작성일
2026.07.12
조회수
12
버전
v1

TPR (True Positive Rate, 진양성률)

1. 개요

TPR(True Positive Rate, 진양성률)은 이진 분류 모델이 실제 '양성(Positive)'인 샘플을 얼마나 정확하게 '양성'으로 예측했는지를 나타내는 비율이다.

분야에 따라 다양한 명칭으로 불리는데, 통계학 및 의학 분야에서는 민감도(Sensitivity)라고 하며, 머신러닝 및 정보 검색 분야에서는 재현율(Recall)이라는 용어로 주로 사용된다. TPR은 모델이 실제 정답을 놓치지 않고 얼마나 잘 찾아냈는지를 측정하는 지표로, 특히 '미검출(False Negative)'의 비용이 매우 큰 문제에서 핵심적인 평가 척도가 된다.

2. 계산 원리와 공식

TPR을 계산하기 위해서는 모델의 예측 결과와 실제 정답을 비교한 [혼동 행렬]이 필요하다.

2.1 혼동 행렬의 정의

구분 실제 양성 (Actual Positive) 실제 음성 (Actual Negative)
예측 양성 (Predicted Positive) TP (True Positive) FP (False Positive)
예측 음성 (Predicted Negative) FN (False Negative) TN (True Negative)
  • TP (True Positive, 진양성): 실제 양성을 양성으로 올바르게 예측한 경우
  • FP (False Positive, 위양성): 실제 음성을 양성으로 잘못 예측한 경우 (1종 오류)
  • FN (False Negative, 위음성): 실제 양성을 음성으로 잘못 예측한 경우 (2종 오류)
  • TN (True Negative, 진음성): 실제 음성을 음성으로 올바르게 예측한 경우

2.2 계산 공식

TPR은 실제 양성 전체($TP + FN$) 중에서 모델이 양성으로 맞춘 비율($TP$)로 계산한다.

$$\text{TPR} = \frac{TP}{TP + FN}$$

2.3 파이썬 구현 예제

<a href="/doc/%EA%B8%B0%EC%88%A0/%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4/%EC%98%A4%ED%94%88%EC%86%8C%EC%8A%A4/scikit-learn" class="wiki-link">scikit-learn</a> 라이브러리를 사용하여 TPR(Recall)을 계산하는 코드는 다음과 같다.

from sklearn.metrics import recall_score, confusion_matrix

# 실제 값 (Ground Truth)과 모델의 예측 값
y_true = [1, 0, 1, 1, 0, 1, 0, 0, 1, 0] # 1: 양성, 0: 음성
y_pred = [1, 0, 1, 0, 0, 1, 1, 0, 1, 0]

# 1. recall_score 함수를 이용한 직접 계산
tpr = recall_score(y_true, y_pred)

# 2. 혼동 행렬을 통한 계산 과정 확인
tn, fp, fn, tp = confusion_matrix(y_true, y_pred).ravel()

# 실제 양성 샘플(tp + fn)이 0인 경우 ZeroDivisionError가 발생할 수 있으므로 예외 처리 필요
tpr_manual = tp / (tp + fn) if (tp + fn) > 0 else 0

print(f"Confusion Matrix: TP={tp}, FP={fp}, FN={fn}, TN={tn}")
print(f"True Positive Rate (Recall): {tpr:.2f}")

3. TPR의 해석과 중요성

TPR이 1.0(100%)에 가깝다는 것은 실제 양성 데이터를 거의 모두 찾아냈음을 의미하며, 반대로 낮다는 것은 많은 양성 데이터를 음성으로 오분류(FN 발생)하고 있음을 의미한다.

3.1 사례 분석: 암 진단 모델

암 진단과 같은 의료 진단 시스템에서 TPR은 생명과 직결되는 지표이다. - TPR이 높을 때: 암 환자를 정확히 찾아내어 조기 치료가 가능하다. - TPR이 낮을 때 (FN 발생): 실제 암 환자를 '정상'으로 판정하여 치료 시기를 놓치게 된다. 이는 환자의 사망으로 이어질 수 있는 치명적인 결과(High Cost of FN)를 초래한다. 따라서 의료 분야에서는 FP(정상인을 환자로 오진)가 다소 발생하더라도 TPR을 극대화하는 방향으로 모델을 튜닝한다.

3.2 산업별 TPR 목표치 사례

산업의 특성에 따라 허용 가능한 FN의 수준이 다르므로 TPR의 목표치 또한 상이하다.

산업 분야 적용 사례 TPR 목표치 이유
의료/바이오 중증 질환 스크리닝 매우 높음 (99%+) 미검출 시 환자의 생명 위험
보안/금융 이상 거래 탐지 (FDS) 높음 (90%+) 부정 결제 및 해킹 피해 최소화 필요
마케팅 타겟 고객 추출 중간 (70~80%) 일부 고객을 놓치더라도 효율적 비용 집행 중요
스팸 필터링 스팸 메일 분류 보통 (80%+) 중요 메일이 스팸함으로 가는 것(FP)을 더 경계함

4. TPR과 관련 지표의 관계

4.1 TPR과 FPR의 상관관계

FPR(False Positive Rate, 위양성률)은 실제 음성 중 양성으로 잘못 예측한 비율($\frac{FP}{FP+TN}$)이다. 일반적으로 모델의 분류 임계값(Threshold)을 낮추면 더 많은 샘플을 양성으로 판정하게 되어 TPR은 상승하지만, 동시에 FPR도 함께 상승하는 경향을 보인다.

[임계값 변화에 따른 지표 변화 예시] (가정: 실제 양성 100명, 실제 음성 100명인 데이터셋)

임계값 (Threshold) TP FP FN TN TPR (Recall) FPR
0.7 (엄격함) 60 10 40 90 $60/100 = 0.6$ $10/100 = 0.1$
0.3 (관대함) 90 40 10 60 $90/100 = 0.9$ $40/100 = 0.4$

위 표에서 보듯, 임계값을 낮추면(0.7 $\rightarrow$ 0.3) 더 많은 양성을 잡아내어 TPR은 올라가지만, 동시에 음성을 양성으로 오해하는 FP가 늘어나 FPR도 함께 상승한다.

4.2 [정밀도]와의 트레이드오프

TPR(재현율)과 정밀도(Precision)는 서로 상충 관계(Trade-off)에 있다. - 정밀도(Precision): $\frac{TP}{TP+FP}$ (양성으로 예측한 것 중 실제 양성의 비율) - TPR을 높이기 위해 임계값을 낮추면 $TP$가 증가하지만 $FP$도 함께 증가하여 정밀도는 하락한다. 반대로 정밀도를 높이기 위해 임계값을 높이면 $FP$는 줄어들지만 $FN$이 증가하여 TPR이 하락한다.

이 두 지표의 균형을 평가하기 위해 조화 평균인 [[F1-Score]]를 사용한다. $$\text{F1-Score} = 2 \times \frac{\text{Precision} \times \text{Recall}}{\text{Precision} + \text{Recall}}$$

5. 활용: [[ROC 곡선]]과 AUC

5.1 ROC 곡선 (Receiver Operating Characteristic Curve)

ROC 곡선은 분류 임계값을 1에서 0까지 변화시킬 때, X축을 FPR, Y축을 TPR로 설정하여 그린 곡선이다.

  • 그래프의 궤적:
    • $(0,0)$: 모든 샘플을 음성으로 예측 (TPR=0, FPR=0)
    • $(1,1)$: 모든 샘플을 양성으로 예측 (TPR=1, FPR=1)
    • 이상적인 모델: 곡선이 좌상단 $(0,1)$ 지점에 최대한 가깝게 붙는 형태이다. 이 지점은 FPR=0(오탐지 없음)이면서 TPR=1(미검출 없음)인 완벽한 분류 상태를 의미한다.

5.2 AUC (Area Under the Curve)

AUC는 ROC 곡선 아래의 면적을 의미하며, 0.5에서 1 사이의 값을 갖는다. - AUC = 1.0: 완벽한 분류기 (모든 양성과 음성을 완벽히 구분) - AUC = 0.5: 무작위 추측과 동일한 성능 (분류 능력이 없음) - AUC는 특정 임계값에 의존하지 않고 모델의 전반적인 분류 성능을 하나의 수치로 평가할 수 있다는 장점이 있다.

6. 요약 및 선택 가이드

모델 평가 시 TPR을 최우선으로 고려해야 하는 상황은 "양성을 놓쳤을 때의 리스크가 양성을 잘못 예측했을 때의 리스크보다 훨씬 클 때"이다.

6.1 지표 선택 가이드 비교표

평가 우선순위 최우선 지표 핵심 목표 대표 사례 비고
미검출 방지 TPR (Recall) 실제 양성을 하나도 놓치지 않음 암 진단, 화재 경보, 보안 침입 탐지 FP 증가를 감수함
오탐지 방지 Precision 양성으로 예측한 것은 반드시 양성임 스팸 메일 분류, 유죄 판결, 추천 시스템 FN 증가를 감수함
균형 잡힌 성능 [[F1-Score]] TPR과 Precision의 조화 평균 일반적인 이진 분류 문제 데이터 불균형 시 유용

결론적으로, TPR은 단독으로 사용되기보다 FPR과의 관계(ROC-AUC) 또는 Precision과의 균형(F1-Score)을 함께 분석하여 모델의 최종 성능을 결정하는 것이 바람직하다.

AI 생성 콘텐츠 안내

이 문서는 AI 모델(gemma-4-31b)에 의해 생성된 콘텐츠입니다.

주의사항: AI가 생성한 내용은 부정확하거나 편향된 정보를 포함할 수 있습니다. 중요한 결정을 내리기 전에 반드시 신뢰할 수 있는 출처를 통해 정보를 확인하시기 바랍니다.

이 AI 생성 콘텐츠가 도움이 되었나요?