ROC 곡선 및 AUC 계산기 - 이진 분류기 평가

고급 통계 검정

아래에 모델의 예측 점수와 실제 레이블을 입력하면 ROC 곡선을 생성하고 곡선 아래 면적(AUC)을 계산할 수 있습니다.

ROC 곡선 및 AUC 계산기 - 이진 분류기 평가
고급 통계 검정

한 줄에 하나의 관측값을 'score,label' 형식으로 입력하세요. 레이블은 0 또는 1이어야 합니다. 예: 0.9,1

ROC 곡선 및 AUC 계산기에 대해

수신자 조작 특성(ROC) 곡선은 이진 분류 모델이 가능한 모든 결정 임계값에서 판별 능력을 평가하는 그래픽 도구입니다. 임계값이 높음에서 낮음으로 변할 때, y축에는 진양성률(TPR, 또는 민감도), x축에는 위양성률(FPR, 또는 1 − 특이도)을 그립니다. 민감도(TPR)는 실제 양성을 올바르게 식별한 비율입니다: TPR = TP / (TP + FN). 특이도는 실제 음성을 올바르게 식별한 비율입니다: 특이도 = TN / (TN + FP). FPR = 1 − 특이도 = FP / (TN + FP)입니다. 완벽한 분류기는 왼쪽 위 모서리(FPR = 0, TPR = 1)를 지나가고, 무작위 분류기의 ROC 곡선은 (0,0)에서 (1,1)까지의 대각선에 놓입니다. ROC 곡선 아래 면적(AUC)은 전체 분류 성능을 하나의 스칼라 값으로 요약합니다. AUC가 1.0이면 완전한 판별을 의미하고, 0.5이면 판별력이 없다는 뜻으로 무작위 추측과 같습니다. 일반적으로 AUC ≥ 0.9는 매우 우수, 0.8–0.9는 좋음, 0.7–0.8은 보통, 0.7 미만은 낮음으로 봅니다. 이 계산기는 사다리꼴 법칙을 사용해 AUC를 계산하며, 계단 함수 형태의 ROC 곡선 아래 면적을 적분합니다. 또한 Youden의 J 통계량(J = 민감도 + 특이도 − 1)을 사용해 최적 결정 임계값을 찾는데, 이는 민감도와 특이도의 합을 최대화해 균형 잡힌 운영점을 제공합니다. ROC 곡선과 AUC는 의료 진단(질병과 건강한 대상을 구분하는 분류기), 머신러닝(이진 분류 모델 평가), 신용 평가에서 표준적인 평가 지표입니다. 정확도와 달리 AUC는 클래스 불균형에 둔감하므로, 양성 사례가 드문 경우 특히 유용합니다. 이 도구는 점수-레이블 쌍의 임의의 목록을 허용합니다. 점수는 확률, logit 값 또는 연속적인 순위 점수일 수 있습니다. 레이블은 0(음성 클래스) 또는 1(양성 클래스)이어야 합니다. 결과 표에는 모든 ROC 운영점이 표시되며, 최적 임계값 행은 쉽게 확인할 수 있도록 강조 표시됩니다.

ROC 곡선 예시

이 예시는 AUC 값이 분류기 성능의 서로 다른 수준에 어떻게 대응하는지 보여줍니다.

점수, 레이블 쌍AUC해석
0.9,1 / 0.8,1 / 0.3,0 / 0.2,0AUC = 1.0완벽한 분류기
0.9,1 / 0.8,1 / 0.75,1 / 0.6,0 / 0.55,1 / 0.45,0 / 0.4,0 / 0.35,0AUC ≈ 0.9375판별력이 매우 우수함
0.9,0 / 0.8,1 / 0.7,0 / 0.6,1 / 0.5,0 / 0.4,1AUC ≈ 0.33역순 정렬 — 무작위보다 나쁨

이 계산기 사용 방법

  1. 한 줄에 하나의 관측값을 'score,label' 형식으로 입력하세요. score는 숫자 예측값이고 label은 0 또는 1입니다.
  2. 데이터에 양성(label=1)과 음성(label=0) 예시가 모두 포함되어 있는지 확인하세요.
  3. AUC를 계산하고 ROC 곡선 점을 생성하려면 '계산'을 클릭하세요.
  4. AUC 값과 그 정성적 해석(매우 우수, 좋음, 보통, 낮음)을 확인하세요.
  5. 표에서 강조된 최적 임계값 행을 찾아 민감도/특이도의 가장 균형 잡힌 절충점을 확인하세요.

자주 묻는 질문

AUC는 무엇이며 왜 중요한가요?
AUC(ROC 곡선 아래 면적)는 분류기가 모든 임계값에서 양성 사례를 음성 사례보다 더 높게 순위화하는 능력을 측정합니다. 임계값에 독립적이고 클래스 불균형에 강하므로, 의료, 머신러닝, 금융 분야의 이진 분류 모델에서 표준 기준입니다.
AUC가 0.5라는 것은 무슨 뜻인가요?
AUC가 0.5라는 것은 분류기가 무작위 추측보다 낫지 않다는 뜻으로, 양성과 음성 사례를 무작위로 순위화하고 있음을 의미합니다. 0.5보다 낮은 AUC는 분류기가 체계적으로 잘못되었으며, 예측을 뒤집으면 우연 이상의 성능을 얻을 수 있음을 나타냅니다.
최적 임계값은 어떻게 선택되나요?
이 계산기는 Youden의 J 통계량(J = 민감도 + 특이도 − 1)을 사용해 최적 임계값을 선택합니다. 민감도와 특이도의 합을 최대화해 균형 잡힌 운영점을 제공합니다. 비용 최소화나 F1-score 최대화 같은 대안 기준은 응용에 따라 다른 최적 임계값을 낼 수 있습니다.
AUC는 다중 분류에도 사용할 수 있나요?
표준 AUC는 이진 분류용으로 정의됩니다. 다중 분류 문제에서는 각 클래스에 대해 one-vs-rest AUC를 계산하거나, macro-average 또는 weighted-average AUC를 보고할 수 있습니다. 이 계산기는 이진 분류(레이블 0과 1)만 지원합니다.
민감도와 특이도의 차이는 무엇인가요?
민감도(재현율 또는 TPR)는 분류기가 실제 양성을 얼마나 잘 감지하는지 측정합니다: TP / (TP + FN). 특이도는 오경보를 얼마나 잘 피하는지 측정합니다: TN / (TN + FP). 양성 사례를 놓치는 비용이 클 때(예: 질병 선별) 높은 민감도가 중요하고, 위양성이 비싼 경우(예: 확진 검사)에는 높은 특이도가 중요합니다.
AUC가 항상 모델 평가에 가장 좋은 지표인가요?
AUC는 임계값 전반에서 모델을 비교하고 불균형 데이터셋을 다루는 데 매우 좋지만, 항상 최선은 아닙니다. 매우 불균형한 데이터에서는 Precision-Recall AUC(PR-AUC)가 더 유익한 경우가 많습니다. 특정 결정 임계값에서는 F1-score, 정확도, Matthews 상관계수가 더 관련 있을 수 있습니다.