본문 바로가기
DataScience/MachineLearning

[평가지표] AUC-ROC Curve

by mkk4726 2023. 7. 14.

AUC-ROC Curve는 이진분류에서 사용되는 평가지표입니다.

모델의 성능을 할 때 사용하며, 모델을 학습해나가는 목표 지점으로도 사용되는 평가지표로

굉장히 자주 사용되기에 꼭 알아야하는 평가지표라고 생각합니다.

 

이를 이해하기 위해서는 Confusion Matrix에 대해 이해하고 있어야 합니다.

2023.07.14 - [DataScience/MachineLearning] - [평가지표] Confustion Matrix

 

[평가지표] Confustion Matrix

0과 1, 두 가지로 분류하는 이진분류 문제에서 Confusion Matrix는 굉장히 중요합니다. 특히 0과 1의 비율이 맞지 않는 경우 accuracy만으로 모델을 평가하기엔 한계가 있습니다. 처음에는 헷갈릴 수 있

mkk4726.tistory.com


TPR, FNR, TNR, FPR

더보기
그림1. TPR , FNR

1. Sensitivity / True Positive Rate / Recall

실제로 1인 것 중에 1로 예측한 비율을 뜻합니다.

$Sensitivity = \frac {TP}{TP + FN}$

 

2. False Negative Rate

1 - Senstivity로 실제 1인 것 중에 0으로 잘못 예측한 비율을 뜻합니다.

$FNR = \frac {FN}{TP + FN}$

 

그림2. TNR, FPR

3. Specificity / True Negative Rate

실제 0인 것 중에 0으로 예측한 비율을 뜻합니다.

$Specificity = \frac {TN}{TN + FP}$

 

4. False Positive Rate

실제 0인 것 중에 1로 잘못 예측한 비율을 뜻합니다.

$FPR= \frac {FP}{TN + FP} = 1-Specificity$

 

이 4가지 값은 threshold가 바뀜에 따라 값이 바뀝니다.

더보기
그림3. threshold 변화에 따른 값 변화

0과 1로 예측하는 것은 1로 예측할 확률을 구하고 이 값이 특정 값을 넘는지 여부로 0과 1로 구분합니다.

특정값을 threshold라 하고 이를 넘을 때 1로 분류합니다.

 

따라서 threshold의 변화에 따른 평균 값을 정의할 필요가 있고 이게 AUC-ROC Curve입니다.

 


AUC-ROC Curve

그림4. AUC-ROC Curve

ROC, Recevier Operating characteristic Curve ,는 FPR에 따른 TPR 변화를 나타낸 선입니다.

AUC, Area Under the Curve, 는 ROC아래의 넓이를 뜻합니다.

그림5. FPR, TPR

FPR은 실제 0인 것 중 1로 잘못 예측한 비율을 뜻하고 , TPR은 실제 1인 것 중 1로 예측한 비율을 뜻합니다.

그림6. Random Classifier

따라서 Random으로 예측했을 때 FPR : TPR = 1 : 1 이 되고 AUC는 0.5가 됩니다.

그림7. Best Classifier

AUC가 1이 되는 classifier은 Positive와 Negative class point를 완벽히 구분해내는 것을 뜻합니다.

즉 FP가 threshold와 관계없이 0임을 뜻합니다.

그림8. 0.5 < AUC < 1

AUC가 0.5와 1사이에 존재하는 classifier은 TP, TN > FN, FP임을 뜻합니다.

 


정리하자면 AUC-ROC는 threshold가 변함에 따라 변하는 FPR과 TPR에 대한 지표입니다.

 

threshold가 낮아지면 1로 예측하는 비율이 증가할 것이고, 이 때 FPR보다 TPR이 더 가파르게 증가해야 좋은 모델이라고 정의하고 이를 판단하기 위한 지표입니다.

 


출처

그림 1: https://subscription.packtpub.com/book/big-data-and-business-intelligence/9781838555078/6/ch06lvl1sec34/confusion-matrix

그림 3: https://www.analyticsvidhya.com/blog/2020/06/auc-roc-curve-machine-learning/

그림 4: https://www.mathworks.com/help/deeplearning/ug/compare-deep-learning-models-using-ROC-curves.html

 

 

Reference

https://www.analyticsvidhya.com/blog/2020/06/auc-roc-curve-machine-learning/

댓글